利用nginx和rtmp在Ubuntu系统下搭建流服务器并测试推流拉流_ubuntu 安装nginx服务 推流直播(1)

avatar
作者
猴君
阅读量:2

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

git clone https://github.com/arut/nginx-rtmp-module.git

 ## 二、安装nginx    

wget http://nginx.org/download/nginx-1.21.5.tar.gz
tar -zvxf nginx-1.21.5.tar.gz
cd nginx-1.21.5
./configure --prefix=/usr/local/src/nginx --add-module=…/nginx-rtmp-module --with-http_ssl_module
make -j8
make install

 其中./configure的时候有可能会失败,报“..../configure: error: SSL modules require the OpenSSL library...”之类的错误,那么ubuntu这里的需要安装一个组件:    

sudo apt-get install libssl-dev

 还没有配环境变量,先启动测试一下nginx:    

cd /usr/local/src/nginx/sbin
./nginx
ps -ef|grep nginx

 ![](https://img-blog.csdnimg.cn/7a93637fbbcd452998ce697f9769976e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAUmF5Q2hpdV9MYWJsb3k=,size_16,color_FFFFFF,t_70,g_se,x_16)   访问一下,http://你的nginx服务器ip:80   ![](https://img-blog.csdnimg.cn/439ddcad18814fb98a337ac2d62a2680.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAUmF5Q2hpdV9MYWJsb3k=,size_20,color_FFFFFF,t_70,g_se,x_16)   ##  三、nginx配置环境变量   参考:[离线安装openresty\_RayChiu757374816的博客-CSDN博客\_openresty离线部署](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)   [ubuntu单独挂载的硬盘权限问题不能友好启动nginx\_RayChiu757374816的博客-CSDN博客](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)    

sudo vi ~/.bashrc
#然后写入下边这一行,注意对应自己的安装路径
export PATH=$PATH:/usr/local/src/nginx/sbin
source ~/.bashrc

 ## 四、在nginx.conf中配置rtmp:    

rtmp {
server {
listen 1935; #监听的端口
chunk_size 4000;
application hls { # 这里的hls一定要和/home/raychiu/data/ffmpegTest/hls的hls相同,否则报:rtmp://localhost:1935/home/raychiu/data/ffmpegTest/hls: Input/output error错
live on; #开启实时
hls on; #开启hls
hls_path /home/raychiu/data/ffmpegTest/hls; #rtmp推流请求路径,文件存放路径
hls_fragment 5s; #每个TS文件包含5秒的视频内容
}
}
}

 ![](https://img-blog.csdnimg.cn/e9c844727b024f5285f66e4cb319ca59.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAUmF5Q2hpdV9MYWJsb3k=,size_20,color_FFFFFF,t_70,g_se,x_16)   ## 五、安装ffmpeg   ffmpeg在树莓派端安装,用于从树莓派推流至流服务器。   ### 1.安装yasm:    

wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar zxvf yasm-1.3.0.tar.gz
cd yasm-1.3.0/
./configure
make && sudo make install

 ### 2.安装ffmpeg:   ffmpeg是超快音视频编码器(类似于爱剪辑),ffmpeg音视频处理流程:   ![](https://img-blog.csdnimg.cn/1c989c7ab6da47088228f2f57854439e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAUmF5Q2hpdV9MYWJsb3k=,size_20,color_FFFFFF,t_70,g_se,x_16)    安装过程:    

wget https://ffmpeg.org/releases/ffmpeg-3.4.6.tar.gz
tar zxvf ffmpeg-3.4.6.tar.gz
cd ffmpeg-3.4.6/
./configure --prefix=/usr/local --enable-shared --enable-static
make && sudo make install

 ### 3.配置ld.so.conf增加动态链接库路径:   在文件 /etc/ld.so.conf 末尾加上 /usr/local/ffmpeg  根据你的安装路径来。   **ldconfig** #使配置生效的命令   ### 4.配置环境变量:   vi ~/.bashrc    

export PATH=“/usr/local/ffmpeg/bin:$PATH”

 source ~/.bashrc   ### 5.验证ffmpeg:    

ffmpeg -version
ffserver -version

 ## 六、启动nginx服务器后用ffmpeg推流   ### 启动nginx:    

nginx

 ### ffmpeg推流:   找一个视频文件,我这里找了一个123.mp4,然后    

ffmpeg -re -i 123.mp4 -vcodec copy -codec copy -f flv rtmp://192.168.1.210:1935/hls

 日志看出来正在推送视频流:    ![](https://img-blog.csdnimg.cn/a650ae8011df4d28b817a2a976beb748.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAUmF5Q2hpdV9MYWJsb3k=,size_20,color_FFFFFF,t_70,g_se,x_16)   hls目录下渐渐看到一个个ts文件生成了 :    ![](https://img-blog.csdnimg.cn/a67bd027ed4f4b10a285f7d42b465f92.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAUmF5Q2hpdV9MYWJsb3k=,size_13,color_FFFFFF,t_70,g_se,x_16)   ![img](https://img-blog.csdnimg.cn/img_convert/af025f2e1b88679a43498f47af15e0f5.png) ![img](https://img-blog.csdnimg.cn/img_convert/455957e1ca1f96d41a9b5c2e93863f1b.png)  **网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**  **[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**  **一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**  技术提升。**  **[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**  **一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**  

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!