如何停止持续运行的D/AudioTrack?日志异常原因排查
问题描述
在Android Studio中执行Run命令启动Flutter应用后,应用并未播放任何音视频,但Run标签页持续输出以下D/AudioTrack日志:
D/AudioTrack( 7824): [audioTrackData][fine] 25s(f:25037 m:914 s:1000 k:0) : pid 7824 uid 10657 sessionId 8033 sr 44100 ch 2 fmt 1 D/AudioTrack( 7824): [audioTrackData][mute] 28s(f:0 m:28040 s:0 k:28040) : pid 7824 uid 10657 sessionId 8025 sr 48000 ch 2 fmt 1 D/AudioTrack( 7824): [audioTrackData][fine] 25s(f:25030 m:1003 s:0 k:0) : pid 7824 uid 10657 sessionId 8089 sr 48000 ch 1 fmt 1
设备信息
- Redmi 10C
- MIUI Global 14.0.2
依赖的音视频相关插件
camera: ^0.10.5+2 video_compress: ^3.1.0 video_player: ^2.6.1 video_thumbnail: ^0.5.0
Flutter环境检测结果
C:\src\flutter\bin\flutter.bat doctor --verbose [√] Flutter (Channel stable, 3.10.5, on Microsoft Windows [Version 10.0.22621.1555], locale he-IL) • Flutter version 3.10.5 on channel stable at C:\src\flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision 796c8ef792 (13 days ago), 2023-06-13 15:51:02 -0700 • Engine revision 45f6e00911 • Dart version 3.0.5 • DevTools version 2.23.1 [√] Windows Version (Installed version of Windows is version 10 or higher) [√] Android toolchain - develop for Android devices (Android SDK version 33.0.0) • Android SDK at C:\Users\merid\AppData\Local\Android\sdk • Platform android-TiramisuPrivacySandbox, build-tools 33.0.0 • Java binary at: C:\Program Files\Android\Android Studio2\jbr\bin\java • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619) • All Android licenses accepted. [√] Chrome - develop for the web • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe [X] Visual Studio - develop for Windows X Visual Studio not installed; this is necessary for Windows development. Download at https://visualstudio.microsoft.com/downloads/. Please install the "Desktop development with C++" workload, including all of its default components [√] Android Studio (version 2021.3) • Android Studio at C:\Program Files\Android\Android Studio • Flutter plugin can be installed from: https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866) [√] Android Studio (version 2022.1) • Android Studio at C:\Program Files\Android\Android Studio2 • Flutter plugin can be installed from: https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619) [√] VS Code (version 1.78.0) • VS Code at C:\Users\merid\AppData\Local\Programs\Microsoft VS Code • Flutter extension can be installed from: https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter [√] Connected device (4 available) • 220333QAG (mobile) • fd8dff64 • android-arm64 • Android 13 (API 33) • Windows (desktop) • windows • windows-x64 • Microsoft Windows [Version 10.0.22621.1555] • Chrome (web) • chrome • web-javascript • Google Chrome 114.0.5735.134 • Edge (web) • edge • web-javascript • Microsoft Edge 114.0.1823.58 [√] Network resources • All expected network resources are available. ! Doctor found issues in 1 category. Process finished with exit code 0
咨询问题
- 这些
D/AudioTrack日志产生的原因是什么? - 如何停止持续运行的
D/AudioTrack?
问题解答
1. D/AudioTrack日志产生的原因
- 插件资源残留:你使用的
camera或video_player插件,在初始化过程中会创建AudioTrack实例用于音视频预览的音频通路,即使未主动播放音视频,这些实例若未被正确销毁,就会触发系统持续输出日志。 - MIUI系统特性:MIUI 14的音频框架会对应用音视频组件做额外状态监控,即便音频处于静音(日志中的
[mute]标记)状态,也会持续记录AudioTrack的运行数据。 - 插件预加载逻辑:部分音视频插件会预创建音频资源池,保持AudioTrack实例处于就绪状态以避免后续初始化延迟,这类预创建的实例会持续产生日志。
2. 停止持续运行的AudioTrack的方法
- 手动销毁插件实例:在不使用
camera或video_player时,务必调用对应的销毁方法,比如cameraController.dispose()、videoPlayerController.dispose(),彻底释放相关音频资源。 - 升级插件版本:尝试将相关音视频插件更新到最新稳定版,旧版本可能存在资源泄漏问题,新版本通常会修复这类资源未正确释放的bug。
- 关闭MIUI详细音频日志:在手机开发者选项中找到“音频日志”或类似选项,关闭详细输出(不同MIUI版本路径略有差异,一般在开发者选项的“调试”分类下)。
- 排查代码逻辑:检查代码中是否存在意外初始化音视频插件的情况,比如在页面初始化时不必要地创建了Camera或VideoPlayer实例,即便未展示对应UI。
内容的提问来源于stack exchange,提问作者Kobi
相关产品推荐
相关产品推荐

