Enumeración TVAudioMode (strmif.h)
[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.
Especifica el modo de un control de audio de TV.
Syntax
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;
Constantes
AMTVAUDIO_MODE_MONO Valor: 0x1 Mono. |
AMTVAUDIO_MODE_STEREO Valor: 0x2 Estéreo. |
AMTVAUDIO_MODE_LANG_A Valor: 0x10 Idioma A: canal de audio principal. |
AMTVAUDIO_MODE_LANG_B Valor: 0x20 Languag B: programa de audio secundario (SAP). |
AMTVAUDIO_MODE_LANG_C Valor: 0x40 Lenguaje C: un tercer idioma, o el programa de audio principal más SAP (por ejemplo, inglés de un hablante y japonés del otro hablante). |
AMTVAUDIO_PRESET_STEREO Valor: 0x200 Valor preestablecido estéreo. |
AMTVAUDIO_PRESET_LANG_A Valor: 0x1000 Valor preestablecido Languag A. |
AMTVAUDIO_PRESET_LANG_B Valor: 0x2000 Valor preestablecido de idioma B. |
AMTVAUDIO_PRESET_LANG_C Valor: 0x4000 Valor preestablecido de Lenguaje C. |
Comentarios
Las marcas TVAudioMode se dividen en dos grupos.
- Bits 0 - 7: marcas de modo. Estas marcas incluyen mono/estéreo y lenguaje (A, B o C).
- Bits 8 y posteriores: marcas preestablecidas.
Los siguientes comentarios describen cómo los métodos IAMTVAudio interpretan estas marcas.
- Si establece una marca de modo, el tuner cambia a ese modo inmediatamente. Si el modo no está disponible inmediatamente, se produce un error en el método.
- Si establece una marca preestablecida, el controlador cambia a ese modo inmediatamente si es posible; de lo contrario, el controlador almacena la solicitud. Si el modo solicitado está disponible más adelante, el controlador cambia a ese modo. El controlador mantiene las marcas preestablecidas en los cambios del programa o en los cambios de canal. Solo se produce un error en un modo preestablecido si el tuner no puede admitir ese modo. Nunca falla debido al contenido de la señal de audio.
Puede combinar más de una marca preestablecida. El controlador los intenta en el orden siguiente:
- Lenguaje C
- Idioma B
- Idioma A
- Estéreo
Si se produce un error en el método por cualquier motivo, el estado del tuner (es decir, el modo actual más los valores preestablecidos almacenados) no cambia.
Excepto en el lenguaje C, el sintonizador siempre transmite el mismo idioma en ambos canales de audio.
Ejemplo: el llamador establece AMTVAUDIO_PRESET_STEREO | AMTVAUDIO_PRESET_LANG_B. Supongamos que el programa actual está disponible en el idioma A con estéreo o lenguaje B con mono. El controlador selecciona el idioma B (mono), porque esa marca tiene prioridad. Más adelante, el programa cambia a un comercial que solo está disponible en el idioma A. El controlador cambia al idioma A, porque el idioma B no está disponible. Cuando se reanuda el programa, el controlador vuelve al idioma B.
IAMTVAudio::GetAvailableTVAudioModes: este método devuelve los modos que están disponibles actualmente en la señal. Este método nunca devuelve marcas preestablecidas.
IAMTVAudio::GetHardwareSupportedTVAudioModes: este método devuelve todos los modos admitidos por el hardware, incluidos los modos preestablecidos.
IAMTVAudio::get_TVAudioMode: este método devuelve el modo actual. Este método nunca devuelve marcas preestablecidas.
Mask (constantes)
Las constantes siguientes se definen en Strmif.h:#define TVAUDIO_MODE_MASK 0x000000ff
#define TVAUDIO_PRESET_MASK 0x0000ff00
Puede usar TVAUDIO_MODE_MASK para seleccionar marcas de modo y TVAUDIO_PRESET_MASK para seleccionar marcas preestablecidas:
C++ |
---|
DWORD ModeFlags(DWORD AudioMode) { return AudioMode & TVAUDIO_MODE_MASK; } |
Requisitos
Requisito | Valor |
---|---|
Header | strmif.h (incluye Dshow.h) |