Eh'*_*den 4 audiobook ffmpeg m4b video-conversion audio-conversion
我试图找到一种解决方案,让我能够将一大堆 AAX 文件(我多年来购买的)批量处理为 M4B。
我尝试使用声音激活器来提取秘密,然后将 FFMPEG 与 一起使用-activation_bytes [secret],如下所示:
ffmpeg -activation_bytes xxxxxxxx -i BOOK.AAX -c:a copy book.mp4
Run Code Online (Sandbox Code Playgroud)
问题是:如何创建一个不仅可以转换为 MP4,还可以复制所有艺术品的批处理文件?
有任何想法吗?
小智 6
我知道这是旧的,但我想对此进行更新。在 FFmpeg 4.1 中,他们添加了对复制专辑封面的本机支持,您不再需要第三方程序。要转换您的有声读物,只需使用以下简化命令:
ffmpeg -activation_bytes XXXXXXXX -i MyNiceBook.aax -c copy MyNiceBook.m4b
Run Code Online (Sandbox Code Playgroud)
这花了我一段时间才找到,因为他们的官方文档中仍然包含该-vn标志。
来源:https : //gist.github.com/r15ch13/0c548be006431607bf1eaecefdc0591a#gistcomment-2800421
解决方案很简单,需要以下程序(Windows解决方案):
使用这些程序(位于 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 )
Run Code Online (Sandbox Code Playgroud)
或者在一行中:
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 )
Run Code Online (Sandbox Code Playgroud)
其中 XXXXXXXX 是使用 audible-activator 提取的秘密,对于同一用户拥有(购买)的所有文件都是相同的。
这个批处理文件正在做什么: