如何用 Gamdl 集成 Wrapper 下载 ALAC 无损音乐:完整指南
【免费下载链接】gamdlA command-line app for downloading Apple Music songs, music videos and post videos.项目地址: https://gitcode.com/GitHub_Trending/ga/gamdl
用 Gamdl 直接走 Apple Music API 下载歌曲时,aac-web 这类有损格式通常没问题,但alac无损音频经常卡在 API 限制上拿不到。给 Gamdl 接一个 Wrapper,让它代管账户、播放流和解密请求,就能把 ALAC 无损音乐(最高 24-bit/192kHz)稳定下下来。
Wrapper 在 Gamdl 下载链路中扮演什么角色
可以把它理解成银行的“柜台窗口”:Gamdl 不再直接和 Apple 的后台打交道,而是先找本地这台 Wrapper 服务办事。开启--use-wrapper后,三类请求都会改道:
- 账户信息:Gamdl 向 Wrapper 的
/me、/login接口换取账户凭证(如music_token、dev_token),并确认订阅状态; - 播放流:歌曲的 playback 请求经 Wrapper 返回,ALAC 这类非 Web 格式通常以加密流形式给出;
- 解密:FairPlay 加密的音频流会被送到 Wrapper 的 TCP 解密端口(默认
10020)处理,最终写出可直接播放的 m4a 文件。
整条链路的接口调用可以在 gamdl/api/wrapper.py 里对照查看,命令行侧只需要指向 Wrapper 的地址。
三步配好 Gamdl 的 Wrapper 参数
第一步:准备 Wrapper 服务
- 安装 Python 3.10+,并保持一个有效的 Apple Music 订阅;
- 用
pip install gamdl安装,或git clone https://gitcode.com/GitHub_Trending/ga/gamdl获取源码; - 在本地启动 Wrapper v2 服务,默认 HTTP 地址
http://127.0.0.1,TCP 解密端口10020; - 启用 Wrapper 后可以不准备 cookies 文件,首次运行时按提示输入账户用户名密码即可,支持 2FA。
第二步:ALAC 下载参数一览表
| 参数 | 作用 | 默认值 |
|---|---|---|
--use-wrapper | 启用 Wrapper 代管账户、播放与解密 | 关闭 |
--wrapper-url | Wrapper HTTP 服务地址 | http://127.0.0.1 |
--wrapper-decrypt-host | Wrapper TCP 解密主机 | 127.0.0.1 |
--wrapper-decrypt-port | Wrapper TCP 解密端口 | 10020 |
--song-codec-priority | 音频编码优先级,指定alac即选择无损 | aac-web |
这些项也可以写进~/.gamdl/config.ini(如use_wrapper = true)一劳永逸,参数定义见 gamdl/cli/cli_config.py。
第三步:执行下载命令
gamdl --use-wrapper --song-codec-priority alac "<歌曲或专辑 URL>"如果 Wrapper 跑在非默认地址,再补上--wrapper-url与--wrapper-decrypt-port。若日志提示“ALAC 未启用 wrapper 可能不可用”,说明忘了加--use-wrapper。
集成 Wrapper 前后的差异
| 项目 | 不接 Wrapper | 接入 Wrapper |
|---|---|---|
| ALAC 无损 | 可以尝试,但受 API 限制大概率失败,CLI 会主动警告 | 由 Wrapper 解密 FairPlay 流,ALAC 最高 24-bit/192kHz |
| 认证方式 | 需要浏览器导出的 cookies 文件 | Wrapper 账户登录,cookies 可省略 |
| 其他格式 | aac-web等直接使用即可 | 不变,非alac编码无需 Wrapper |
各编码的定义(alac、aac、atmos等)在 gamdl/interface/enums.py 中可以查到,用--song-codec-priority调整优先级即可切换产物。
Wrapper 接通后,ALAC 无损下载链路就完整了。建议先挑一首歌验证效果,再翻翻仓库 README 了解音乐视频下载的参数。
【免费下载链接】gamdlA command-line app for downloading Apple Music songs, music videos and post videos.项目地址: https://gitcode.com/GitHub_Trending/ga/gamdl
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考