Text unter macOS in Audio umwandeln

Unter macOS kann mittels der Automator-App beliebiger Text in eine Audiodatei umgewandelt werden. Nach dem Öffnen der Automator-App muss dazu dort eine neue Schnellaktion (Service) erstellt werden.

Die konfigurierte Schnellaktion

Diese Schnellaktion wird dann so konfiguriert, dass der Arbeitsablauf aktuellen Text nutzt und dann als Aktion Text in Audiodatei schreibt.

Die Nutzung der Schnellaktion in einer beliebigen Applikation

Nachdem die Aktion gespeichert wurde, kann sie in beliebigen Applikationen über das Kontextmenü genutzt werden. Wird die Schnellaktion aufgerufen, findet sich anschließend das aus dem Text erstellte Audio in der definierten Datei.

Album-Tags für MP3 und M4A Dateien setzen

Für eine Umbenennung war ich auf der Suche nach einer Möglichkeit in Audiodateien die entsprechenden Albumtags unter macOS zu setzen. Hierfür setzte ich exiftool und id3v2 ein. Im ersten Schritt wurden die Tools über den Paketmanager Homebrew installiert:

brew install exiftool
brew install id3v2

Für die M4A-Dateien wurde exiftool genutzt, welches mit kompletten Ordnern umgehen kann:

exiftool -album="Deus ex machina" .

Da exiftool die entsprechenden Tags für MP3-Dateien nicht schreiben kann, wurde für diese Dateien id3v2 in Verbindung mit dem find-Befehl genutzt:

find . -iname "*.mp3" -type f -exec id3v2 -A "Deus ex machina" {} \;

Damit wird der Album-Tag der entsprechenden Dateien neu gesetzt. Überprüft werden kann dies wiederum mit exiftool:

exiftool file.mp3

In der Ausgabe findet sich dann unter anderem der neu gesetzte Tag.

Audio-Dateien mittels ffmpeg normalisieren

Für einen Audio-Workflow wollte ich unter anderem Audio-Dateien normalisieren, damit diese mit einer identischen Lautheit verfügbar sind. Dazu kann das freie ffmpeg genutzt werden:

ffmpeg -i local.flac -filter:a loudnorm local.wav

Allerdings wird bei der Normalisierung eine 2-Pass-Lösung empfohlen. Dabei wird im ersten Durchlauf die Datei analysiert, um die entsprechenden Werte für die qualitativ hochwertige Normalisierung zu ermitteln:

ffmpeg -i local.flac -filter:a loudnorm=print_format=json -f null NULL

Für die entsprechende Datei wird dann eine Ausgabe erzeugt:

{
	"input_i" : "-33.65",
	"input_tp" : "-8.11",
	"input_lra" : "7.10",
	"input_thresh" : "-44.96",
	"output_i" : "-25.28",
	"output_tp" : "-2.00",
	"output_lra" : "4.50",
	"output_thresh" : "-36.36",
	"normalization_type" : "dynamic",
	"target_offset" : "1.28"
}

Mithilfe dieser Informationen kann dann der zweite Durchlauf gestartet werden:

ffmpeg -i local.flac -filter:a loudnorm=linear=true:i=-16:lra=7.0:tp=-2.0:offset=0.50:measured_I=-33.65:measured_tp=-8.11:measured_LRA=7.10:measured_thresh=-44.96 -ar 44100 local.wav

Da die Lösung mittels ffmpeg etwas umständlich ist, wurde ffmpeg-normalize entwickelt. Dieses Python-Tool kann über den Python-Paketmanager installiert werden:

pip3 install ffmpeg-normalize

Anschließend kann die Normalisierung und Konvertierung vorgenommen werden:

ffmpeg-normalize local.flac -o local.wav -ar 44100

In diesem Fall wird die FLAC-Datei normalisiert und in eine Wave-Datei konvertiert und die entsprechende Samplerate auf 44100 gestellt. Um das Kommando einfacher zugänglich zu machen, kann eine Bash-Funktion definiert werden. Unter macOS muss diese in der entsprechenden Konfigurationsdatei der Z shell angelegt werden:

nano ~/.zshrc

Anschließend kann die entsprechende Funktion in der Datei definiert werden:

normalize ()
{
  ffmpeg-normalize "$1" -o "$1".wav -ar 44100
}

Nachdem das Terminal neu gestartet wurde, kann das Kommando wie folgt benutzt werden:

normalize local.flac

mov-Dateien mittels ffmpeg zu mp4-Dateien konvertieren

Im Internet und den Appstores existieren eine Reihe unzählige Anzahl von Konvertierungstools für Video- und Audiodateien. Und meist sind diese Werkzeuge aufgeblasen oder schlimmer mit unerwünschter Software versehen. Glücklicherweise kann die Konvertierung mittels ffmpeg auch einfach von der Hand gehen. Dazu muss ffmpeg im ersten Schritt installiert werden, z.B. unter macOS mittels Homebrew:

brew install ffmpeg

Anschließend kann im Terminal die eigentliche Konvertierung stattfinden:

ffmpeg -i example.mov -vcodec h264 -acodec aac example.mp4

Je nach Größe der Datei ist die Konvertierung nach einigen Minuten abgeschlossen.

Automatischen Wechsel der Airpods zu macOS abschalten

Die AirPods von Apple verbinden sich automatisch mit macOS und iOS-Geräten. Das ist insofern ein praktisches Feature, wenn z. B. vom iPhone zum iPad gewechselt wird. Nervig wird es, wenn der Versuch unternommen wird mit dem iPhone zu telefonieren und zeitgleich am Mac gearbeitet wird. In diesem Fall werden bei einer Audioausgabe, automatisch die Kopfhörer mit dem Mac verbunden, was allerdings unpraktisch ist, wenn dabei ein Telefonat geführt wird.

Die Einstellungen für die Airpods unter macOS

Glücklicherweise kann dieser automatische Handover unter macOS deaktiviert werden. Dazu müssen die Systemeinstellungen aufgerufen werden und dort der Punkt Bluetooth aufgerufen werden. In dem Eintrag für die AirPods findet sich dort nun ein Button mit der Aufschrift Optionen. Wird dieser angeklickt öffnet sich ein Einstellungsdialog, in welchem sich unter anderem der Punkt Mit diesem Mac verbinden findet. Diese Option kann nun auf Wenn zuletzt mit diesem Mac verbunden gestellt werden. Anschließend ist der automatische Handover deaktiviert.