VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 990|回复: 1

directshow中如何获得视频数据?

[复制链接]

1

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-3-21 23:00:02 | 显示全部楼层 |阅读模式
我想写一个transform filter, 他的一个输入pin接收视频数据,我在该filter中对这些视频逐帧进行图像处理(比如去噪声),然后通过输出pin发送

我打算在ds中的nullnull(即minimal null filter)例子上的基础上改进,请问:

如何获得一帧一帧的视频数据,并判断是什么格式,以便处理?

谢谢!!!
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-6-29 19:15:01 | 显示全部楼层
就nullnull这个例子而言:

你可以在CheckInputType中决定让你的filter接受什么类型的数据输入,比如:

HRESULT CheckInputType(const CMediaType* mtIn)
        {
                if (mtIn->subtype == MEDIASUBTYPE_RGB565)
                        return S_OK;
                return E_FAIL;
        }

只接受RGB565类型的数据输入。另外input pin上有个成员m_mt,用于保存连接用的media type,可以参考。

视频图像帧在filter graph运行时,会传递到Transform函数。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表