tvAudioMode 枚举 (strmif.h)
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
指定电视音频控件的模式。
语法
typedef enum tagTVAudioMode {
AMTVAUDIO_MODE_MONO = 0x1,
AMTVAUDIO_MODE_STEREO = 0x2,
AMTVAUDIO_MODE_LANG_A = 0x10,
AMTVAUDIO_MODE_LANG_B = 0x20,
AMTVAUDIO_MODE_LANG_C = 0x40,
AMTVAUDIO_PRESET_STEREO = 0x200,
AMTVAUDIO_PRESET_LANG_A = 0x1000,
AMTVAUDIO_PRESET_LANG_B = 0x2000,
AMTVAUDIO_PRESET_LANG_C = 0x4000
} TVAudioMode;
常量
AMTVAUDIO_MODE_MONO 值: 0x1 单。 |
AMTVAUDIO_MODE_STEREO 值: 0x2 立体。 |
AMTVAUDIO_MODE_LANG_A 值: 0x10 语言 A:主音频通道。 |
AMTVAUDIO_MODE_LANG_B 值: 0x20 Languag B:SAP) (辅助音频程序。 |
AMTVAUDIO_MODE_LANG_C 值: 0x40 语言 C:第三语言或main音频程序加上 SAP (例如,一个使用者的英语和另一个说话人的日语) 。 |
AMTVAUDIO_PRESET_STEREO 值: 0x200 立体声预设。 |
AMTVAUDIO_PRESET_LANG_A 值: 0x1000 Languag 预设。 |
AMTVAUDIO_PRESET_LANG_B 值: 0x2000 语言 B 预设。 |
AMTVAUDIO_PRESET_LANG_C 值: 0x4000 语言 C 预设。 |
注解
TVAudioMode 标志分为两组。
- 位 0 - 7:模式标志。 这些标志包括单声道/立体声和语言 (A、B 或 C) 。
- 位 8 及更高:预设标志。
以下说明介绍了 IAMTVAudio 方法如何解释这些标志。
- 如果设置了模式标志,则调谐器会立即切换到该模式。 如果模式不立即可用,该方法将失败。
- 如果设置了预设标志,驱动程序会立即切换到该模式(如果可能);否则,驱动程序存储请求。 如果请求的模式稍后可用,驱动程序将切换到该模式。 驱动程序在程序更改或通道更改之间维护预设标志。 仅当调谐器不支持该模式时,预设模式才会失败。 它永远不会因音频信号的内容而失败。
可以组合多个预设标志。 驱动程序按以下顺序尝试这些操作:
- 语言 C
- 语言 B
- 语言 A
- 立体声
如果方法因任何原因而失败,则调谐器的状态(即当前模式加上存储的预设)不会更改。
除语言 C 外,调谐器始终通过两个音频通道流式传输相同的语言。
示例:调用方设置 AMTVAUDIO_PRESET_STEREO | AMTVAUDIO_PRESET_LANG_B。 假设当前程序在具有立体声的语言 A 或带单声道的语言 B 中可用。 驱动程序选择语言 B (mono) ,因为该标志优先。 稍后,程序将切换到仅在语言 A 中可用的广告。驱动程序将切换到语言 A,因为语言 B 不可用。 当程序恢复时,驱动程序将切换回语言 B。
IAMTVAudio::GetAvailableTVAudioModes:此方法返回信号中当前可用的模式。 此方法从不返回预设标志。
IAMTVAudio::GetHardwareSupportedTVAudioModes:此方法返回硬件支持的所有模式,包括预设模式。
IAMTVAudio::get_TVAudioMode:此方法返回当前模式。 此方法从不返回预设标志。
掩码常量
Strmif.h 中定义了以下常量:#define TVAUDIO_MODE_MASK 0x000000ff
#define TVAUDIO_PRESET_MASK 0x0000ff00
可以使用 TVAUDIO_MODE_MASK 选择模式标志, 使用TVAUDIO_PRESET_MASK 选择预设标志:
C++ |
---|
DWORD ModeFlags (DWORD AudioMode) { return AudioMode & TVAUDIO_MODE_MASK; } |
要求
要求 | 值 |
---|---|
Header | strmif.h (包括 Dshow.h) |