Contact us
Leave a message

Bitte benutzen:

Mein öffentlicher Kryptographie-Schlüssel


Mitglied bei

Logo "Bündnis '90/Die Grünen"
B'90/Grüne, OV Lehrte
Logo 'NABU Burgdorf, Lehrte, Uetze'
NABU Burgdorf, Lehrte, Uetze
Logo "Gospelchor 'Swing Low', Markus-Gemeinde, Lehrte"
Gospelchor "Swing Low", Markus-Gemeinde, Lehrte
Logo "Verein zum Erhalt klassischer Computer"
Verein zum Erhalt klassischer Computer

Freiheit für die Hörbucher!

Ein bekannter und großer Online-Anbieter von Hörbüchern bietet die Werke nicht in der gewohnten Form von mp3-Dateien an, sondern in einem eigenen, DRM-geschützen Format namens aax. Leider musste ich feststellen, dass Hörbücher im aax-Format weder unter Linux noch auf meinem guten, alten mp3-Player unter Rockbox abspielbar sind.

Natürlich war ich nicht der erste, der sich mit diesen unnötigen Schikanen herumschlägt, und nach etwas Recherche habe ich das hier beschriebene Python-Programm zusammengehackt, um das Überspielen der Hörbücher sowie das Aufspalten in handliche mp3-Dateien zu erleichtern.

 

Benutzung

Hier die eingebaute Hilfe nach Aufruf abconv.py --help:

usage: abconv.py [-h] [-x] [-c AUTHCODE] [-a AUTHOR] [-b BOOK] [-s SERIES]
                 [-i INSTALMENT] [-A ARTIST_TEMPLATE] [-B ALBUM_TEMPLATE]
                 [-T TRACK_TEMPLATE] [-p PERFORMER] [-y YEAR]
                 [-o OUTDIR_TEMPLATE] [-n FILENAME_TEMPLATE] [-f {mp3}]
                 [-t TRIM_INTRO] [-u TRIM_EXTRO] [-w PAD_WITH_SILENCE]
                 [-m COVER_IMAGE]
                 source

Convert aax audiobooks to collections of audio files.

positional arguments:
  source

optional arguments:
  -h, --help            show this help message and exit
  -x, --extract-metadata
                        Only extract metadata.
  -c AUTHCODE, --authcode AUTHCODE
                        Authorization code.
  -a AUTHOR, --author AUTHOR
                        Author name.
  -b BOOK, --book BOOK  Book title.
  -s SERIES, --series SERIES
                        Series name.
  -i INSTALMENT, --instalment INSTALMENT
                        Instalment number within series.
  -A ARTIST_TEMPLATE, --artist-template ARTIST_TEMPLATE
                        Artist tag template. ["{author}"]
  -B ALBUM_TEMPLATE, --album-template ALBUM_TEMPLATE
                        Album tag template. ["{series} {instalment} - {book}
                        for series, "{book}" else]
  -T TRACK_TEMPLATE, --track-template TRACK_TEMPLATE
                        Track tag template. ["{album}
                        {chapter_number}/{chapters_count}"]
  -p PERFORMER, --performer PERFORMER
                        Performer tag content.
  -y YEAR, --year YEAR  Year.
  -o OUTDIR_TEMPLATE, --outdir-template OUTDIR_TEMPLATE
                        Output directory template.
                        ["out/{author}/{series}/{instalment} - {book}" for
                        series, "out/{author}/{album}" else]
  -n FILENAME_TEMPLATE, --filename-template FILENAME_TEMPLATE
                        Track filename template. ["{formatted_chapter_number}
                        - {book} {chapter_number}"]
  -f {mp3}, --format {mp3}
                        Output format. ["mp3"]
  -t TRIM_INTRO, --trim-intro TRIM_INTRO
                        After removing Trim start of first track by specified
                        number of seconds. Try 1.5 for English and 3.5 for
                        German audio books.
  -u TRIM_EXTRO, --trim-extro TRIM_EXTRO
                        Trim end of last track by specified number of seconds.
                        Try 2.5 for both English and German audio books.
  -w PAD_WITH_SILENCE, --pad-with-silence PAD_WITH_SILENCE
                        After trimming, pad beginning of first chapter and end
                        of last chapter, respectively, with the specified
                        number of seconds of silence. [1.0]
  -m COVER_IMAGE, --cover-image COVER_IMAGE
                        Cover image filename. ["album.jpg"]

Requires ffmpeg to be installed and in path.

Um den in der Hilfe genannten Authcode muss sich der/die geneigte Nutzer*in leider selbst kümmern...

Download

Das Tool kann von meinem entsprechenden GitLab-Repository heruntergeladen werden.