Calculando valores de parâmetro

[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.]

Potencialmente, um buffer de entrada pode ser muito grande. Idealmente, quando o DMO processa o buffer, os parâmetros seguirão exatamente suas curvas em todo o lote de dados. No entanto, um DMO tem alguma margem de manobra na forma como calcula esses valores.

  • A abordagem mais precisa é calcular o valor exato de cada unidade atômica de dados; por exemplo, cada exemplo de áudio. Essa abordagem é a mais cara computacionalmente.
  • Outra abordagem é dividir os dados em unidades menores de algum tamanho fixo, como 100 amostras. Essa abordagem cria um efeito de "etapa de escada". Para alguns parâmetros, isso pode ser aceitável. Em efeitos de áudio, ele pode criar artefatos audíveis.
  • Um comprometimento é usar a técnica anterior, mas em cada lote, executar uma interpolação linear do valor do parâmetro para cada amostra.

Esses problemas são especialmente importantes para o processamento de áudio. Um segundo de áudio pode conter 48.000 amostras de áudio por canal, o que é um monte de cálculos a serem executados, mas o ouvido é sensível a artefatos como alias.

Parâmetros de mídia