Recursos de áudio
[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.]
Para recursos de áudio, IAMStreamConfig::GetStreamCaps retorna uma matriz de pares de estruturas AM_MEDIA_TYPE e AUDIO_STREAM_CONFIG_CAPS . Assim como acontece com o vídeo, você pode usar isso para expor todos os tipos de recursos de áudio no pino, como a taxa de dados e se ele dá suporte a mono ou estéreo.
Para obter exemplos relacionados a vídeos relacionados ao GetStreamCaps, consulte Recursos de vídeo.
Suponha que você dê suporte ao formato de onda pcm (modulação de código de pulso) (conforme representado pela estrutura WAVEFORMATEX ) a taxas de amostragem de 11.025, 22.050 e 44.100 amostras por segundo, todas em mono de 8 ou 16 bits ou estéreo. Nesse caso, você ofereceria dois pares de estruturas. O primeiro par teria uma estrutura de capacidade AUDIO_STREAM_CONFIG_CAPS dizendo que você dá suporte a um mínimo de 11.025 a um máximo de 22.050 amostras por segundo com uma granularidade de 11.025 amostras por segundo (granularidade é a diferença entre os valores com suporte); um mínimo de 8 bits para um máximo de bits de 16 bits por amostra com uma granularidade de 8 bits por amostra; e mínimo de um canal e máximo de dois canais. O tipo de mídia do primeiro par seria o formato PCM padrão nesse intervalo, talvez 22 quilohertz (kHz), estéreo de 16 bits. Seu segundo par seria uma funcionalidade que mostra 44.100 amostras mínimas e máximas por segundo; Bits de 8 bits (mínimo) e 16 bits (máximo) por amostra, com uma granularidade de 8 bits por amostra; e mínimo de um canal e máximo de dois canais. O tipo de mídia seria o formato padrão de 44 kHz, talvez 44 kHz estéreo de 16 bits.
Se você der suporte a formatos de onda não PCM, o tipo de mídia retornado por esse método poderá mostrar quais formatos não PCM você dá suporte (com uma taxa de amostragem padrão, taxa de bits e canais) e a estrutura de recursos que acompanha esse tipo de mídia pode descrever quais outras taxas de exemplo, taxas de bits e canais são compatíveis.
Tópicos relacionados