Wie man FLAC-Dateien mit flac2all in Linux transkodiert

flac2all ist ein einfaches Dienstprogramm, das es Ihnen ermöglicht, hochwertige FLAC-Dateien in fast jedes moderne Audioformat zu konvertieren. Im Gegensatz zu ffmpeg automatisiert dieses Dienstprogramm den Prozess der Sortierung, Tagging und Kodierung Ihrer FLAC-Audiodateien. flac2all ist einfach zu installieren und zu verwenden. Erfahren Sie, wie Sie dieses äußerst vielseitige Programm nutzen können, das als Frontend für all Ihre Audio-Transkodierungsbedürfnisse fungieren kann.
Inhaltsverzeichnis
- Warum flac2all verwenden
- flac2all installieren
- flac2all zur Transkodierung von Audio verwenden
- Transkodierung in mehrere Formate
- Erstellen von benutzerdefinierten Transkodierungsjobs
- Erstellen eines flac2all-Transkodierungsclusters
- Einrichten einer Netzwerkfreigabe
- Starten des flac2all-Clusters
- Häufig gestellte Fragen
Auch lesen: 4 Möglichkeiten, die Akkulaufzeit Ihres Linux-Laptops zu verlängern
Warum flac2all verwenden
Im Kern ist flac2all sowohl ein Wrapper als auch ein Planungsprogramm. Es nimmt eine Liste von FLAC-Dateien und verwendet verschiedene Codecs, um den Transkodierungsprozess zu warten und zu verwalten.
Ein Vorteil dieses Ansatzes ist, dass flac2all nicht von einem einzelnen Encoder abhängt, was bedeutet, dass Sie das Programm leicht an jedes neue Format anpassen können, das Sie verwenden möchten. Zum Beispiel können Sie den benutzerdefinierten Fraunhofer FDK AAC-Encoder zusammen mit dem normalen AAC installieren.

Schließlich bewahrt flac2all auch die Ordnerstruktur Ihrer FLAC-Sammlung, sodass Sie das Verzeichnis Ihres Archivs bei der Verwendung dieses Programms nicht neu erstellen müssen. Diese Funktionen machen flac2all zu einem praktischen Dienstprogramm, wenn Sie eine schnelle und einfache Möglichkeit suchen, Ihre FLAC-Sammlung in ein anderes Format zu rekreieren.
Auch lesen: Die Unterschiede zwischen Su, Sudo Su, Sudo -s und Sudo -i
flac2all installieren
Bevor Sie flac2all installieren, ist es wichtig, alle Abhängigkeiten zu beschaffen, um sicherzustellen, dass es nach der Installation keine Konflikte gibt:
sudo apt install python3 flac python3-pip python3-zmq python3-notcurses lame opus-tools
Als Nächstes müssen Sie flac2all über pip herunterladen, einen Python-spezifischen Paketmanager, den Sie verwenden können, um zusätzliche Software zu installieren. Führen Sie den folgenden Befehl aus, um pip zu verwenden:
pip3 install --user flac2allDies wird flac2all im Verzeichnis “.local” des aktuellen Benutzers installieren. Wenn Sie sich also auf einem System mit mehreren Benutzern befinden, können andere Benutzer das Programm nicht ausführen.

Um flac2all auszuführen, fügen Sie das Verzeichnis “.local” zur PATH-Variable Ihres Geräts hinzu, indem Sie die folgende Codezeile zu Ihrer “.bash_profile”-Datei hinzufügen:
PATH=$PATH:/home/$USER/.local/bin/
export PATHLetztlich müssen Sie entweder Ihre aktuelle Sitzung neu starten oder sich abmelden, um die neuen Einstellungen anzuwenden, nachdem Sie flac2all -h ausführen können, um zu bestätigen, dass Sie das Programm ordnungsgemäß installiert haben.

flac2all zur Transkodierung von Audio verwenden
Der Entwickler von flac2all hat das Programm so einfach wie möglich gestaltet. Beispielsweise sieht die Syntax für die Transkodierung eines FLAC-Verzeichnisses in ein einzelnes Format so aus:
flac2all mp3 -o ./output ./royalty-free- Das erste Element nach „flac2all“ hebt das Format hervor, in das Sie transkodieren möchten. Ich konvertiere in diesem Beispiel meinen FLAC-Ordner in MP3.
- Das zweite Element enthält Optionen für den aktuellen Transkodierungsjob. Hier sagt die Option
-oflac2all, dass alle MP3-Dateien im Ordner „output“ abgelegt werden sollen. - Schließlich gibt das dritte Element den Quellordner für Ihre FLAC-Dateien an. In meinem Fall ist es mein „royalty-free“-Ordner.

Auch lesen: So passen Sie die Größe von Bildern im Linux-Terminal an und optimieren sie
Transkodierung in mehrere Formate
Sie können flac2all auch verwenden, um Dateien parallel in mehrere Formate zu transkodieren, was nützlich sein kann, wenn Sie Ihr Archiv an Spieler mit unterschiedlichen Formatanforderungen übertragen möchten.
Zum Beispiel kann ich den folgenden Befehl ausführen, um meinen „royalty-free“-Ordner sowohl in MP3 als auch in Opus zu transkodieren:
flac2all mp3,opus -o ./output ./royalty-freeBeachten Sie, dass eine Transkodierung in mehrere Formate länger dauert als eine Transkodierung in ein einzelnes Format, da flac2all jede Datei in Ihrem Verzeichnis für jedes von Ihnen angegebene Format kodiert. In meinem Fall wird die Transkodierung von MP3 und AAC doppelt so lange dauern wie nur die Transkodierung von MP3.

Erstellen von benutzerdefinierten Transkodierungsjobs
Neben der Erstellung einfacher Transkodierungen ist es möglich, die Funktionsweise der Encoder mit flac2all zu ändern, was besonders hilfreich ist, wenn Sie möchten, dass die Kopie Ihres Archivs eine bestimmte Audioqualität hat. Sehen Sie sich zum Beispiel den folgenden Befehl an.
flac2all mp3 --lame-options='b 320' -o ./output ./royalty-freeDieser Befehl sagt dem Programm, den LAME MP3-Encoder zu verwenden, um meinen „royalty-free“-Ordner mit einer konstanten Bitrate von 320k zu transkodieren.

Sie können auch benutzerdefinierte Jobs für Multi-Format-Transkodierungen erstellen. Zum Beispiel sagt der folgende Befehl flac2all, eine benutzerdefinierte Transkodierung mit MP3 und Opus zu erstellen:
flac2all mp3,opus --opus-options='downmix-mono' --lame-options='b 320' -o ./output ./royalty-free
Erstellen eines flac2all-Transkodierungsclusters
Während Sie flac2all auf einem einzigen Computer verwenden können, ist es auch möglich, das Programm über mehrere Systeme zu verteilen – eine praktische Lösung, um den Transkodierungsprozess zu beschleunigen. Stellen Sie sicher, dass Sie die folgenden Ressourcen bereit haben:
- Zwei oder mehr Maschinen, die direkt miteinander verbunden werden können
- Ein NAS, auf das Sie von allen Maschinen zugreifen können, da der Masterprozess von flac2all nur seinen Arbeitsclients anweist, vorhandene Daten zu verarbeiten
- Eine zuverlässige Netzwerkverbindung zwischen dem Masterprozess und seinen Arbeitsclients
Wenn Sie diese Faktoren kennen, konzentriert sich dieses Tutorial auf die Erstellung eines kleinen flac2all-Clusters zwischen zwei Ubuntu 22.04 Maschinen.
Auch lesen: So richten Sie SSH in Linux ein und verwenden es
Einrichten einer Netzwerkfreigabe
Erstellen Sie eine Netzwerkfreigabe, um zu beginnen. Ich werde dafür SSHFS verwenden, da es einfach zu bedienen ist und auf fast allen Linux-Distributionen verfügbar ist.
Zunächst installieren Sie SSHFS auf allen Maschinen, die Sie verwenden möchten:
sudo apt install ssh sshfs
Als Nächstes erstellen Sie den Ordner, in den SSHFS eingehängt wird. Ich werde einen „royalty-free“-Ordner im Home-Verzeichnis meiner Arbeitsmaschine erstellen:
mkdir /home/$USER/royalty-free
Jetzt den „royalty-free“-Ordner auf jeder Ihrer Arbeitsmaschinen mit dem folgenden Befehl einhängen:
sshfs -o allow_other,default_permissions [email protected]:/home/$USER/royalty-free /home/$USER/royalty-free
Starten des flac2all-Clusters
Sie können jetzt den Transkodierungscluster starten, indem Sie den Masterprozess ausführen und sowohl die -m als auch die -C-Flags zu flac2all hinzufügen.
Führen Sie beispielsweise diesen Befehl auf Ihrer Hauptmaschine aus, um einen Masterprozess zu erstellen:
flac2all lame,aac -m -C --lame-options='b 320' -o /home/$USER/output /home/$USER/royalty-free
Im Gegensatz zu regulärem flac2all startet das Erstellen eines Masterprozesses nicht die Transkodierungssitzung. Um Dateien zu transkodieren, müssen Sie auch die Arbeitsmaschinen mit dem Masterprozess verbinden, indem Sie den folgenden Befehl auf Ihren Arbeitsmaschinen ausführen:
flac2all_worker 192.168.68.10Sobald dies erledigt ist, erstellt der Arbeitsclient einen headless-Prozess, der sich mit dem Masterprogramm verbindet. Anschließend beginnt flac2all sofort, sobald es eine Handvoll Arbeitskräfte im Standby-Modus findet.

Auch lesen: So laden Sie DaVinci Resolve in Linux herunter und konfigurieren es
Häufig gestellte Fragen
flac2all beendet sich nicht, nachdem es meine Audiodateien verarbeitet hat. Wie behebe ich dieses Problem?
Dies geschieht immer dann, wenn es einen Konflikt zwischen flac2all und seinen Python-Abhängigkeiten gibt. Beheben Sie es, indem Sie Ihre Installation aktualisieren, um Änderungen zwischen flac2all und seinen Abhängigkeiten widerzuspiegeln. Führen Sie pip install --user --upgrade flac2all aus, um flac2all zu aktualisieren.
flac2all gibt einen „FileNotFound“-Fehler aus. Ist meine Installation fehlerhaft?
Nein! Dieses Problem tritt auf, wenn das Programm den Encoder für das Format, in das Sie transkodieren möchten, nicht erkennt.
Wenn Sie beispielsweise flac2all opus […] ohne den Opus-Encoder ausführen, erhalten Sie einen „FileNotFound“-Fehler. Sie können das Problem beheben, indem Sie ffmpeg installieren. Dies ist ein Alleskönner-Programm, das auch die meisten der gängigen Audio-Encoder installiert. Führen Sie sudo apt install ffmpeg aus, um ffmpeg zu Ihrem System hinzuzufügen.
Der Arbeitsprozess konnte keine Medien in meinem SSHFS-Ordner finden. Ist flac2all fehlerhaft?
Nein. Dies geschieht normalerweise aufgrund eines Verzeichnisfehlers zwischen dem Masterprozess und seinen Arbeitskräften. Um sicherzustellen, dass der Transkodierungscluster funktioniert, überprüfen Sie, ob die Dateipfade zwischen jeder Maschine gleich sind, indem Sie pwd sowohl in Ihrem Medienordner als auch im Wurzelverzeichnis Ihres SSHFS-Mounts ausführen.
Bildnachweis: Unsplash und Wikimedia Commons Alle Änderungen und Screenshots von Ramces Red