学习需要搭建一个由视频循环播放产生的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流