基于nginx-rtmp-module的推拉流测试
1、安装nginx服务器
(参考http://nginx.org/en/docs/)
sudo apt-get install nginx
或者从源码安装
wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz
tar -zxvf openssl-1.1.0e.tar.gz
cd openssl-1.1.0e/
sudo ./config
sudo make && sudo make install
sudo apt-get install libpcre3
sudo apt-get install libpcre3-dev
wget http://nginx.org/download/nginx-1.12.0.tar.gz
tar -zxvf nginx-1.12.0.tar.gz
cd nginx-1.12.0/
sudo ./configure --prefix=/usr/local/nginx --with-openssl=/usr/local/include/openssl
sudo make && sudo make install
在/usr/local/nginx目录下看到了
conf html logs sbin
表示安装成功
如果同时需要安装Apache,由于这两种类型的服务器都需要开机自启,且默认会占用80端口。所以要修改一下nginx服务器默认配置
sudo netstat -natp
查询到
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 55463/nginx.conf
sudo gedit /usr/local/nginx/conf/nginx.conf
改
http {
server {
listen 80;
server_name localhost;
为
http {
server {
listen 8888;
server_name localhost;
重启nginx
cd /usr/local/nginx
sudo ./sbin/nginx -s stop
sudo ./sbin/nginx -c ./conf/nginx.conf
验证
2、安装nginx-rtmp-module
(参照https://github.com/arut/nginx-rtmp-module) git clone https://github.com/arut/nginx-rtmp-module.gitcd nginx-1.12.0 sudo ./configure --add-module=../nginx-rtmp-module --with-http_ssl_module
sudo make && sudo make install
sudo gedit /usr/local/nginx/conf/nginx.conf 添加 rtmp {
server {
listen 1935;
application myapp {
live on;
}
application hls {
live on;
hls on;
hls_path /tmp/hls;
}
}
}
重启nginx
3、准备推流
安装ffmpeg sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next sudo apt-get update sudo apt-get install ffmpegffmpeg -re -i /home/thinking/Desktop/test.avi -vcodec libx264 -acodec aac -f flv -strict -2 rtmp://192.168.42.248:1935/myapp/test
最后的一行命令的含义是:video编码器用libx264(-vcodec libx264);audio编码器用aac(-acodec aac);打包格式是flv(-f flv)。 -re代表按照帧率发送,不加则默认按照服务器最高速率发送。 例如 ffmpeg -re -i /home/thinking/Desktop/test.mp3 -acodec mp3 -f mp3 rtmp://0.0.0.0:1935/myapp/test 这行命令就是将音频文件转成MP3格式的推流发出去 (但是不知道为啥,这行命令可以执行,但是数据输出有误,改成 ffmpeg -re -i /home/thinking/Desktop/test.mp3 -acodec mp3 -f flv rtmp://0.0.0.0:1935/myapp/test 就可以了)
效果如下
4、拉流并播放
用VLC打开串流 媒体-->打开网络串流-->输入rtmp://192.168.42.248:1935/myapp/test-->打开 效果如下
标签:
相关文章
-
无相关信息