news 2026/10/21 1:13:12

手把手搞定Apple Music ALAC无损下载:Gamdl + Wrapper实战配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
手把手搞定Apple Music ALAC无损下载:Gamdl + Wrapper实战配置

手把手搞定Apple Music ALAC无损下载:Gamdl + Wrapper实战配置

【免费下载链接】gamdlA command-line app for downloading Apple Music songs, music videos and post videos.项目地址: https://gitcode.com/GitHub_Trending/ga/gamdl

你在Apple Music里听到的多半是256kbps的AAC流,而原曲可能是24-bit/192kHz的ALAC无损——差距在一副好耳机上很明显。Gamdl + Wrapper 是目前做Apple Music无损下载少数稳的路子:Gamdl负责下载、打标签、整理文件,Wrapper负责把官方接口舍不得给的无损流钥匙交出来。

⚡️ 30秒上手

前提两样:一个生效中的Apple Music订阅,以及在浏览器登录music.apple.com时导出的Netscape格式cookies文件(Chrome装"Get cookies.txt LOCALLY"、Firefox装"Export Cookies"扩展都能导出)。

pip install gamdl gamdl -c cookies.txt "https://music.apple.com/us/album/never-gonna-give-you-up-2022-remaster/1624945512"

跑完,带标签、封面和同步歌词的音频文件就落在默认的./Apple Music目录里。传艺术家或播放列表URL时,它会弹出交互式选择列表,空格勾选、回车确认,新手也能一眼会用。默认编解码器是aac-web(256kbps),想碰ALAC往下看。

🔧 它是怎么做到的

说白了,Wrapper是个伪装成合法客户端的中间人,替Gamdl去跟Apple Music要无损流的钥匙。整条链路分工很清晰:

  • 账户登录:gamdl把Apple ID凭据转给Wrapper(首次会提示你输入),登录态由Wrapper维护;
  • 播放请求:每首曲目由Wrapper去申请合法播放会话,拿回流地址和FairPlay解密密钥;
  • 解密封装:大批量解密数据走Wrapper的TCP端口(默认10020),gamdl自带的Rust引擎ammuxer完成解密、重组和M4A写入,Python只负责CLI、下载、元数据打标和整体编排。

所以用Wrapper时你连cookies.txt都可以省掉,登录态交给它管,这也是Wrapper模式比纯cookies模式更稳的原因之一。

gamdl --use-wrapper \ --song-codec-priority alac,aac-web \ "https://music.apple.com/us/album/never-gonna-give-you-up-2022-remaster/1624945512"

歌曲编解码器分web(aac-web、aac-he-web,就是浏览器里播的那两种)和non-web(aac、alac、atmos、ac3等,要合法设备会话才发)两组,ALAC是non-web里的顶格选项。--wrapper-url和--wrapper-decrypt-port默认指向本机10020端口,Wrapper跑在别处就改这两项。alac,aac-web的写法是"优先无损,流不可用就回退AAC",不会让队列里的曲目白等。

🎯 进阶玩法

用得最多的三个高阶姿势,直接抄:

# 1. 一键下载艺术家全部专辑 gamdl --artist-auto-select all-albums "https://music.apple.com/us/artist/rick-astley/669771" # 2. 自定义目录结构和文件命名 gamdl --album-folder-template "{album_artist}/{album}/{date:%Y}" \ --multi-disc-file-template "{disc}-{track:02d} {title}" \ "https://music.apple.com/us/album/whenever-you-need-somebody-2022-remaster/1624945511" # 3. 换N_m3u8DL-RE加速下载 gamdl --download-mode nm3u8dlre \ --nm3u8dlre-path /path/to/N_m3u8DL-RE --ffmpeg-path /path/to/ffmpeg <URL>
  • --artist-auto-select还有singles-eps、top-songs、music-videos等选项,配合艺术家页面按口味挑;
  • 模板变量里{track:02d}是补零轨号、{date:%Y}是专辑年份,多碟专辑记得用--multi-disc-file-template加碟号前缀;
  • 换nm3u8dlre模式后音乐视频下载速度明显提升,代价是必须能找到FFmpeg;
  • 歌词想要更准的时间轴,把--synced-lyrics-format从默认的lrc改成srt即可。

不想每次敲参数,写进~/.gamdl/config.ini(Windows在%USERPROFILE%\.gamdl\config.ini):

[gamdl] use_wrapper = true song_codec_priority = alac,aac-web synced_lyrics_format = lrc

配置文件首次运行时自动生成,全部选项都在里面,命令行参数优先级高于配置。

🛠️ 避坑指南

设了alac却下载失败,只出来AAC

没有Wrapper时,官方接口基本不会发放无损流。这是接口层面的限制,不是gamdl的bug。本地先起一个Wrapper v2服务,再带上--use-wrapper重跑。

报"订阅未激活"或403

cookies对应的浏览器会话过期了,这个坑几乎人人踩过。重新从一个当前登录态正常的浏览器导出cookies;或者干脆切到Wrapper模式,那条路径完全不用cookies。

音乐视频卡在1080p,设2160p直接报错

4K流只有h265编码,且需要DRM L1设备参与解密。把--music-video-codec-priority里h265放第一位,再用--wvd-path指定Widevine L1的.wvd,或--prd-path指定SL3000 PlayReady的.prd,没有这两类设备文件就别指望4K。

换成nm3u8dlre模式立刻报错

这个模式依赖N_m3u8DL-RE和FFmpeg两个外部可执行文件,不在PATH里必挂。用--nm3u8dlre-path和--ffmpeg-path传绝对路径,或者干脆保持默认ytdlp模式——差别主要在速度,不在结果。

收尾

Gamdl定位是一个Apple Music命令行全家桶:歌曲、最高4K的音乐视频、三种格式的同步歌词、艺术家页面批量下载,一个入口全走通,而Wrapper就是它通往无损音质的钥匙。建议先把30秒流程跑通,确认库结构合心意,再搭本地Wrapper切ALAC。遇到不认识的参数,首跑自动生成的配置文件里都有完整清单,也可以去项目的issue列表里翻翻同类问题。

【免费下载链接】gamdlA command-line app for downloading Apple Music songs, music videos and post videos.项目地址: https://gitcode.com/GitHub_Trending/ga/gamdl

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/21 1:11:14

系统平均负载 load average 计算方式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/21 1:10:56

【3】时间

文章目录 1.时间转换 1.1 案例 2.sel时间设置 3.rtc&ntp 3.1 rtc时间异常 3.2 ntp 4.sel时区设置 5.phosphor-time-manager模块 6.deadline_timer(闹钟)与steady_timer(秒表) 1.时间转换 reboot启动systemd时systemd/src/core/main.c文件中initialize_clock函数会将系…

作者头像 李华
网站建设 2026/10/21 1:08:16

ZCC485超低功耗RS485芯片:5μA静态电流与高速远距平衡设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华