如何将有声 AAX 文件转换为 M4B 格式,同时保留所有信息(包括艺术作品)

如何将有声 AAX 文件转换为 M4B 格式,同时保留所有信息(包括艺术作品)

我试图找到一个解决方案,让我能够将一大堆 AAX 文件(我多年来购买的)批量处理成 M4B。

我尝试使用听觉激活器为了提取秘密,请使用 FFMPEG -activation_bytes [secret],如下所示:

ffmpeg -activation_bytes xxxxxxxx -i BOOK.AAX -c:a copy book.mp4 

问题是:如何创建一个批处理文件,不仅可以转换为 MP4,还可以复制所有艺术作品?

有任何想法吗?

答案1

我知道这已经过时了,但我想对此进行更新。在 FFmpeg 4.1 中,他们添加了对复制专辑封面的原生支持,您不再需要第三方程序。要转换有声读物,只需使用此简化命令:

ffmpeg -activation_bytes XXXXXXXX -i MyNiceBook.aax -c copy MyNiceBook.m4b

具体来说,你应该放弃-vn标志,并:a删除-c:a copy

我花了一段时间才找到它,因为它们仍然包含-vn标志他们的官方文件

来源:https://gist.github.com/r15ch13/0c548be006431607bf1eaecefdc0591a#gistcomment-2800421

答案2

解决方案很简单,需要以下程序(Windows 解决方案):

  1. FFmpeg
  2. 原子欧芹

使用这些程序(位于 AAX 文件所在的位置或可通过 PATH 获得),创建以下 Windows 批处理文件:

FOR /r %%a IN (*.aax) DO (^
del cover.jpg /Q & del "%%~na.mp4" /Q & del "%%~na.m4b" /Q & ^
ffmpeg -activation_bytes XXXXXXXX -i "%%a" -vcodec copy cover.jpg & ^
ffmpeg -activation_bytes XXXXXXXX -i "%%a" -vn -c:a copy -map_metadata 0:g "%%~na.mp4" & ^
ren "%%~na.mp4" "%%~na.m4b" & ^
IF exist cover.jpg (AtomicParsley.exe "%%~na.m4b" --artwork cover.jpg --overWrite) & ^
del cover.jpg /Q )

或者用一行代码:

FOR /r %%a IN (*.aax) DO (del cover.jpg /Q & del "%%~na.mp4" /Q & del "%%~na.m4b" /Q & ffmpeg -activation_bytes XXXXXXXX -i "%%a" -vcodec copy cover.jpg & ffmpeg -activation_bytes XXXXXXXX -i "%%a" -vn -c:a copy -map_metadata 0:g "%%~na.mp4" & ren "%%~na.mp4" "%%~na.m4b" & IF exist cover.jpg (AtomicParsley.exe "%%~na.m4b" --artwork cover.jpg --overWrite) & del cover.jpg /Q )

其中 XXXXXXXX 是使用 audible-activator 提取的秘密,对于同一用户拥有(购买)的所有文件都是相同的。

该批处理文件正在做什么:

  1. 删除以前转换尝试中可能的文件
  2. 使用 FFmpeg 将有声专辑封面(如果有)提取到名为“cover.jpg”的文件中
  3. 使用 FFmpeg 从 AAX 文件中提取 AAC 音频和所有元数据并将其保存到 MP4 文件中
  4. 将 MP4 文件重命名为 M4B
  5. (如果可用)使用 AtomicParsley 将专辑封面添加到 MP4 文件
  6. 删除 cover.jpg 文件

相关内容