ap_ds · lightweight Python audio solution ap_ds · 轻量级Python音频库
v3.0.0

ap_ds: 轻量级 Python 音频革命

2.5MB 终结 160MB 臃肿时代

v3.0.0 LTS 仅 2.5MB 跨平台 W/M/L

1. 项目介绍

📋 官方信息

项目名称:ap_ds

官方网站:https://apds.top

PyPI:https://pypi.org/project/ap_ds/

开发者:Dvs (DvsXT)

ap_ds 是一个极轻量级(2.5MB)的 Python 音频库,用于播放和精确解析 MP3、FLAC、OGG 和 WAV 文件。它没有外部 Python 依赖,仅使用 Python 标准库,为非阻塞播放提供平滑的 GUI 应用程序体验。

🎉 v3.0.0 LTS 长期支持版本

首个长期支持版本,提供 永久免费技术支持,哈希验证下载,确定性资源清理。

2. 核心特性

极致轻量
Windows 2.5MB · macOS 3.36MB · Linux 就绪
🎵
四种格式
MP3 / FLAC / OGG / WAV
📊
精确元数据
WAV/FLAC 100% 准确
▶️
非阻塞播放
完美适配 GUI 应用

📦 体积对比

  • 🟢 ap_ds Windows: 2.5MB
  • 🍎 macOS: 3.36MB
  • 🐧 Linux: 动态链接 ~50KB
  • 🔴 FFmpeg: ≥160MB
  • 🟡 Pygame + 解析库: 臃肿且功能不全

⚙️ 为什么这么小?

  • 专注:仅播放和解析,无编辑/转码
  • 基于工业级 SDL2
  • 逐字节优化
  • 跨平台 W/M/L

3. 技术对比

第一章:Pygame —— 游戏引擎的"音频残疾"

# Pygame 不可靠的音频时长
my_sound = pygame.mixer.Sound('my_song.mp3')
total_length = my_sound.get_length()  # 仅对 WAV 可靠!
⚠️ Pygame 的 Sound.get_length() 仅对 WAV 格式正确,MP3/OGG/FLAC 返回无效值。

第二章:FFmpeg 套件 —— 160MB 的"至少"之痛

组件功能大小
ffplay.exe播放核心≈80MB
ffprobe.exe元数据探测≈80MB
ffmpeg.exe转换器≈80MB
🔍 三个独立可执行文件,无 Python 封装,总计 ≥160MB。

第三章:ap_ds 革命

七大技术突破

  • ✓ 2.5MB 解决 160MB 问题
  • ✓ 非阻塞消除 GUI 卡顿
  • ✓ 精确进度查询
  • ✓ 零依赖部署
  • ✓ AID 多音频管理
  • ✓ SDL2 性能
  • ✓ 智能 C 依赖跨平台

4. 安装与使用

pip install ap_ds

基础示例

from ap_ds import AudioLibrary

lib = AudioLibrary()
aid = lib.play_from_file("music.mp3")
lib.pause_audio(aid)
lib.seek_audio(aid, 30.5)
duration = lib.stop_audio(aid)

DAP 播放列表 (v2.3.0+)

aid1 = lib.play_from_file("song1.mp3")
recordings = lib.get_dap_recordings()
lib.save_dap_to_json("my_playlist.ap-ds-dap")

淡入淡出效果 (v2.4.0+)

# 2秒淡入
lib.fadein_music(aid, loops=-1, ms=2000)

# 3秒淡出
lib.fadeout_music(ms=3000)

# 检查播放状态
if lib.is_music_playing():
    print("音乐播放中")

5. 开源许可证

✅ 您可以

  • 商业使用
  • 修改代码
  • 闭源集成
  • 销售解决方案
  • 云服务部署

❌ 您不可以

  • 使用原始品牌名称
  • 删除版权声明
  • 用于非法用途
  • 专利侵权诉讼

👍 您应该

  • 保留版权声明
  • 标注来源归属
  • 报告安全问题
  • 修改版本用独立品牌

详细许可证请查看 AP_DS_LICENSE.MD 文件。

6. 常见问题

问:公司可以将其集成到商业产品中吗?

✅ 完全可以,无需付费、无需通知、无需授权。

问:我可以修改并重新分发吗?

✅ 可以,但必须使用独立品牌、保留版权、标注来源、提供维护者声明。

问:我必须开源我的修改吗?

❌ 不需要,您可以闭源分发。

问:在云服务中使用需要付费吗?

❌ 不需要,但欢迎贡献代码。

问:技术支持收费吗?

✅ 永久免费技术支持,通过 GitCode Issues 或邮件联系。

7. 联系与支持

📧 授权咨询

me@dvsyun.top 或 dvs6666@163.com

7个工作日内回复

🛠️ 技术支持

GitCode Issues · 官方文档 · 邮件支持

✅ 永久免费

🔗 官方仓库

主仓库:GitCode

国内镜像:Gitee

已废弃:GitHub

🔗 项目主页:apds.top

8. 最新公告

加载中...