CBaseInputPin 类
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
类 CBaseInputPin
是用于实现输入引脚的抽象基类。 此类除了 CBasePin 提供的 IPin 接口支持外,还添加了对 IMemInputPin 接口的支持。
若要使用此类,请派生一个新类并至少重写以下方法:
- CBaseInputPin::BeginFlush
- CBaseInputPin::EndFlush
- CBaseInputPin::Receive
- CBasePin::CheckMediaType
- CBasePin::GetMediaType
根据引脚的功能,可能需要替代 或 CBasePin 中的其他CBaseInputPin
方法。
受保护的成员变量 | 说明 |
---|---|
m_pAllocator | 指向内存分配器的指针。 |
m_bReadOnly | 指示分配器是否生成只读媒体样本的标志。 |
m_bFlushing | 指示引脚当前是否正在刷新的标志。 |
m_SampleProps | 最新示例的属性。 |
公共方法 | 说明 |
CBaseInputPin | 构造函数方法。 |
~CBaseInputPin | 析构函数方法。 |
BreakConnect | 从连接中释放引脚。 |
IsReadOnly | 查询分配器是否使用只读媒体示例。 |
IsFlushing | 查询筛选器当前是否正在刷新。 |
CheckStreaming | 确定引脚是否可以接受样本。 虚拟。 |
PassNotify | 将质量控制消息传递给相应的对象。 |
非活动 | 通知引脚筛选器不再处于活动状态。 虚拟。 |
SampleProps | 检索最新示例的属性。 |
IPin 方法 | 说明 |
BeginFlush | 开始刷新操作。 |
EndFlush | 结束刷新操作。 |
IMemInputPin 方法 | 说明 |
GetAllocator | 检索此引脚建议的内存分配器。 |
NotifyAllocator | 指定连接的分配器。 |
GetAllocatorRequirements | 检索输入引脚请求的分配器属性。 |
接收 | 接收流中的下一个媒体示例。 |
ReceiveMultiple | 接收流中的多个样本。 |
ReceiveCanBlock | 确定是否阻止对 CBaseInputPin::Receive 方法的调用。 |
IQualityControl 方法 | 说明 |
通知 | 接收质量控制消息。 |
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|