练习 3 - 使用 MXA 验证音频在全屏视频播放期间是否卸载

在支持音频卸载的芯片组上卸载音频处理会导致在音频和音频/视频播放方案中延长电池使用时间,这些方案在 Windows 下使用媒体引擎。 本练习使用 Media eXperience Analyzer (MXA) 工具确定在全屏视频播放期间音频是否卸载到硬件。

步骤 1:加载在全屏视频播放期间捕获的 ETW 跟踪

  1. 在安装 Windows ADK 的过程中安装 Media eXperience Analyzer (MXA)。

  2. 右键单击“开始”菜单,然后单击“命令提示符(管理员)”。

  3. 导航到安装 MXA 的文件夹。

  4. 此处下载 AudioNotOffloaded.etl。

  5. 运行以下命令:

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

    例如,如果将 AudioNotOffloaded.etl 下载到了 C:\Performance\Media\,则键入以下命令:

    xa -i C:\Performance\Media\AudioOffload\AudioNotOffloaded.etl
    
  6. 按“关闭符号”按钮关闭符号查找。

步骤 2:验证收集 ETW 跟踪时是否呈现了音频

  1. 加载跟踪后,将 Microsoft-Windows-MediaFoundation-Performance 提供程序拖放到面板中。

  2. 通过单击此数据集旁边的复选框两次来取消选中 Microsoft-Windows-MediaFoundation-Performancee 提供程序中的所有事件。

  3. 启用“Task Audio_Render – 482”事件。

  4. 如果在整个跟踪中都触发音频呈现事件,则在收集跟踪时正在播放音频。

显示音频跟踪事件数据的 Media eXperience Analyzer (MXA) 屏幕截图。

根据上面的屏幕截图,Microsoft-Windows-MediaFoundation-Performance 提供程序中的音频呈现事件 (Task Audio_Render – 482) 在整个跟踪中都进行了记录。 这表明正在播放音频。

步骤 3:确定是否将音频卸载到了硬件

  1. 将“CPU 计划程序”数据集拖放到面板中。

  2. 通过单击“CPU 计划程序”数据集根中的复选框两次来取消选中所有事件。

  3. 展开“CPU 计划程序”数据集和“Windows 系统进程”节点。

  4. 通过单击复选框一次选中 audiodg.exe 进程。

  5. 如果在整个播放会话期间存在每 10 毫秒发生一次的 audiodg.exe 线程活动,则音频未卸载。 有关示例,请参阅 MXA 屏幕截图 1。

  6. 如果仅在启动和关闭期间存在 audiodg.exe 线程活动,则音频正在卸载。 有关示例,请参阅 MXA 屏幕截图 2。

  7. 此处下载 AudioOffloaded.etl 跟踪文件。

  8. 使用 AudioOffloaded.etl 跟踪而不是 AudioNotOffloaded.etl 重复步骤 1、2、3。

MXA 屏幕截图 1:在未卸载音频的系统上执行跟踪

请注意:audiodg.exe 每 10 毫秒唤醒一次,以在整个跟踪中处理音频样本。

显示在未卸载音频的系统上执行跟踪的 Media eXperience Analyzer (MXA) 屏幕截图。

MXA 屏幕截图 2:在卸载音频的系统上执行跟踪

请注意,在播放的启动和关闭阶段,audiodg.exe 进程中的线程活动非常少。 还请注意,稳定状态期间没有线程活动。

显示在卸载音频的系统上执行跟踪的 Media eXperience Analyzer (MXA) 屏幕截图。