NGINX-RTMP直播服务器搭建-OBS录制推流-VLC视频流播放
搭建NGINXRTMP直播服务器,使用OBS录制推流,并通过VLC播放视频流的步骤如下:搭建NginxRTMP服务器:配置Nginx的点播、直播及回放功能,这些是搭建直播系统的基础。使用OBS进行视频录制和推流:添加场景:在OBS中创建一个新的场景,作为录制和推流的上下文。
首先,我们来搭建Nginx-RTMP服务器。Nginx的点播、直播、以及回放配置是搭建中不可或缺的部分,它们构成了直播系统的基础。接下来,使用OBS(Open Broadcaster Software)进行视频录制和推流。
使用OBS串流:新建场景,创建视频捕获或者窗口捕获;在串流中配置自定义流媒体服务器,URL为rtmp://10.1:1935/live,流密钥为livestream;点击开始串流,此时会在配置的hls_path中生成ts和m3u8文件。
在OBS中设置推流地址为rtmp://服务器IP/myapp。VLC收流设置:下载并安装VLC媒体播放器。在VLC中选择“媒体”-“打开网络串流”,输入RTMP地址进行播放。问题总结与解决 连接被拒绝错误:错误现象:RTMP_Connect0, failed to connect socket. 111 (Connection refused)。
使用iJKplayer播放器进行拉流播放。通过修改播放地址,验证内容同步播放效果。总结: 在进行iOS HLS测试时,本地服务器的搭建是基础,可以选择Nginx或SRS服务器。 推流操作可以通过FFmpeg命令或OBS软件实现,确保流媒体的正确传输。 拉流测试需要在不同设备和播放器上进行,以验证HLS流的兼容性和稳定性。
Nginx-RTMP模块:配置直播推流与拉流服务。学习资源书籍:《WebRTC权威指南》《流媒体技术原理与应用》。

...pusher/live-player示例,使用本地搭建RTMP服务
推流地址格式:rtmp://本地IP:1935/live/STREAM_NAME(STREAM_NAME可自定义)。
本地RTMP服务搭建 使用NodeMediaServer: 步骤:在命令行中进入NodeMediaServer文件夹,执行程序。默认将在1935端口提供RTMP服务,并在8000端口提供HTTP流服务。 依赖:程序使用NodeMediaServer,这是一个遵循MIT协议的第三方组件。
使用 Node-Media-Server 进行本地 RTMP 服务搭建 在命令行中进入文件夹 Node-Media-Server,执行程序默认将在 1935 端口提供 RTMP 服务,并在 8000 端口提供 HTTP 流服务。程序使用 Node-Media-Server,这是一个遵循 MIT 协议的第三方组件。
自定义组件使用:需传入组件实例 this 以操作内部 live-pusher。
Window下SRS流媒体服务器的搭建+RTMP视频推流
Window下SRS流媒体服务器的搭建与RTMP视频推流的步骤如下:前期准备 开启HyperV:由于SRS流媒体服务器在Windows环境下无法直接运行,需要依赖Linux内核环境,因此采用Docker作为容器,并通过Windows自带的HyperV虚拟机进行部署。
使用Web界面查看SRS状态信息,输入服务器IP和端口(默认1985)访问,可以实时监控服务器运行状态。测试SRS流媒体服务器功能,使用FFmpeg推流命令`ffmpeg -re -i time.flv -vcodec copy -acodec copy -f flv -y rtmp://11211666/live/livestream`。注意替换IP和端口号,根据实际情况调整。
搭建流媒体服务器SRS的亲测有效步骤如下:下载最新版本:从SRS官网下载最新版本,建议版本为0,以避免依赖已弃用的Flash。解压并编译源码:在Linux环境中,使用unzip命令解压下载的源码文件。切换到解压后的目录,即cd srs/trunk。执行./configure命令进行配置,然后执行make命令进行编译。
SrsRtmpConn:do_cycle()函数SrsRtmpConn:do_cycle()函数是rtmp连接协程的循环处理函数,负责rtmp协议的解析、数据分发、错误处理等关键步骤,确保rtmp流媒体服务的正常运行。通过以上详细解析,读者可以全面了解SRS流媒体服务器的基本流程和核心模块,为深入学习和实践SRS流媒体技术打下坚实的基础。
开直播服务器可以通过使用Nginx或SRS流媒体服务器进行搭建,以下是具体设置方法:使用Nginx搭建直播服务器安装:在Windows系统上下载并安装Nginx,安装完成后需增加几个文件夹,以满足后续配置需求。配置:基本参数设置:打开conf下的nginx.conf文件,设置Nginx进程数、工作模式与连接数上限等基本参数。
建立连接后,设置rtmp set_window_ack_size set_peer_bandwidth set_chunk_size 调用 SrsRtmpConn:stream_service_cycle()首先进行rtmp-identify_client 客户端的身份识别 然后再根据不同的客户端类型type进入不同的分支 SrsRtmpConnPlay 客户端播流。SrsRtmpConnFMLEPublish Rtmp推流到服务器。