Pin 属性集
[与此页面关联的功能(DirectShow)是一项旧功能。 它已被 MediaPlayer、IMFMediaEngine取代,并在媒体基金会 音频/视频捕获。 这些功能已针对 Windows 10 和 Windows 11 进行了优化。 Microsoft强烈建议新代码尽可能使用 MediaPlayer、IMFMediaEngine 和 Media Foundation 中的音频/视频捕获,而不是 DirectShow。 Microsoft建议重写使用旧 API 的现有代码,以尽可能使用新 API。]
pin 属性集返回筛选器上引脚的引脚类别。 该类别由筛选器在创建引脚时设置;类别指示此引脚传递或接收的数据类型。
标签 | 价值 |
---|---|
属性集 GUID | AMPROPSETID_Pin |
属性 ID | 描述 |
---|---|
AMPROPERTY_PIN_CATEGORY | 指定引脚的类别。 |
DirectShow 在 Uuids.h 头文件中定义以下引脚类别。
类别 GUID | 描述 |
---|---|
PIN_CATEGORY_ANALOGVIDEOIN | 捕获筛选器的输入引脚,该筛选器采用模拟并将其数字化。 |
PIN_CATEGORY_CAPTURE | 捕获引脚。 |
PIN_CATEGORY_CC | 固定提供来自第 21 行的隐藏式字幕数据。 |
PIN_CATEGORY_EDS | 固定提供扩展数据服务(第 21 行,偶数字段)。 |
PIN_CATEGORY_NABTS | 固定提供北美视频文本标准数据。 |
PIN_CATEGORY_PREVIEW | 预览引脚。 |
PIN_CATEGORY_STILL | 提供静止图像的固定。 筛选器的捕获引脚必须在连接静止图像引脚之前进行连接。 |
PIN_CATEGORY_TELETEXT | 固定提供电视图文(隐藏式字幕变体)。 |
PIN_CATEGORY_TIMECODE | 固定提供时间码数据。 |
PIN_CATEGORY_VBI | 固定提供垂直空白间隔数据。 |
PIN_CATEGORY_VIDEOPORT | 要连接到 覆盖混音器上的输入引脚零的视频输出引脚。 |
PIN_CATEGORY_VIDEOPORT_VBI | 要连接到 VBI Surface 分配器的引脚,VBI 图面分配器筛选器(需要在使用视频端口的情况下为隐藏式字幕覆盖等内容分配正确的视频内存)分配正确的视频内存。 PCI、IEEE 1394 和 USB 方案不使用此筛选器。 |
PINNAME_VIDEO_CC_CAPTURE | 硬件切片隐藏式字幕引脚 |
此属性为只读。
示例代码
以下代码演示如何检查引脚是否支持此属性集,如果是,如何获取引脚类别:
HRESULT GetPinCategory(IPin *pPin, GUID *pPinCategory)
{
IKsPropertySet *pKs = NULL;
HRESULT hr = pPin->QueryInterface(IID_PPV_ARGS(&pKs));
if (FAILED(hr))
{
return hr;
}
// Try to retrieve the pin category.
DWORD cbReturned = 0;
hr = pKs->Get(AMPROPSETID_Pin, AMPROPERTY_PIN_CATEGORY, NULL, 0,
pPinCategory, sizeof(GUID), &cbReturned);
// If this succeeded, pPinCategory now contains the category GUID.
SafeRelease(&pKs);
return hr;
}
注意
此示例使用 SafeRelease 函数释放接口指针。
相关主题