lxh2875931338 937bcdd63d fix(playback): 缓冲抖动下看门狗失效 + 元数据改到播放稳定后再抓
实测(公网链路,自然播完 -> 自动下一首)暴露两个新问题:

1. 看门狗在 buffering 抖动时永远不触发
   原实现每次 buffering=true 都重置 30s 计时器,而弱网下它会 true/false
   每 2~5s 抖一次,于是计时器一直被重置,卡死 60s+ 也不会自愈。
   改为记录"最近一次缓冲时间",用「进度 30s 未推进 + 20s 内发生过缓冲」
   两个条件判定,暂停时不会误触发。

2. 元数据抓取在起播瞬间抢带宽
   新歌 open 后 mpv 还在持续填缓冲,此时插入 2MB 标签下载会把缓冲打回 0。
   实测下一首因此要等 60s+。
   改为等播放真正稳定(进度 >= 5s 且连续 2s 不在 buffering,最多等 30s)
   再抓元数据;等不到就跳过本次(下次播放再试),优先保证出声。

验证:公网 + 移动数据下切歌,next 发起后 2ms 即 open;
未稳定时日志出现"播放未稳定,跳过本次元数据抓取",不再有 2MB 下载与播放抢带宽。
2026-10-23 21:35:40 +08:00
2026-08-14 23:30:00 +08:00

清听 QingTing

Flutter Platform

让远程音乐,像本地音乐一样可靠。

清听是一个面向 Android 的 WebDAV 音乐播放器。

它解决的事情很简单:

让存储在 WebDAV 服务器上的音频文件,获得稳定、连续、可控的本地级播放体验。

✨ 能力

  • WebDAV 流式播放,无需下载
  • 后台播放,退出应用不停
  • 通知中心、锁屏、耳机控制
  • 元数据读取与 SQLite 缓存
  • 通知栏封面图

🚀 快速开始

# 克隆
git clone https://your-repo/qingting.git
cd qingting

# 获取依赖
flutter pub get

# 运行
flutter run

详细步骤:Getting Started →

📖 文档


最好的播放器,是当你开始听歌之后,就再也感觉不到它技术细节的那一个。

S
Description
一个简单的试水型音乐播放器
Readme
36 MiB
Languages
Dart 96.7%
PowerShell 2.1%
Kotlin 1.2%