Partilhar via


Exercício 3: usar o MXA para verificar se o áudio está descarregado durante a reprodução de vídeo em tela cheia

O descarregamento do processamento de áudio em chipsets compatíveis com o o descarregamento de áudio resulta em maior duração da bateria em cenários de reprodução de áudio e áudio/vídeo que aproveitam o Mecanismo de mídia no Windows. Este exercício usa a ferramenta Media eXperience Analyzer (MXA) para determinar se o áudio foi ou não descarregado para o hardware durante a reprodução de vídeo em tela cheia.

Etapa 1: carregar um rastreamento ETW que foi capturado durante a reprodução de vídeo em tela cheia

  1. Instale o Media eXperience Analyzer (MXA), que faz parte do Windows ADK.

  2. Clique com o botão direito do mouse no menu Iniciar e clique em Prompt de Comando (Admin).

  3. Navegue até a pasta na qual você instalou o MXA.

  4. Baixe o arquivo AudioNotOffloaded.etl aqui.

  5. Execute o comando a seguir:

    xa -i <AudioNotOffloaded.etl location>\AudioNotOffloaded.etl
    

    Por exemplo, se você baixou AudioNotOffloaded.etl em C:\Performance\Media\, digite o seguinte comando:

    xa -i C:\Performance\Media\AudioOffload\AudioNotOffloaded.etl
    
  6. Pressione o botão Desativar símbolos para desativar a pesquisa de símbolos.

Etapa 2: verificar se o áudio foi renderizado quando o rastreamento ETW foi coletado

  1. Depois que o rastreamento for carregado, arraste e solte o provedor Microsoft-Windows-MediaFoundation-Performance em um painel.

  2. Desmarque todos os eventos no provedor Microsoft-Windows-MediaFoundation-Performance clicando na caixa de seleção ao lado desse conjunto de dados duas vezes.

  3. Habilite Task Audio_Render – 482 eventos.

  4. Se os eventos de renderização de áudio forem disparados durante todo o rastreamento, o áudio estava sendo reproduzido quando o rastreamento foi coletado.

Captura de tela do Media eXperience Analyzer (MXA) mostrando dados de eventos de rastreamento de áudio.

Como podemos ver na captura de tela acima, os eventos de renderização de áudio no provedor Microsoft-Windows-MediaFoundation-Performance (Task Audio_Render – 482) são registrados em todo o rastreamento. Isso verifica se o áudio estava sendo reproduzido.

Etapa 3: determinar se o áudio foi descarregado para o hardware

  1. Arraste e solte o conjunto de dados do Agendador de CPU em um painel.

  2. Desmarque todos os eventos clicando na caixa de seleção na raiz do conjunto de dados do Agendador de CPU duas vezes.

  3. Expanda o conjunto de dados do Agendador de CPU e o nó Processos do Sistema do Windows.

  4. Selecione o processo audiodg.exe clicando na caixa de seleção uma vez.

  5. Se houver a atividade de thread audiodg.exe ocorrendo a cada 10 ms durante toda a sessão de reprodução, o áudio não será descarregado. Para obter um exemplo, consulte o Instantâneo do MXA número 1.

  6. Se houver atividade de thread audiodg.exe somente durante a inicialização e o desligamento, o áudio será descarregado. Para obter um exemplo, consulte o Instantâneo do MXA número 2.

  7. Baixe o arquivo de rastreamento AudioOffloaded.etl aqui.

  8. Repita as etapas 1, 2 e 3 usando o rastreamento AudioOffloaded.etl em vez de AudioNotOffloaded.etl.

Instantâneo do MXA número 1: rastreamento feito em um sistema no qual o áudio NÃO está sendo descarregado

Observe que audiodg.exe está acordando a cada 10 ms para processar amostras de áudio durante todo o rastreamento.

Captura de tela do Media eXperience Analyzer (MXA) mostrando o rastreamento feito em um sistema no qual o áudio NÃO está sendo descarregado.

Instantâneo do MXA número 2: rastreamento feito em um sistema no qual o áudio está sendo descarregado

Observe que há atividade de thread muito baixa no processo audiodg.exe nas fases de inicialização e desligamento da reprodução. Observe também que não há atividade de thread durante o estado estacionário.

Captura de tela do Media eXperience Analyzer (MXA) mostrando o rastreamento feito em um sistema no qual o áudio está sendo descarregado.