Estoy ejecutando ffmpeg v2.8.1 desde Homebrew e intento convertir archivos Audible , pero me falta un truco.
Este comando produce esta salida de error.
ffmpeg -activation_bytes 1CEB00DA -i Volume1.aax -vn -c:a copy output.mp4
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fc9a4010600] [aax] file checksum == d72f1f04e3c73d0bc68e742db1bc69b58dc3a500
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fc9a4010600] [aax] mismatch in checksums!
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fc9a4010600] error reading header
Volume1.aax: Invalid data found when processing input
Sé que el archivo está bien, porque se reproduce en iTunes. También tengo la imagen de archivo / portada incrustada,
De los documentos de ffmpeg, leí que los archivos Audible AAX son archivos M4B cifrados , y se pueden descifrar especificando un secreto de activación de 4 bytes.
Supongo, probablemente incorrectamente, que el dado está bien. Si no, ¿cómo se encuentra ese secreto?
macos
open-source
Harry McGovern
fuente
fuente

Respuestas:
Primero ejecute estos comandos:
Luego ingrese su nombre de usuario y contraseña Audible y espere un momento a que se imprima la clave de activación de ocho caracteres.
Si no ejecuta el
sedcomando que cambia el valor de lachromedriver_pathvariable, se./audible-activator.pyproduce un error como'chromedriver' executable needs to be in PATHsi estuvierachromedriveren la ruta o en elaudible-activatordirectorio. Si susedes GNUsed, reemplacesed -i ''consed -i.Después de eso, ejecute un comando como este:
(Edité el comando anterior basado en los comentarios de LiWang y marcus erronius para reemplazar
output.m4a;mv output.m4{a,b}conoutput.m4by para reemplazar-vn -c:v copycon-c copy).Si intenta utilizar el
ffmpegcomando anterior con unaaarchivo en lugar de unaaxarchivo, se produce un error comoOption activation_bytes not found. Para descargar un libro de Audible enaaxlugar deaa, seleccione "Mejorado" en el menú desplegable "Calidad de audio" en la vista para descargar un libro.aaxlos archivos están encriptadosmp4/m4a/m4bpor lo que elffmpegcomando anterior no vuelve a codificar el audio y conserva los metadatos, como los capítulos.mp4,m4aym4bson extensiones de nombre de archivo alternativas para el formato de contenedor MPEG-4 Parte 14. Las extensionesm4aym4bfueron introducidas originalmente por Apple. Una diferencia entre las extensionesm4aym4bes que la opción para recordar la posición de reproducción anterior en iTunes está habilitada de manera predeterminada para archivos con unam4bextensión pero no para archivos con unam4aextensión. iTunes también muestra archivos con unam4bextensión en audiolibros de forma predeterminada.Las versiones anteriores de iTunes no tenían la casilla de verificación para permitir recordar la posición de reproducción anterior, pero recordar la posición de reproducción anterior siempre estaba habilitada para archivos con una
m4bextensión, por lo que incluso Wikipedia aún afirma incorrectamente que "un.m4aarchivo de audio no puede" marcar "(recuerde último lugar de escucha), mientras que los.m4barchivos de extensión pueden ". (Aunque no sé si todavía hay otros reproductores multimedia que se comporten como versiones antiguas de iTunes a ese respecto).La UTI para la
m4bextensión escom.apple.protected-mpeg-4-audioy Finder muestra el tipo de todos losm4barchivos como "audio MPEG-4 protegido" aunque todos los archivos con unam4bextensión no tienen protección contra copia.fuente
.aaxarchivos y conseguir el error:Unrecognized option 'activation_bytes'.. ¿Algunas ideas? ¿Audible ha cambiado su formato en el último año?*.m4ay luego renombrar como*.m4b? ¿Por qué no simplemente hacerffmpeg -activation_bytes youractivationkey -i input.aax -vn -c:a copy output.m4b:?Esto te dará tu secreto de activación:
https://github.com/inAudible-NG/audible-activator
fuente
seleniumyrequestsvíapipoeasy_installtambién descargar y chromedriver extracto en elaudible-activatordirectorio para que funcione. Esta información se proporciona enaudible-activatorel archivo README, pero es útil saberlo por adelantado :)ggrepinstalado conbrew install grep) en macos, pero hizo un gran trabajo después de eso.Intenté la respuesta de user4669748, me encontré con algunas cosas que vale la pena señalar y descubrí una solución que me funcionó:
Waiting for px.owneriq.netse muestra constantemente en la barra de estado inferior.Después de 5 minutos, tuve una TimeoutException:
Ante esto, estaba atrapado. Sin embargo, pensando que
px.owneriq.netes algún tipo de anuncio o sitio de seguimiento, traté de "deshabilitarlo temporalmente" agregando/etc/hostsuna dirección IP no válida, p. Ej.(Esta fue una táctica sugerida por un amigo para detener los anuncios en el navegador).
Después de esta adición a
/etc/hosts, vuelva a ejecutar el programa. Funcionó hasta su finalización en 30 segundos.Se imprimió una clave de activación de 4 bytes en la pantalla y funcionó perfectamente con ffmpeg como se describe en la respuesta del usuario 46979748.
Luego restauré
/etc/hostssu contenido original.fuente