Sobre controle de taxa

No Media Foundation, a taxa de reprodução é expressa como a taxa de reprodução atual para a taxa de reprodução normal. Por exemplo, uma taxa de 2,0 é duas vezes a velocidade normal e 0,5 é a velocidade normal. Valores negativos indicam reprodução inversa. Uma taxa de reprodução de -2.0 é reproduzida pelo fluxo com o dobro da velocidade normal. Uma taxa de zero faz com que um quadro seja renderizado; depois disso, o relógio de apresentação não avança. Para obter outro quadro à taxa de zero, o aplicativo deve buscar uma nova posição.

Os aplicativos usam as interfaces a seguir para controlar a taxa de reprodução.

  • IMFRateSupport. Usado para descobrir as taxas de reprodução mais rápidas e lentas possíveis.
  • IMFRateControl. Usado para alterar a taxa de reprodução.

Para obter essas duas interfaces, chame IMFGetService::GetService na Sessão de Mídia. O identificador de serviço é MF_RATE_CONTROL_SERVICE.

Usando o serviço de controle de taxa, um aplicativo pode implementar o avanço rápido e a reprodução inversa.

Desbaste

O afinamento é qualquer processo que reduz o número de amostras em um fluxo para reduzir a taxa geral de bits. Para vídeo, o afinamento geralmente é feito removendo os quadros delta e fornecendo apenas os quadros-chave. Geralmente, o pipeline pode dar suporte a taxas de reprodução mais rápidas usando a reprodução reduzida, pois a taxa de dados é menor porque os quadros delta não são decodificados.

O afinamento não altera os carimbos de data/hora ou as durações nos exemplos. Por exemplo, se a taxa nominal do fluxo de vídeo for de 25 quadros por segundo, a duração de cada quadro ainda será marcada como 40 milissegundos, mesmo que a fonte de mídia esteja descartando todos os quadros delta. Isso significa que haverá um intervalo de tempo entre o final de um quadro e o início do próximo.

Anulação

A limpeza é o processo de busca instantânea de pontos específicos no fluxo interagindo com uma barra de rolagem, linha do tempo ou outra representação visual do tempo. O termo vem da era dos toca-fitas de bobina ao balançar um rolo para frente e para trás para localizar uma seção era como esfregar a cabeça de reprodução com a fita.

A limpeza é implementada no Media Foundation definindo a taxa de reprodução como zero. Para obter mais informações, consulte Como executar a limpeza.

Controle de taxa

Buscando, Avançar e Inverso

Interfaces de serviço