You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter just_audio在Windows播放本地音频遇sourceNotSupported错误

解决just_audio Windows端加载本地音频文件出现'sourceNotSupported'的问题

可能的原因与对应解决方案

1. 文件路径格式错误

Windows系统对本地路径的解析有特殊要求,直接用File(path)生成的路径字符串可能无法被just_audio正确识别。建议将本地路径转换为file URI格式后再传入:

final fileUri = Uri.file(localFilePath).toString();
await audioPlayer.setAudioSource(AudioSource.uri(Uri.parse(fileUri)));

Uri.file会自动处理Windows路径的反斜杠转义问题,避免解析异常。

2. 权限配置遗漏

即便文件本身有读写权限,Windows桌面应用仍需在配置中声明对应权限才能访问本地存储:

  • 在pubspec.yaml的windows配置段添加权限声明:
windows:
  permissions:
    - musicLibrary
    - privateNetworkClientServer
  • 若仍无效,可检查Runner/Runner.rc文件,确认是否添加了Windows 10+所需的文件访问权限节点。

3. 音频编码兼容性问题

just_audio_windows依赖的底层播放器对部分小众编码格式(如DSD、某些特殊参数的FLAC)支持有限。先尝试用Windows自带的媒体播放器测试目标音频文件,确认文件本身是否能正常播放,排除编码格式不兼容的情况。

4. 依赖版本bug

旧版本的just_audio_windows可能存在本地文件加载的已知问题,建议升级到最新稳定版:

just_audio_windows: ^0.2.0 # 替换为当前最新版本号

执行flutter pub get更新后重新测试。

5. 路径含特殊字符

如果文件路径包含中文、空格或特殊符号,可能导致路径解析失败。先将文件移至路径简单的目录(如C:\temp\test.mp3)测试,确认是否是路径字符的问题。


内容的提问来源于stack exchange,提问作者user20265604

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 18:45:25