[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 Info 检索有关给定流的信息。
语法
HRESULT Info(
  [in]  long          lIndex,
  [out] AM_MEDIA_TYPE **ppmt,
  [out] DWORD         *pdwFlags,
  [out] LCID          *plcid,
  [out] DWORD         *pdwGroup,
  [out] LPWSTR        *ppszName,
  [out] IUnknown      **ppObject,
  [out] IUnknown      **ppUnk
);
参数
[in] lIndex
流的从零开始的索引。
[out] ppmt
接收指向流媒体类型的指针的变量的地址。 此参数是可选的,可以为 NULL。 如果值为非 NULL,则该方法返回指向 AM_MEDIA_TYPE 结构的指针。 调用方必须删除 结构,包括格式块。 (可以使用 DirectShow 基类 library.)
[out] pdwFlags
指向接收以下值之一的变量的指针:
| 值 | 说明 | 
|---|---|
| 零个 | 此流已禁用。 | 
| AMSTREAMSELECTINFO_ENABLED | 该流已启用,并且可能也启用了此组中的其他流。 | 
| AMSTREAMSELECTINFO_EXCLUSIVE | 此流是组中唯一启用的流。 | 
此参数是可选的,可以为 NULL。
[out] plcid
指向接收 LCID) 值的区域设置上下文 (变量的指针。 如果流与特定区域设置相关联,则 LCID 将在此变量中返回。 否则,变量接收值零。 此参数是可选的,可以为 NULL。
[out] pdwGroup
指向接收与流关联的逻辑组的变量的指针。 此参数是可选的,可以为 NULL。
[out] ppszName
接收指向流名称的指针的变量的地址。 调用方必须通过调用 CoTaskMemFree 函数来释放返回的字符串。 此参数是可选的,可以为 NULL。
[out] ppObject
接收 IUnknown 接口指针的变量的地址。 方法可能会返回指向与流关联的固定或筛选器的指针,也可能 返回 NULL 值。 如果方法返回非 NULL 值,则调用方必须释放 IUnknown 指针。
调用 IAMStreamSelect::Enable 方法可能会使此方法返回的对象失效。
此参数是可选的,可以为 NULL。
MPEG-1 Stream拆分器、MPEG-2 拆分器和SAMI (CC) 分析器筛选器返回指向与所选流关联的引脚的指针。
[out] ppUnk
接收 IUnknown 接口指针的变量的地址。 方法可能会返回指向特定于流的接口的指针,也可能返回值 NULL。 如果方法返回非 NULL 值,则调用方必须释放 IUnknown 指针。 此参数是可选的,可以为 NULL。
MPEG-1 Stream拆分器、MPEG-2 拆分器和 SAMI (CC) 分析器筛选器均返回值 NULL。 第三方筛选器可能会返回指向自定义筛选器接口的指针。
返回值
返回 HRESULT 值。 可能的值包括以下值。
| 返回代码 | 说明 | 
|---|---|
  | 
失败。 | 
  | 
内存不足。 | 
  | 
索引超出范围。 | 
  | 
成功。 | 
要求
| 要求 | 值 | 
|---|---|
| 最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] | 
| 最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] | 
| 目标平台 | Windows | 
| 标头 | strmif.h (包括 Dshow.h) | 
| Library | Strmiids.lib |