Partilhar via


Conversões de taxa de amostragem XAudio2

As vozes XAudio2 podem realizar conversões automáticas de taxa de amostragem se sua taxa de amostragem de entrada for diferente da taxa de amostragem de entrada de suas vozes de saída.

As conversões de taxa de amostragem seguem estas regras:

  • A taxa de amostragem de entrada de voz é fixa.

    As vozes só podem lidar com a taxa de amostragem de entrada especificada quando foram criadas. Para masterização de vozes e vozes de submixagem, a taxa de amostragem de entrada é especificada com o argumento InputSampleRate para as IXAudio2::CreateMasteringVoice e funções de IXAudio2::CreateSubmixVoice. Para vozes de origem, a taxa de amostragem de entrada da voz é especificada pelo argumento pSourceFormat para a funçãoIXAudio2::CreateSourceVoice.

  • Todas as vozes de saída de uma voz devem ter a mesma taxa de amostragem de entrada.

    As vozes podem converter de sua taxa de amostragem de entrada para qualquer taxa de amostragem de saída, mas todas as vozes de saída da voz devem ter a mesma taxa de amostragem de entrada. Por exemplo, uma voz pode sair para qualquer número de vozes com uma taxa de amostragem de entrada de 22 kHz. No entanto, se essa mesma voz tivesse várias vozes de saída, cada uma com uma taxa de amostragem de entrada diferente, o gráfico de áudio não seria válido.

  • O processamento de conversão da taxa de amostragem só ocorre quando necessário.

    A conversão de dados de áudio para uma taxa de amostragem diferente incorre em mais sobrecarga de processamento, o que é preferível evitar. Se a taxa de amostragem de entrada de uma voz corresponder à taxa de amostragem de entrada de suas vozes de saída, essa conversão não será feita e o tempo de processamento será reduzido.

  • A taxa de amostragem de saída pode variar ao longo da vida de uma voz.

    A taxa de amostragem de saída de uma voz não é fixa. Desde que todas as suas vozes de saída tenham a mesma taxa de amostragem de entrada, o gráfico de áudio será válido. Se uma voz for alterada para saída para novas vozes com uma taxa de amostragem de entrada diferente, a voz será convertida para a taxa de amostragem de entrada das novas vozes.

Existem alguns cenários em que é necessário adicionar uma voz submix para realizar a conversão da taxa de amostragem entre vozes. Se uma voz precisa sair para vozes com várias taxas de amostragem de entrada, apenas uma das vozes pode ser uma saída direta da voz original. Como todas as vozes de saída de uma voz devem ter a mesma taxa de amostragem de entrada, as outras vozes recebem saída indiretamente. Deve haver uma voz submixada com a taxa de amostragem de entrada correta que vem entre a voz original e a voz de saída pretendida.

Por exemplo, considere uma voz de origem com uma taxa de amostragem de entrada de 22 kHz, que precisa de saída para uma voz de submistura com uma taxa de amostragem de entrada de 11 kHz e uma voz de masterização com uma taxa de amostragem de entrada de 44,1 kHz. Como as duas vozes de saída têm taxas de amostragem de entrada diferentes, você precisa inserir mais vozes de submistura entre a voz original e as vozes de saída pretendidas. Para manter a fidelidade da voz de origem e evitar conversões dispendiosas desnecessárias para taxas de amostragem mais altas, você precisa inserir duas vozes de submistura com taxas de entrada de amostra de 22 khz no gráfico. Uma voz de submistura sairia a 11 khz para a voz de submistura com o efeito de reverberação, e a outra voz de submistura sairia para a voz de masterização a 44,1 khz.

Exemplos de conversão de taxa de amostragem em gráficos de áudio

Todas as vozes têm a mesma taxa de entrada de amostragem; Nenhuma conversão de taxa de amostragem é feita no gráfico de áudio.nenhuma conversão de taxa de amostragem é feita no gráfico de áudio.

Todas as vozes têm a mesma taxa de entrada de amostragem, exceto a voz de masterização; A conversão da taxa de amostragem só é realizada em dados que vão para a voz de masterização. conversão da taxa de amostragem só é realizada em dados que vão para a voz de masterização.

As vozes têm diferentes taxas de entrada de amostras e requerem mais vozes submixadas para realizar conversões de taxa de amostragem; A conversão da taxa de amostragem é realizada em vários lugares no gráfico de áudio. conversão da taxa de amostragem é realizada em vários locais no gráfico de áudio.

Vozes

Guia de Programação XAudio2