如何通过FFMPEG编码推RTSP视频直播流到EasyDarwin开源平台时叠加时间水印?

继之前一篇科普文《如何使用RTSP推流组件EasyPusher将MP4文件推到EasyDarwin开源平台》发布后,有开发者提出疑问:假如需要显示视频直播时间,如何在推送的时候可以自定义在视频上叠加时间水印?

如何通过FFMPEG编码推RTSP视频直播流到EasyDarwin开源平台时叠加时间水印?

这个问题就涉及到了FFMPEG编码过程,具体内容可以通过《FFMPEG编码过程说明》一文了解,根据FFMPEG编码,我们来尝试实现上面的需求。

利用FFMPEG,结合命令:

ffmpeg -re -stream_loop -1 -i test.mp4 -vf drawtext=“fontfile=arial.ttc:x=w-tw-20:y=30:fontcolor=white:fontsize=11:text=‘2020-10-10 %{localtime:%H\:%M\:%S}’” -rtsp_transport tcp -vcodec h264 -f rtsp rtsp://172.81.216.155:554/test.sdp

此命令解释,循环把test.mp4读出来以RTSP协议方式推送到172.81.216.155:554,在视频右上角添加一个白色的OSD,内容为2020-10-10+系统时间

如何通过FFMPEG编码推RTSP视频直播流到EasyDarwin开源平台时叠加时间水印?

text:要添加的文字内容
fontsize:字体大小
fontcolor:字体颜色

下面我们从EasyDarwin拉取这个推上去的流下来看下播放状态下的效果:

如何通过FFMPEG编码推RTSP视频直播流到EasyDarwin开源平台时叠加时间水印?

下面看下VLC播放的效果:

如何通过FFMPEG编码推RTSP视频直播流到EasyDarwin开源平台时叠加时间水印?

时间已经展示完毕,此外,我们也可以根据命令参数选择叠加的内容和位置,*修改。

EasyDarwin开源平台提供的开源项目,拥有完整的源代码,帮助开发者更快更简单实现流媒体音视频产品功能,实现移动互联网流媒体直播点播。大家如果对EasyDarwin开源项目感兴趣,欢迎联系我们。

上一篇:变废为宝:使用废旧手机实现实时监控方案


下一篇:小雉视频系统之去中心管理的视频服务器