缘由
个人时不时的会在Audible网站买本有声书来听,既练听力也为消遣。有鉴于Amazon过去曾数次被爆直接删除用户图书,DRM保护也给平常使用增加了不便,所以还是希望能去掉限制,真正将付费购买的东西掌握在自己手上。
前两天机缘巧合下读到了移除 Audible 有聲書的 DRM,看项目代码才后知后觉伟大的FFmpeg项目早在2015年便已经支持了Audible的AAX格式转码,照着该博文实践并完善了一下Mac下的实作,总算可以转换出令自己满意的m4b文件导入到iTunes里面好好收听了。
DeDRM
准备工作
使用HomeBrew安装需要使用的应用
1
brew install chromedriver ffmpeg mp4v2
pip安装Selenium,这里必须是pip2,因为下面要用的audible-activator是Python 2项目
1
sudo pip2 install selenium requests
从Audible网站下载购买的有声书AAX文件,为了音质右上角的 Audio Quality 最好选择 Enhanced
获取Audible的激活码
audible-activator是个Python 2脚本,可以获取个人的Audible账号激活码,FFmpeg需要用来去除文件的DRM保护。
安装
1 2 3 4
git clone https://github.com/inAudible-NG/audible-activator.git cd audible-activator # sed替换项目代码的chromedriver文件路径,这里也可以将chromedriver复制到该目录 sed -i '' 's,chromedriver_path = "./chromedriver",chromedriver_path = "/usr/local/bin/chromedriver",' audible-activator.py
运行
1 2 3 4 5
$ ./audible-activator.py Username: 输入账号邮箱 Password: 输入账号密码 [*] Player ID is 2qwedl5r123abc/vhijkkK/abcd= activation_bytes: 这里获得了激活码,记下来备用
去除DRM,并转码成m4b
原博文上提供的项目是将目标文件转成了m4a,我在测试时发现了几个问题:
- m4a在导入到iTunes时会置入 Music 栏目而不是 Audiobooks
- m4a不会记忆文件的播放位置
- 最终文件没有将封面图片写入tag,需要手动修改
相应的解决方案:
- 问题1、2很简单,只要将文件后缀名从m4a改到m4b即可
- 问题3的原因是FFmpeg现在不能直接将Artwork写入mov文件,参见相关issue。所以需要换一种方法,这里使用mp4v2项目里的
mp4art
命令写入Artwork。
于是便有了AAXtoM4B这个fork项目。
|
|
然后就可以将下载好的有声书AAX文件一次性转换好。
|
|
最后将目录拖入iTunes完成导入,即可随时享受。
相关阅读
- DRM’s Dead Canary: How We Just Lost the Web, What We Learned from It, and What We Need to Do Next
- 亚马逊对删除Kindle用户电子书表示道歉
UPDATE
History
Version | Action | Time |
---|---|---|
1.0 | Initial commit | Nov 23, 2017 |
1.1 | Update upstream repo usage | Apr 18, 2018 |
2.0 | Rewrite codes | May 26, 2018 |