如何使用RTSP推流组件EasyPusher将MP4文件推到EasyDarwin开源平台?
程序员文章站
2022-07-06 22:02:02
...
EasyPusher是青犀视频团队维护的一款免费RTSP推流器,EasyDarwin是一款开源的流媒体服务,最近遇到很多网友咨询,如何将MP4文件推送至EasyDarwin的问题,下面我们来一步一步实现其过程。
EasyPusher提供了一个推送FILE的工程DEMO,工程名为:EasyPusher_FILE(点击可跳转)。
1、首先读取视频文件,DEMO中定义的为程序目录下,如下:
std::string sTestFilm = “./test.mp4”;
然后从MP4文件获取音视频编码信息,填入pusher媒体信息结构中
然后判断音频轨和视频轨是否存在做相应处理,设置回调和调用推送函数:
EasyPusher_SetEventCallback(g_fPusherHandle, __EasyPusher_Callback, 0, NULL);//回调函数
EasyPusher_StartStream(g_fPusherHandle, ConfigIP, atoi(ConfigPort), ConfigName, EASY_RTP_OVER_TCP, "admin", "admin", &mediainfo, 1024, 0);//推送,默认采用TCP方式连接
推送成功后,我们在EasyDarwin可以看到我们推送的视频流显示如下:
可以用VLC拉流看下播放效果,如下图:
如果有用户想了解我们的开源项目,可以进入EasyDarwin了解,并且经过多年的经验积累,我们已经研发出了基于EasyDarwin衍生的EasyNVR、EasyDSS等视频平台,大家均可了解。如有疑问,欢迎咨询。