社区
界面
帖子详情
DirectShow: 编写输出YUV的Filter,如何写GetMediaType函数?
wmrwinhap
2004-09-09 04:42:36
任一种格式的YUV都可以,盼高人复!
不胜感谢!
...全文
280
3
打赏
收藏
DirectShow: 编写输出YUV的Filter,如何写GetMediaType函数?
任一种格式的YUV都可以,盼高人复! 不胜感谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wmrwinhap
2004-09-10
打赏
举报
回复
成功,非常感谢!
DentistryDoctor
2004-09-09
打赏
举报
回复
GetMediaType(int iPosition, CMediaType *pmt)
你可根据情况返正其它格式,但一次只能返正一种格式。
DentistryDoctor
2004-09-09
打赏
举报
回复
CheckPointer(pmt,E_POINTER);
if (iPosition < 0)
{
return E_INVALIDARG;
}
// Have we run off the end of types
if( iPosition > 0 )
{
return VFW_S_NO_MORE_ITEMS;
}
VIDEOINFOHEADER vih;
memset( &vih, 0, sizeof( vih ) );
vih.bmiHeader.biCompression = MAKEFORCC('Y','U','Y','V');
vih.bmiHeader.biBitCount = 16;
vih.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
vih.bmiHeader.biWidth = DEFAULT_WIDTH;//Your size.x
vih.bmiHeader.biHeight = DEFAULT_HEIGHT;//Your size.y
vih.bmiHeader.biPlanes = 1;
vih.bmiHeader.biSizeImage = GetBitmapSize(&vih.bmiHeader);
vih.bmiHeader.biClrImportant = 0;
pmt->SetType(&MEDIATYPE_Video);
pmt->SetFormatType(&FORMAT_VideoInfo);
pmt->SetFormat( (BYTE*) &vih, sizeof( vih ) );
pmt->SetSubtype(&MEDIASUBTYPE_YUY2);
pmt->SetSampleSize(vih.bmiHeader.biSizeImage);
Directshow
的
Filter
开发简要步骤
本文以Gray
Filter
为例,介绍
DirectShow
的Transform
Filter
开发步骤。先配置开发环境,包括设置DirectX SDK路径、编译基类源码、新建工程、定义.def文件等;再进行
Filter
开发,如生成GUID、继承Transform
Filter
、改
写
构造
函数
和重要
函数
、注册
Filter
信息,编译后生成.ax文件并注册。
任务三:做一个
directshow
的
filter
,把RGB视频流变成黑白的
本文介绍了一种使用
DirectShow
处理RGB视频流并实现灰度转换的方法,包括复制代码片段、理解并改进RGB转
YUV
的公式,以及通过GraphEdit工具将自定义滤波器整合进视频处理流程的详细步骤。文章还提供了注册滤波器、配置GraphEdit以预览视频效果的指南,并分享了代码上传至CSDN的链接。
如何用
Directshow
采集摄像头图像
本文介绍了如何使用
Directshow
的Sample Grabber过滤器来采集摄像头图像。通过创建
Filter
Graph,设置Sample Grabber的媒体类型,以及运行图来实现图像数据的获取。文章详细阐述了添加Sample Grabber和Null Renderer到图中的步骤,并提到了调整采集参数的后续工作。
FFmpeg入门详解之114:
DirectShow
读取摄像头数据
本文详细介绍了
DirectShow
的概念及其组件分析,包括Source
filter
、Demux
filter
、Decoder
filter
、Color Space converter
filter
和Render
filter
。通过GraphEdit工具展示了数据流在
DirectShow
框架中的流转过程。此外,文章还探讨了FFmpeg如何利用
DirectShow
读取摄像头数据,提供了使用FFmpeg命令行工具进行视频捕获和编码的示例。
使用
Directshow
+ LAV
Filter
做一个万能格式的多媒体播放器
本文介绍在Windows平台基于
DirectShow
框架开发播放器,搭配LAV
Filter
实现万能格式播放。
DirectShow
提供
Filter
机制,可模块化处理多媒体任务。以往支持多格式的开发复杂且易出问题,LAV
Filter
s套件包含分离器、解码器,开源稳定。文章还介绍了使用方法及代码下载链接。
界面
15,976
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章