加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 我可以从DirectShow获取原始视频帧而无需播放

发布时间:2020-12-14 04:31:13 所属栏目:Windows 来源:网络整理
导读:我正在使用媒体基础的媒体播放器.我想支持VOB文件播放.但是,媒体基金会目前不支持VOB容器.因此我希望使用DirectShow. 我的想法是不使用DirectsShow图形来获取备用路径,而是抓住视频帧并将其传递到媒体基础中的相同管道.在媒体基础上,我有一个’IMFSourceRead
我正在使用媒体基础的媒体播放器.我想支持VOB文件播放.但是,媒体基金会目前不支持VOB容器.因此我希望使用DirectShow.

我的想法是不使用DirectsShow图形来获取备用路径,而是抓住视频帧并将其传递到媒体基础中的相同管道.在媒体基础上,我有一个’IMFSourceReader’,它只是从视频文件中读取帧.是否有直接显示等效,它只是给我框架而不需要创建图形,开始播放周期,然后尝试从渲染引脚中提取帧? (更清楚的是,DirectsShow是否支持一种架构,它可以在不实际播放视频的情况下为我提供原始帧?)

我已经阅读了有关ISampleGrabber的内容,但它被弃用了,我认为它不适合我的架构.我以前没有在DirectShow上工作过.

谢谢,
磁光阱

解决方法

您必须构建一个图形并接受来自相应解析器/解复用器过滤器的帧,该过滤器将读取容器并在其输出上传递单个帧.

播放不一定是实时的,也不需要在某处伪造那些视频帧.获得Sample Grabber过滤器或客户过滤器所需的数据后,可以使用Null Renderer终止管道.也就是说,您可以以一种或多或少的方式安排获取所需的帧.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读