IMPEG2StreamIdMap::MapStreamId 方法 (strmif.h)

该方法 MapStreamId 将 MPEG-2 程序流中基本流的流 ID 映射到媒体内容类型和子流筛选信息。

语法

HRESULT MapStreamId(
  [in] ULONG ulStreamId,
  [in] DWORD MediaSampleContent,
  [in] ULONG ulSubstreamFilterValue,
  [in] int   iDataOffset
);

参数

[in] ulStreamId

PES 流的流 ID。

[in] MediaSampleContent

指定流的内容。 目前,唯一支持的值MPEG2_PROGRAM_ELEMENTARY_STREAM (定义为 axextend.idl) 中的0x00000001。

[in] ulSubstreamFilterValue

指定要传递到下游解码器的此基本流中的子流。 只有低阶字节可以包含有效的筛选器值。 如果 iDataOffset = 0,则忽略此参数。

[in] iDataOffset

子流开始的有效负载中的字节偏移量。

返回值

如果成功,则返回S_OK。 如果方法失败,则返回错误代码。 如果尝试MEDIA_PROGRAM_STREAM_MAP、MEDIA_PROGRAM_DIRECTORY_PES_PACKET或MEDIA_PROGRAM_PACK_HEADER的流 ID,此方法将返回E_NOTIMPL。

注解

此方法映射的流 ID 是 PES 标头中的流 ID。 子流筛选最常用于在单个音频流上提供多个通道。

要求

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

请参阅

错误和成功代码

IMPEG2StreamIdMap 接口