博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RTMP开发记录 测试服务器搭建篇
阅读量:6815 次
发布时间:2019-06-26

本文共 2041 字,大约阅读时间需要 6 分钟。

nginx-rtmp-module 安装

最近在做直播功能,为了方便调试,在本地搭建一个rtmp server吧~

我的配置环境是Ubuntu12.04 64

安装编译环境所需库

sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev

下载源码

wget http://nginx.org/download/nginx-1.4.2.tar.gzwget https://github.com/arut/nginx-rtmp-module/archive/master.zip

解压

tar -zxvf nginx-1.4.2.tar.gzunzip master.zipcd nginx-1.4.2

编译安装

./configure --add-module=../nginx-rtmp-module-master$ make$ sudo make install

那么现在可以试着启动Nginx

sudo /usr/local/nginx/sbin/nginx

然后在浏览器输入http://localhost 应该就能够看到nginx的欢迎首页了,这意味着nginx在我们的机器上运行正常,可以进行下一步配置了:]

Nginx rtmp 配置

打开nginx.conf文件,开始配置rtmp吧:

http {    ……}在http节点后面加上rtmp配置:rtmp {    server {        listen 1935;        application live1 {            live on;            record off;        }    }}

你可以在这里找到完整的

保存退出后,告诉nginx重新读取配置:

sudo /usr/local/nginx/sbin/nginx -s reload

这里多提一句,如果想要重启nginx:

sudo /usr/local/nginx/sbin/nginx -s stopsudo /usr/local/nginx/sbin/nginx

这时我们可以测试推送流了,这里由于我们还没有写推送代码,就先借助软件完成吧。

测试推送流

如果你有Windows环境,且是Vista以上系统,有独立显卡,使用

如果你有Mac环境,使用

推送流简单来说就是上传,也被称为推送、发布。想要推送流,总要有一个目标地址吧。看看之前我们建立的RTMP服务器配置,里面规定了使用1935作为监听端口,配置了一个应用live1,通过这些信息,我们就能拼出可以使用的上传地址了,例如这样:

rtmp://localhost:1935/live1

live1是应用名,对应我们在nginx中配置的应用。room1是一个应用的实例(或者叫结点,我是这么理解的),这个不需要在服务器做特别的配置,我们只需要在配置好的应用中选择一个实例名字(例如room1)就能使用了。

使用之前提到的软件,简单配置下上传地址就能够发布了。

测试接收流

发送上去了,那么我们如何接收呢?

使用JWPlayer在网页播放

这里又要使用外部工具了:,一个flash的播放器,利用它可以在网页播放rtmp流。

jwplayer目前能够提供试用,但是使用需要先注册以获取key。这里有一个我已经注册好并下载到本地的,你可以直接使用它们。

找到/usr/local/nginx/html/目录,在下面新建文件player.html

 
charset="utf-8"> JW Player Example
id="'playerWRYqPNErNtRf'>test

然后将jwplayer文件夹放在/usr/local/nginx/html/目录下,最后应该是这样:

/usr/local/nginx/html/player.html    /usr/local/nginx/html/jwplayer/jwplayer.js    /usr/local/nginx/html/jwplayer/jwplayer.flash.swf    ...

然后重启nginx,在浏览器输入http://localhost/player.html,点击播放按钮,这时如果你正在使用软件进行推送,就应该可以看到视频了:]

使用VLC软件播放

这是更简单的一种方式,找一个支持rtmp的桌面软件,恩……之前为什么我要折腾jwplayer呢……

后打开VLC,在菜单选择file->open network->在弹出的新窗口中选择Network标签页,填入URL:rtmp://localhost:1935/live1->点击open,等待缓冲完成后,就自动开始播放了=。=

转载于:https://www.cnblogs.com/valu/p/6287562.html

你可能感兴趣的文章
SQL - case when then else end 的用法
查看>>
web优化是http缓存(上)
查看>>
19-01-14
查看>>
媒体融合三部曲(未完待续...)
查看>>
OkHttp3-拦截器(Interceptor)
查看>>
Bootstrap在实际生产开发中的使用心得
查看>>
Google推出实时内容洞察工具 为用户提供表现最好的内容
查看>>
虚拟机故障与故障处理工具之指令篇
查看>>
iOS 基础知识学习目录索引
查看>>
My_Base_notes
查看>>
Node assert断言学习及mocha框架与travisCI初探
查看>>
大话转岗 PHP 开发小结
查看>>
React的状态管理
查看>>
寻找一种易于理解的一致性算法(扩展版)下
查看>>
MySQL - 高可用性:少宕机即高可用?
查看>>
2018电影票房分析-谁才是票房之王
查看>>
程序员可以干到多少岁?
查看>>
Storm系列(六)storm和kafka集成
查看>>
东南亚的招聘骗局,程序员请注意!
查看>>
Android 获得View宽高的几种方式
查看>>