当前位置: 移动技术网 > 移动技术>移动开发>Android > 怎么给 smart_rtmpd 进行推流?

怎么给 smart_rtmpd 进行推流?

2020年07月13日  | 移动技术网移动技术  | 我要评论

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

一分钟快速搭建 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 进行推流?

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

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

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

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

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网