Share via


Reproduzindo fluxos de áudio do Karaoke

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in 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 Audio/Video Capture in 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.]

O Navegador de DVD pode reproduzir discos DVD-Video com fluxos de áudio de karaokê, mas a reprodução de karaokê também requer um decodificador que dá suporte à mistura de karaokê multicanal. Especificamente, o decodificador deve dar suporte ao conjunto de propriedades do DVD Karaoke (AM_PROPERTY_DVDKARAOKE).

Os discos de karaokê são um tipo de disco DVD-Video e têm a mesma estrutura de navegação. As músicas geralmente são formatadas como títulos, e os títulos podem ser agrupados em conjuntos de títulos com base no artista, estilo musical ou outros critérios. A diferença main entre o karaokê e outros tipos de DVD-Videos é o fluxo de áudio. Todos os discos de karaokê contêm áudio multicanal, geralmente Dolby AC-3. Os canais 0 e 1 sempre contêm a música instrumental em segundo plano, enquanto os canais 2 a 5 podem conter qualquer combinação de vocais guia, melodias guiadas e efeitos sonoros. Um aplicativo de karaokê pode controlar o volume e o alto-falante de destino para cada canal auxiliar.

Quando o Navegador de DVD detecta conteúdo de karaokê em um disco e entra no modo karaokê, ele informa o decodificador, que deve ativar o mudo dos três canais superiores (os canais auxiliares) até que qualquer um ou todos eles sejam explicitamente ativados por um aplicativo. As tarefas básicas de um aplicativo de karaokê são:

  1. Determine o número de canais auxiliares e seu conteúdo usando métodos IDvdInfo2 .
  2. Forneça uma interface do usuário que exibe o conteúdo do canal e permite que os usuários ativem ou desativem qualquer canal auxiliar a qualquer momento, usando IDvdControl2::SelectKaraokeAudioPresentationMode.

Essas etapas são ilustradas no aplicativo dvd sample em DVDCore.cpp no método GetAudioAttributes .

Aplicativos de DVD