欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > RTMP 入门指南

RTMP 入门指南

2025/4/27 1:41:16 来源:https://blog.csdn.net/dota51888/article/details/147516292  浏览:    关键词:RTMP 入门指南

1. RTMP 基础概念​

  • ​核心角色​​:

    • ​推流端(Publisher)​​:将音视频数据推送到服务器的设备(如OBS、手机APP)。
    • ​服务器(RTMP Server)​​:接收推流并分发给观众的中间节点(如Nginx-RTMP、SRS)。
    • ​播放端(Player)​​:从服务器拉取流并播放的设备(如VLC、网页播放器)。
  • ​协议特点​​:

    • ​基于TCP​​:保证数据完整性,但延迟较高(3-5秒)。
    • ​默认端口​​:1935(推流和拉流均通过此端口)。
    • 2. 快速搭建 RTMP 服务器​
    • 以 ​​Nginx-RTMP​​ 为例(支持Linux/Windows):

      ​步骤1:安装 Nginx-RTMP​
      步骤2:配置 RTMP 服务​

      编辑配置文件 /etc/nginx/nginx.conf,添加以下内容:

    • rtmp {server {listen 1935;chunk_size 4096;application live {live on;record off;# 允许所有IP推流(生产环境需限制)allow publish all;}}
      }
      步骤3:重启 Nginx​
    • sudo systemctl restart nginx

3. 推流与拉流操作​

​推流端(以 OBS 为例)​
  1. ​下载 OBS​​:https://obsproject.com/

  2. ​配置推流地址​​:

    • 服务器:rtmp://你的服务器IP:1935/live
    • 流密钥:自定义唯一标识(如 test
    • 完整推流URL:rtmp://你的服务器IP:1935/live/test
  3. ​开始推流​​:点击“开始推流”。

​拉流播放(以 VLC 为例)​
  1. 打开 VLC → 媒体 → 打开网络串流 → 输入地址:
    rtmp://你的服务器IP:1935/live/test
  2. 点击“播放”。

​4. 进阶功能​

​转码与多协议分发​

在 nginx.conf 中添加转码配置:

application live {live on;exec ffmpeg -i rtmp://localhost:1935/live/$name-c:v libx264 -preset ultrafast -tune zerolatency -g 20 -r 30 -b:v 1000k -f flv rtmp://localhost:1935/hls/$name;
}application hls {live on;hls on;hls_path /tmp/hls;hls_fragment 2s;hls_playlist_length 6s;
}

通过HLS协议播放:http://你的服务器IP:8080/hls/test.m3u8

​录制直播流​
application live {live on;record all;record_path /var/rec;record_unique on;
}

5. 常见问题与解决​

​问题1:推流失败​

​问题3:浏览器无法播放RTMP​
  • ​原因​​:服务器防火墙未开放1935端口。
  • ​解决​​:
    sudo ufw allow 1935/tcp
    sudo systemctl restart nginx
    问题2:播放卡顿​
  • ​原因​​:网络带宽不足或服务器性能瓶颈。
  • ​解决​​:
    • 降低推流码率(OBS设置 → 输出 → 视频比特率)。
    • 使用CDN分发或升级服务器配置。
  • ​原因​​:现代浏览器已废弃Flash,需转用HLS/WebRTC。
  • ​解决​​:
    • 使用基于HLS的播放器(如Video.js、hls.js)。
    • 将RTMP流转码为HLS/DASH(参考进阶功能)。

      6. RTMP 的替代方案​

    • ​SRT(Secure Reliable Transport)​​:低延迟、抗丢包,适合不稳定网络。
    • ​WebRTC​​:超低延迟(<1秒),适合实时互动场景。
    • ​HLS/DASH​​:基于HTTP的流媒体,兼容所有浏览器和设备。

    • ​总结​

    • ​适用场景​​:传统直播推流、视频监控、简单直播系统。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词