首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

DirectShow Filter开发,该怎么解决

2012-04-12 
DirectShow Filter开发初学DirectShow,写了个TransInPlace Filter,想给每帧数据里添加一个矩形框,Tranform

DirectShow Filter开发
初学DirectShow,写了个TransInPlace Filter,想给每帧数据里添加一个矩形框,Tranform应该怎么写,请各位帮帮忙,谢谢了

C/C++ code
HRESULT CDrawRectFilter::Transform(IMediaSample *pSample){    long size = pSample->GetActualDataLength();    BYTE *pBuffer = new BYTE[size];    pSample->GetPointer(&pBuffer);    //这里对数据改写之后应该怎么操作,怎么往下送Sanple    return NO_ERROR;}


[解决办法]
pBuffer 指向的就是图像数据了
长度由 pSample->GetSize() 返回
格式可由GetMediaType取得
IMediaSample 就是你要操作的数据,所有要使用的信里面都有了,你只需要改变pBuffer 里的数据,其它SDK 已经处理了
D9SDK 里有这样的示例
DXSDK\Samples\C++\DirectShow\Filters\RGBFilters


[解决办法]
pBuffer 指向的就是图像数据了 
长度由 pSample->GetSize() 返回 
格式可由GetMediaType取得 
IMediaSample 就是你要操作的数据,所有要使用的信里面都有了,你只需要改变pBuffer 里的数据,其它SDK 已经处理了 
D9SDK 里有这样的示例 
DXSDK\Samples\C++\DirectShow\Filters\RGBFilters 

[解决办法]
AlphaRenderer - a rendering filter that will perform an
alpha blend onto a checkerboard background, which is based 
on the incoming video alpha. This uses the new media subtype 
MEDIASUBTYPE_ARGB32.
[解决办法]
探讨
AlphaRenderer - a rendering filter that will perform an
alpha blend onto a checkerboard background, which is based
on the incoming video alpha. This uses the new media subtype
MEDIASUBTYPE_ARGB32.

热点排行