基于FFmpeg的RTSP directshow filter

常规来讲,directshow filter包含三个部分,分别为source filter、transform filter、renderfilter

因为项目需要,要开发一个基于FFmpeg的filter(soucer filter+transform filter合并)。即source filter -> render filter

此filter需要能解码和显示rtsp的h264视频流。大致方案是基于ffmpeg,利用ffmpeg接收rtsp视频流,获取每一个avframe并将其转换为RGB格式,配置好filter的媒体类型利用windows 自带的filter将其直接显示出来。

总的来说就是将Directshow的ball例子拿来改写下,并加入ffmpeg实现。目前只做了简单的功能,其他很多功能都没实现,,例如

STDMETHODIMP Run(REFERENCE_TIME tStart);STDMETHODIMP Stop(void);STDMETHODIMP Pause(void);

后续再继续完善。

另外在开发过程中发先ffmpeg的一些变量和指针不能设置为全局,否则在多路视频流的时候会发生冲突。

效果大致如下:

filter下载地址

在这个阳光明媚的三月,我从我单薄的青春里打马而过,

基于FFmpeg的RTSP directshow filter

相关文章:

你感兴趣的文章:

标签云: