通信人家园

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索

军衔等级:

  新兵

注册:2015-12-9
跳转到指定楼层
1#
发表于 2020-4-13 10:32:18 |只看该作者 |倒序浏览
手把手教你搭建一个直播服务器(Nginx+Rtsp)
原创IOT_SHUN 最后发布于2018-03-25 16:28:30 阅读数 24173  收藏
展开
本教程感谢慕课网

常用工具:

                ffmpeg音视频编解码

                ffplay音视频播放工具

搭建流媒体服务器

                准备流媒体服务器linux

                准备并安装Nginx服务

                配置RTMP并启动Nginx服务

1.linxu安装Nginx和rtmp

1.先下载安装  nginx 和 nginx-rtmp 编译依赖工具

sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev
2. 创建一个工作目录,并切换到工作目录

mkdir ~/working
cd ~/working
3. 下载 nginx 和 nginx-rtmp源码

wget http://nginx.org/download/nginx-1.7.5.tar.gz
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
4. 安装unzip工具,解压下载的安装包

sudo apt-get install unzip
5.解压 nginx 和 nginx-rtmp安装包

tar -zxvf nginx-1.7.5.tar.gz
unzip master.zip
6. 切换到 nginx-目录

cd nginx-1.7.5
7.添加 nginx-rtmp 模板编译到 nginx

./configure --with-http_ssl_module --add-module=../nginx-rtmp-module-master
8.编译安装

make
sudo make install
9. 安装nginx init 脚本

sudo wget https://raw.github.com/JasonGied ... ubuntu/master/nginx -O /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
sudo update-rc.d nginx defaults
10. 启动和停止nginx 服务,生成配置文件

sudo service nginx start
sudo service nginx stop
11. 安装 FFmpeg

sudo apt-add-repository ppa:jon-severinsson/ffmpeg
sudo apt-get update
sudo apt-get install ffmpeg

原文PPA不可用,源码安装参见

http://blog.csdn.net/redstarofsleep/article/details/45092145

12. 配置 nginx-rtmp 服务器

打开 /usr/local/nginx/conf/nginx.conf

在末尾添加如下 配置


rtmp {   

    server {   

        listen 1935;  #监听的端口  

        chunk_size 4000;   

        application hls {  #rtmp推流请求路径  
            live on;   
            hls on;   
            hls_path /usr/local/nginx/html/hls;   
            hls_fragment 5s;   
        }   
    }   
}

13. 保存上面配置文件,然后重新启动nginx服务

sudo service nginx restart
14. 如果你使用了防火墙,请允许端口 tcp 1935

    用netstat -an | grep 1935

出现以下信息代表则代表启动nginx/rtmp成功

        netstat -an| grep 1935
        tcp        0      0 0.0.0.0:1935            0.0.0.0:*               LISTEN

16: 使用 客户端,使用 rtmp协议进行视频实时采集

ffmpeg直播命令:

        推流:ffmpeg -re -i 1.mp4 -c copy -f flv rtmp://xxx.xxx.xxx.xxx:1935/hls/1.mp4

        拉流:ffmpeg -i  rtmp://xxx.xxx.xxx.xxx/1.mp4 -c copy dump.flv

        播放音视频:ffplay rtmp://xxx.xxx.xxx.xxx/hls



17.下载一个OBS(视频直播客户端)

(1)配置url



    (2)推流



    (3)服务器播放

                    ffplay rtmp://xxx.xxx.xxx.xxx/hls

18: 关于 nginx-rtmp 更多配置

https://github.com/arut/nginx-rtmp-module/wiki/Directives

flashplay播放器地址

        http://bbs.chinaffmpeg.com/1.sw
————————————————
版权声明:本文为CSDN博主「IOT_SHUN」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/IOT_SHUN/java/article/details/79684856

举报本楼

您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系我们 |网站地图  

GMT+8, 2024-11-5 11:37 , Processed in 0.159448 second(s), 15 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部