IAMExtTransport::GetCapability 方法 (strmif.h)

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

方法 GetCapability 检索传输的常规功能。

语法

HRESULT GetCapability(
  [in]  long   Capability,
  [out] long   *pValue,
  [out] double *pdblValue
);

参数

[in] Capability

指定检查的功能。 有关更多信息,请参见备注。

[out] pValue

指向接收 整数的变量的指针。 有关更多信息,请参见备注。

[out] pdblValue

指向接收 double 的变量的指针。 有关更多信息,请参见备注。

返回值

此方法成功后,将返回S_OK。 否则,它将返回 HRESULT 错误代码。

注解

Capability 参数是指定要检查的功能的标志。 方法在 pValue 参数或 pdblValue 参数中返回结果,具体取决于功能标志。

对于以下标志,该方法在 pValue 参数中返回值 OATRUE 或 OAFALSE。 值 OATRUE 指示功能存在,而值 OAFALSE 指示该功能不存在。

功能标志 说明
ED_TRANSCAP_CAN_ASSEMBLE 传输可以使用汇编记录模式 (记录新轨道,这些新轨道从以前记录的段) 无缝链接到控制轨道。
ED_TRANSCAP_CAN_BUMP_PLAY 传输可以按不同的速度同步。
ED_TRANSCAP_CAN_DELAY_AUDIO_IN 传输可以执行延迟的音频编辑。
ED_TRANSCAP_CAN_DELAY_AUDIO_OUT 传输可以执行延迟输出的音频编辑。
ED_TRANSCAP_CAN_DELAY_VIDEO_IN 传输可以执行延迟的视频编辑。
ED_TRANSCAP_CAN_DELAY_VIDEO_OUT 传输可以执行延迟的视频编辑。
ED_TRANSCAP_CAN_DETECT_LENGTH 传输可以检测介质的长度。
ED_TRANSCAP_CAN_EJECT 传输可以弹出媒体。
ED_TRANSCAP_CAN_FREEZE 传输可以冻结/暂停。
ED_TRANSCAP_CAN_INSERT 传输可以使用插入记录模式 (记录单个轨道,同时锁定到预先录制的控制轨道) 。
ED_TRANSCAP_CAN_PLAY_BACKWARDS 传输可以向后播放。
ED_TRANSCAP_CAN_SET_EE 传输可以在其输出上显示设备的输入。
ED_TRANSCAP_CAN_SET_PB 传输可以在其输出上显示媒体播放。
ED_TRANSCAP_FIELD_STEP 传输通过推进一个字段来响应帧前进命令。
ED_TRANSCAP_HAS_CLOCK 设备具有时钟。
ED_TRANSCAP_HAS_DT 设备具有动态跟踪。
ED_TRANSCAP_HAS_TIMER 设备具有计时器。
ED_TRANSCAP_HAS_TUNER 设备有一个调谐器。
ED_TRANSCAP_IS_MASTER 设备是同步的主时钟。
ED_TRANSCAP_MULTIPLE_EDITS 设备支持多个编辑事件。
ED_TRANSCAP_NEEDS_CUEING 必须先提示设备,然后才能执行编辑。
ED_TRANSCAP_NEEDS_TBC 需要校准设备。
 

对于以下标志, 方法在 pValue 参数中返回数值。

功能标志 返回的值
ED_TRANSCAP_LTC_TRACK 返回 LTC 时间代码轨迹的轨迹编号,如果没有专用的时间代码轨迹,则返回ED_ALL。
ED_TRANSCAP_NUM_AUDIO_TRACKS 返回音轨的数目。
 

对于以下标志, 方法在 pdblValue 参数中返回一个值。

功能标志 返回的值
ED_TRANSCAP_FWD_SHUTTLE_MAX 航天飞机模式下的最大前进速度,是播放速度的倍数。
ED_TRANSCAP_FWD_SHUTTLE_MIN 航天飞机模式下的最小前进速度,作为播放速度的倍数。
ED_TRANSCAP_FWD_VARIABLE_MAX 最大前进速度,作为游戏速度的倍数。
ED_TRANSCAP_FWD_VARIABLE_MIN 最小向前速度,作为游戏速度的倍数。
ED_TRANSCAP_REV_SHUTTLE_MAX 航天飞机模式下的最大反向速度,是播放速度的倍数。
ED_TRANSCAP_REV_SHUTTLE_MIN 航天飞机模式下的最低反向速度,是播放速度的倍数。
ED_TRANSCAP_REV_VARIABLE_MAX 最大反向速度,作为播放速度的倍数。
ED_TRANSCAP_REV_VARIABLE_MIN 最小反向速度,作为播放速度的倍数。
 

DV 实现

MSDV 不支持此方法。 它返回E_NOTIMPL。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 strmif.h (包括 Dshow.h)
Library Strmiids.lib

另请参阅

错误和成功代码

IAMExtTransport 接口