0%

ffmpeg+rtsp-simple-server推流

学习需要搭建一个由视频循环播放产生的rtsp源,使用vlc循环播放遇到了每次循环播放时流都会短暂中断的问题,使用ffmepg方案解决了,做个记录备忘。

rtsp-simple-server

在darwin-arm64上也可以使用darwin-amd64的包,下载github release之后运行./rtsp-simple-server就可以在本地开启rtsp服务器(vlc可以自己搭建rtsp服务器并推流,但ffmpeg的推流需要独立的服务器实现)

rtsp服务默认在8554端口开启,通过修改rtsp-simple-server.yml可以配置在其他端口。

ffmpeg

1
ffmpeg -re -stream_loop -1 -i Liverpool46098.mp4 -vcodec libx264 -acodec aac -f rtsp rtsp://127.0.0.1:8554/test
  • -re 按照帧率读取input
  • -stream_loop -1 无限循环
  • -i [filename].mp4 输入文件
  • -vcodec [vcodec] -acodec [acodec] 视音频编码,源编码H264+AAC可以使用-vcodec copy -acodec copy
  • -f rtsp [address] 在制定地址输出rtsp流