欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

怎么给 smart_rtmpd 进行推流?

程序员文章站 2022-06-16 18:03:37
1. ffmpeg2. obs...

-----------------------------------------------------------------------------------------------------------------------------------------

一分钟快速搭建 rtmpd 服务器: https://blog.csdn.net/freeabc/article/details/102880984

软件下载地址: http://www.qiyicc.com/download/rtmpd.rar

github 地址:https://github.com/superconvert/smart_rtmpd

-----------------------------------------------------------------------------------------------------------------------------------------

怎么给 smart_rtmpd 进行推流?

怎么给 smart_rtmpd 进行推流?

1. ffmpeg

给 smart_rtmpd 推送 rtsp 流

下面是两个例子
ffmpeg -re -i my.mp4 -vcodec libx264 -acodec aac -f rtsp rtsp://192.168.1.105:8554/live/stream1

ffmpeg -re -i my.mp4 -vcodec libx264 -acodec aac -f rtsp rtsp://192.168.1.105:8554/live/stream2

ffmpeg -re -i my265.mkv -vcodec libx265 -acodec aac -f rtsp rtsp://192.168.1.105:9554/live/stream1

ffmpeg -re -i my265.mkv -vcodec libx265 -acodec aac -f rtsp rtsp://192.168.1.105:9554/live/stream2

 

给 smart_rtmpd 推送 rtmp 流

ffmpeg -re -i my.mp4 -vcodec libx264 -acodec aac -f flv rtmp://192.168.1.105:8554/live/stream1

ffmpeg -re -i my.mp4 -vcodec libx264 -acodec aac -f flv rtmp://192.168.1.105:8554/live/stream2

ffmpeg -re -i my265.mkv -vcodec libx265 -acodec aac -f flv rtmp://192.168.1.105:9554/live/stream1

ffmpeg -re -i my265.mkv -vcodec libx265 -acodec aac -f flv rtmp://192.168.1.105:9554/live/stream2

 

加密流的推送需要编译 ffmpeg 支持,具体参考我另外一篇博客

https://blog.csdn.net/freeabc/article/details/105526273

有关 rtmp 支持 h265 的推送,需要单独编译 ffmpeg,具体参考我另外一篇博客

https://blog.csdn.net/freeabc/article/details/105526249

ffmpeg 推流也可以指定关键帧 ( GOP 解决 hls, dash 产生不了,播放端刚开始黑屏时间过长的问题 ), 也可以指定速率(降低速率,解决服务器端 shrink 问题,当然 shrink 问题,很大一部分是接收端不及时或网络不好导致的,如果是 ffplay 可以采用 nobbufer 进行接收),这些参数大家可以自行搜索,不太难的。

 

2. obs

obs 推流设置如下图所示,上面服务器栏填写 vhost 和 app tag ,串流密钥就是流的名字

比如:rtmp://192.168.1.1/live/stream, 服务器要填写:rtmp://192.168.1.1/live,串流密钥:填写 stream

怎么给 smart_rtmpd 进行推流?

obs 的推流 GOP 设置,码率设置,GOP 很关键,设置过大,导致 hls, dash 等类型的流媒体会出现问题,还可能导致开始播放长时间黑屏,obs 的 GOP 设置就是下面的 "关键帧间隔(秒, 0=自动)",最好设置为 1 或 2 即可。如果服务器端出现 shrink 的字样,可能推的码率过大,可以通过降低下面的 "比特率" 缓解状况。

怎么给 smart_rtmpd 进行推流?

obs 降码率的当然还有下面的设置,设置分辨率大小,把大小缩小,FPS 由 30 降低到 20, 15 , 10 等。

怎么给 smart_rtmpd 进行推流?

本文地址:https://blog.csdn.net/freeabc/article/details/107223525