Enumeração TVAudioMode (strmif.h)
[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
Especifica o modo de um controle de áudio 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 áudio principal. |
AMTVAUDIO_MODE_LANG_B Valor: 0x20 Languag B: SAP (programa de áudio secundário). |
AMTVAUDIO_MODE_LANG_C Valor: 0x40 Idioma C: um terceiro idioma ou o programa de áudio main mais o SAP (por exemplo, inglês de um alto-falante e japonês do outro locutor). |
AMTVAUDIO_PRESET_STEREO Valor: 0x200 Predefinição estéreo. |
AMTVAUDIO_PRESET_LANG_A Valor: 0x1000 Languag Uma predefinição. |
AMTVAUDIO_PRESET_LANG_B Valor: 0x2000 Predefinição do Idioma B. |
AMTVAUDIO_PRESET_LANG_C Valor: 0x4000 Predefinição de Linguagem C. |
Comentários
Os sinalizadores TVAudioMode se enquadram em dois grupos.
- Bits 0 a 7: sinalizadores de modo. Esses sinalizadores incluem mono/estéreo e linguagem (A, B ou C).
- Bits 8 e superiores: sinalizadores predefinidos.
As observações a seguir descrevem como os métodos IAMTVAudio interpretam esses sinalizadores.
- Se você definir um sinalizador de modo, o sintonizador alterna para esse modo imediatamente. Se o modo não estiver disponível imediatamente, o método falhará.
- Se você definir um sinalizador predefinido, o driver alterna para esse modo imediatamente, se possível; caso contrário, o driver armazena a solicitação. Se o modo solicitado ficar disponível posteriormente, o driver alterna para esse modo. O driver mantém os sinalizadores predefinidos entre alterações de programa ou alterações de canal. Um modo predefinido falhará somente se o sintonizador não puder dar suporte a esse modo. Ele nunca falha devido ao conteúdo do sinal de áudio.
Você pode combinar mais de um sinalizador predefinido. O driver as tenta na seguinte ordem:
- Linguagem C
- Idioma B
- Idioma A
- Estéreo
Se o método falhar por qualquer motivo, o estado do sintonizador , ou seja, o modo atual mais as predefinições armazenadas, não será alterado.
Com exceção da linguagem C, o sintonizador sempre transmite o mesmo idioma em ambos os canais de áudio.
Exemplo: o chamador define AMTVAUDIO_PRESET_STEREO | AMTVAUDIO_PRESET_LANG_B. Suponha que o programa atual esteja disponível no idioma A com estéreo ou idioma B com mono. O driver seleciona a linguagem B (mono), porque esse sinalizador tem precedência. Posteriormente, o programa alterna para um comercial que só está disponível no idioma A. O driver alterna para o idioma A, pois o idioma B não está disponível. Quando o programa é retomado, o driver volta para o idioma B.
IAMTVAudio::GetAvailableTVAudioModes: esse método retorna os modos que estão disponíveis no momento no sinal. Esse método nunca retorna sinalizadores predefinido.
IAMTVAudio::GetHardwareSupportedTVAudioModes: esse método retorna todos os modos compatíveis com o hardware, incluindo modos predefinidos.
IAMTVAudio::get_TVAudioMode: esse método retorna o modo atual. Esse método nunca retorna sinalizadores predefinido.
Constantes de máscara
As seguintes constantes são definidas em Strmif.h:#define TVAUDIO_MODE_MASK 0x000000ff
#define TVAUDIO_PRESET_MASK 0x0000ff00
Você pode usar TVAUDIO_MODE_MASK para selecionar sinalizadores de modo e TVAUDIO_PRESET_MASK para selecionar sinalizadores predefinido:
C++ |
---|
Modo DWORDFlags(DWORD AudioMode) { retornar AudioMode & TVAUDIO_MODE_MASK; } |
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | strmif.h (inclua Dshow.h) |