IFileSinkFilter 接口

IFileSinkFilter 接口从IUnknown接口继承 在过滤器上实现向一个文件中写媒体流,

 在视频捕获过滤器图表里一个文件的渗透过滤器,举例,将一个视频压缩过滤器

的输出写到一个文件中,

 

GetCurFile  得到媒体将要被写入的当前文件

HRESULT GetCurFile

(

 [out] LPOLESTR * ppszFileName, 一个指针(文件名的地址)

 [out]AM_MEDIA_TYPE* pmt // 指向一个AM_MEDIA_TYPE结构用于接受媒体类型,这个参数可以是NULL,若是NULL则不会返回媒体类型

 

);

Typedef struct _MediaType

{

  GUID(全局唯一标示符) majortype; // 全局唯一标识指定的媒体例子

  GUID subtype;  //  媒体类型的子类型

  BOOL bFixedSizeSamples; 是定是否有指定大小,音频是true,而视频可以是true(不压缩)false(压缩)

  BOOL bTemporalCompression; 如果是true ,该例子就用帧压缩,使用false则可以表明并不是全部的帧都是关键帧

  ULONG lSampleSize; 实例的大小(用字节表示),对于压缩数据,可以是0

  GUID formattype;  GUID指明这个接口使用的是哪种 格式化块

 IUnknown *pUnk; 不使用,设置为NULL,

  ULONG cbFormat; 每个有格式的块,用大小表示

  BYTE *pbFormat;

}AM_MEDIA_TYPE;

SetFileName设置这个文件名字,对于将要被写入的媒体文件

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值