[[Vorlage(Getestet, bionic )]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Packprogramme: Archive entpacken] [:Programme kompilieren: Pakete aus dem Quellcode erstellen] [:Terminal: Ein Terminal öffnen] [:sudo:Root-Rechte] }}} [[Inhaltsverzeichnis(1)]] [[Bild(Wiki/Icons/terminal.png, 48, align=left)]] Der [https://vorzox.wix.com/pacpl/ Perl Audio Converter] {en} ist ein mächtiges Werkzeug zur Umwandlung von Audiodateien, ebenso verwendbar zur Extraktion von Audiodaten aus Videodateiformaten. Unterstützt werden eine Vielzahl auch recht „exotischer“ Formate. Die Bedienung erfolgt über die Kommandozeile, unter [:KDE:] kann der Perl Audio Converter in [:Konqueror:] und [:Dolphin:] eingebunden werden. Daneben gibt es Anbindungen für die Dateimanager [:Nautilus:], [:Nemo:] und [:Thunar:]. Für einige Formate kann ein vorhandener Tag ausgelesen und für das neue Format erstellt werden. Außerdem können mit dem Programm CDs gerippt und in den unterstützten Formaten abgespeichert werden. Der Artikel [:Audiodateien_umwandeln:] beschreibt eine Vielzahl von weiteren Möglichkeiten zur Konvertierung. Der Perl Audio Converter erzielt allerdings Spitzenwerte, was den Umfang an unterstützten Formaten angeht. = Installation = Folgende Pakete müssen installiert[1] werden: {{{#!vorlage Paketinstallation pacpl, universe }}} == Manuelle Installation == Um das Programm in aktueller Version 6.1.0 (Stand April 2019) aus dem Quellcode zu erstellen, wird das Archiv von [sourceforge:pacpl/files/:SourceForge.net] {dl} heruntergeladen und entpackt[2]. Dann führt man im Terminal im Verzeichnis '''pacpl.6.x.x/extra''' das Skript '''mod-install-debian.sh''' aus, um fehlende Module, die auch durch `sudo apt-get build-dep pacpl` nicht installiert wurden, zu installieren, und kompiliert[3] dann das Programm. Leider bricht allerdings unter [:18.04:] die Kompilierung mit einem Fehler ab. Es lässt sich aber das Paket aus [:19.04:Ubuntu 19.04] in Version 6.1.0 problemlos auch unter 18.04 installieren (siehe [packages:pacpl:].) [[Vorlage(Fremd, Software)]] = Bedienung = Der Grundbefehl zur Konvertierung im Terminal [4] lautet: {{{#!vorlage Befehl pacpl --to FORMAT [OPTIONEN] DATEIEN_ODER_ORDNER }}} == Mögliche Formate == ##Unterstützt werden die Formate AAC, AC3, AIFF, APE, AU, AVR, BONK, CAF, CDR, FAP, FLA, FLAC, IRCAM, LA, LPAC, M4A, MAT, MAT4, MAT5, MMF, MP2, MP3, MP4, MPC, MPP, NIST, OFR, OFS, OGG, PAC, PAF, PVF, RA, RAM, RAW, SD2, SF, SHN, SMP, SND, SPX, TTA, VOC, W64, WAV, WMA, und WV. Ebenso können Audiodateien aus folgenden Videoformaten umgewandelt werden: RM, RV, ASF, DivX, MPG, MKV, MPEG, AVI, MOV, OGM, QT, VCD, SVCD, M4V, NSV, NUV, PSP, SMK, VOB, FLV, und WMV. Die De- und Enkodierungs-Möglichkeiten und Informationen zum Auslesen und Erstellen von Tags lassen sich mit `pacpl --formats` aufrufen. Die folgende Tabelle zeigt auf, welcher Formate (mit den gebräuchlichen Datei-Endungen) verarbeitbar sind, welche En- und Dekodierer dafür zum Einsatz kommen und für welche Formate das Auslesen und Erstellen von Tags möglich ist: {{{ EXT E D ENCODER DECODER TAG-READ TAG-WRITE ---------------------------------------------------------------------- aac Y Y faac faad N N ac3 Y Y ffmpeg mplayer N N aif Y Y sox sox N N aiff Y Y sox sox N N ape Y Y mac mac N N asf N Y mplayer N N au Y Y sox sox N N avi N Y mplayer N N avr Y Y sox sox N N bonk Y Y bonk bonk N N caf Y Y sndfile-convert sndfile-convert N N cdr Y Y sox sox N N divx N Y mplayer N N fap Y Y sndfile-convert sndfile-convert N N fla Y Y flac flac Y Y flac Y Y flac flac Y Y flv N Y mplayer N N ircam Y Y sndfile-convert sndfile-convert N N la Y Y la la N N lpac Y Y lpac lpac N N m4a Y Y faac faad Y Y m4b Y Y faac faad N Y m4v N Y mplayer N N mat Y Y sndfile-convert sndfile-convert N N mat4 Y Y sndfile-convert sndfile-convert N N mat5 Y Y sndfile-convert sndfile-convert N N mkv N Y mplayer N N mmf Y Y ffmpeg ffmpeg N N mov N Y mplayer N N mp2 Y Y ffmpeg ffmpeg N N mp3 Y Y twolame lame Y Y mp4 Y Y faac faad Y Y mpc Y Y mppenc mppdec Y Y mpeg N Y mplayer N N mpg N Y mplayer N N mpp Y Y mppenc mppdec Y Y nist Y Y sndfile-convert sndfile-convert N N nsv N Y mplayer N N nuv N Y mplayer N N ofr Y Y ofr ofr N N ofs Y Y ofs ofs N N ogg Y Y oggenc oggdec Y Y ogm N Y mplayer N N pac Y Y lpac lpac N N paf Y Y sndfile-convert sndfile-convert N N psp N Y mplayer N N pvf Y Y sndfile-convert sndfile-convert N N qt N Y mplayer N N ra Y Y ffmpeg ffmpeg N N ram N Y ffmpeg N N raw Y Y sox sox N N rm Y Y ffmpeg mplayer N N rv N Y mplayer N N sd2 Y Y sndfile-convert sndfile-convert N N sf Y Y sndfile-convert sndfile-convert N N shn Y Y shorten shorten N N smk N Y mplayer N N smp Y Y sox sox N N snd Y Y sox sox N N spx Y Y speexenc speexdec Y Y svcd N Y mplayer N N tta Y Y ttaenc ffmpeg N N vcd N Y mplayer N N vob N Y mplayer N N voc Y Y sox sox N N w64 Y Y sndfile-convert sndfile-convert N N wav Y Y mv cp N N wma Y Y ffmpeg ffmpeg Y N wmv N Y mplayer N N wv Y Y wavpack wvunpack Y Y }}} == Optionen == ||<-3 rowclass="titel"> Perl Audio Converter Optionen (Auswahl) || || Option || Langform || Funktion || || `-t FORMAT` || `--to FORMAT` || gewünschtes Ausgabeformat (gleichzeitig neue Dateiendung) || ||`-r` || `--recursive` || rekursive Umwandlung der Dateien auch in Unterverzeichnissen || || `-p` || `--preserve` || existierende Ordnerstruktur wird auch für zu erstellende Ordner verwendet || ||`-o FORMAT` || `--only FORMAT` || nur das angegebene Format wird umgewandelt || || `-k` || `--keep` || bereits im gewünschten Format vorliegende Dateien werden übersprungen bzw. direkt verschoben || || ||`--dryrun` || Testdurchlauf ohne tatsächliche Veränderung an den Dateien, sehr sinnvoll gerade bei potentiell gefährlichen Optionen! || || || `--normalize` || Standard-Normalisierung der Audio-Dateien || || ||`--nopts OPTION` || Normalisierung unter Angabe von Optionen || || || `--outdir` || Ausgabeverzeichnis, in das die Dateien geschrieben/verschoben werden || || ||`--outfile NAME` || Ausgabename; Standard ist Beibehaltung des alten Namens mit neuer Dateiendung || Zu den einzelnen Enkodern lassen sich (je nach gewähltem Format) spezielle Einstellungen zur Qualität, Bitrate, Anzahl der Kanäle, Frequenz etc. Die Standardeinstellungen, die pacpl ohne weitere Angaben einsetzt, finden sich in der Datei '''/etc/pacpl/pacpl.conf''', dort können die Angaben auch nach eigenem Bedarf geändert werden (Root-Rechte[5] nötig!). Eine komplette Übersicht über die sehr umfangreichen Optionen liefert die [:man:Manpage] des Programms. = Beispiel = Der Aufruf {{{#!vorlage Befehl pacpl --to ogg -r -p /home/Musik --outdir /home/oggs }}} führt dazu, dass die vorhandenen Audiodateien (alle unterstützten Formate werden konvertiert!) im Verzeichnis '''/home/Musik''' als '''.ogg'''-Dateien in das Verzeichnis '''/home/oggs''' geschrieben werden. Dabei würden z.B. die Daten aus '''/home/Musik/Rock/Krautrock''' als '''.ogg'''-Dateien in '''/home/oggs/Rock/Krautrock''' abgelegt werden, da die Konvertierung rekursiv und unter Erhalt der Original-Verzeichnisstruktur erfolgt. == Kommadozeilen-CD-Ripper == CDs lassen sich nach folgendem Muster rippen: {{{#!vorlage Befehl pacpl --rip all --to flac pacpl --rip 1,3,9,15 --to flac }}} Der erste Befehl rippt alle Tracks der eingelegten CD ins '''.flac'''-Format, der zweite die Tracks 1, 3, 9 und 15. ||<-2 rowclass="titel"> CD-Ripper-Optionen || || Option || Funktion || || `--rip OPTION` || alle (`all`) oder die durch Kommata getrennten Titel der CD rippen (z.B. "`1,3,9,15`")|| || `--nocddb` || keine [wikipedia:Compact_Disc_Database:CDDB]-Abfrage zum Erstellen der Tags (Abfrage ist Standard) || || `--noinput` || interaktiven Dialog zur CDDB-Abfrage unterdrücken (Dialog ist Standard)|| || `--device NAME` || anderes Gerät als '''/dev/cdrom''' für das CD-Laufwerk angeben || || `--cdinfo` || CDDB-Infos zur momentan eingelegten CD anzeigen || || `--nscheme STRING` || Angaben zur Titelausgabe festlegen. Möglich sind folgende Parameter, die statt des Standards `"%ar-%ti"` ('''Künstler - Titel.''') verwendet werden können: || || `%ar` || Künstler || || `%ti` || Songtitel || || `%tr` || Tracknummer || || `%yr` || Erscheinungsjahr|| || `%ab` || Albenname || Beispiel: {{{#!vorlage Befehl pacpl --rip all --to ogg --nscheme="%ar-%ab-(%tr)-%ti" }}} führt zur Ausgabe aller CD-Titel nach dem Muster '''Künstler-Album-(Tracknummer)-Titel.ogg'''. Ein direktes Ablege in der Form '''KÜNSTLER/ALBUM/NR - TITEL''' ist nicht möglich, auch die `--outdir`-Option ist für den Ripper nicht anwendbar. == Verwendung aus Amarok, Konquerer und Dolphin heraus == Unter den genannten Programmen lässt sich der Perl Audio Converter, ähnlich wie [:Audiodateien_umwandeln#audio-convert:audio convert] für [:Nautilus:], aus dem Kontextmenü heraus nutzen. Ein [[Vorlage(Tasten, rmt)]] in der gewünschten Datei öffnet das Kontextmenü (es können auch mehrere Dateien markiert werden), in dem dann der Eintrag für das Programm gewählt werden kann. Dort werden dann die gewünschten Angaben gemacht, und die Konvertierung wird umgesetzt. Die in den offiziellen Ubuntu-Quellen vorliegende Version 4.0.5 ist für [:KDE:KDE4] optimiert (allerdings erfolgt die Implementierung für [:Amarok_2:] erst in einer der nächsten Veröffentlichungen). == Andere Dateimanager == Informationen, wie man den Perl Audio Converter in andere Dateimanager einbindet, sind auf [sourceforge:pacpl/files/pacpl/Plugins:SourceForge] {en} zu finden. = Problembehebung = Probleme können auftauchen, wenn in den Dateinamen Sonderzeichen auftauchen. Insbesondere Kommata führen ggf. dazu, dass die Konvertierung mit einer Fehlermeldung wie >"Kodierung ist fehlgeschlagen mit dem Status: 256" abbricht. In so einem Falle hilft es ggf. nur, das entsprechende Zeichen aus dem Dateinamen zu entfernen. Die gleiche Fehlermeldung bekommt man allerdings auch, wenn man den entsprechenden Encoder nicht installiert hat. Also: will man beispielsweise '''WAV''' nach '''MP3''' umwandeln, braucht man den Encoder [:LAME:] bzw. das Paket '''lame'''. Um herauszufinden, welche Pakete man installieren muss, hilft die Liste der [#Moegliche-Formate Formate]. Dort ist für das entsprechende Format ein Encoder/Decoder aufgeführt. Nun muss man nur noch das richtige Paket finden, welches diesen Encoder/Decoder enthält und dies dann installieren. Diese Meldung kann allerdings auch auf eine defekte Ausgangsdatei hinweisen. Wenn also keine Sonderzeichen vorhanden, und alle benötigten Codecs installiert sind, könnte das Grund für die Fehlermeldung sein. == Option --normalize schlägt fehl == Ähnlich wie bei [:K3b#normalize-audio-wird-nicht-gefunden:] gibt es Probleme mit der Funktion `--normalize`. Das erwartete Programm heißt unter Ubuntu `normalize-audio` aus dem gleichnamigen Paket. Die K3b-Lösung funktioniert auch hier, alternativ kann eine symbolische Verknüpfung mit dem Befehl {{{#!vorlage Befehl sudo ln -s `which normalize-audio` /usr/local/bin/normalize }}} erstellt werden. [[Bild(./pacpl_logo.png, 48, align=right)]] = Links = * [https://vorzox.wix.com/pacpl/ Projektseite] {en} * [sourceforge:pacpl:] {en} auf SourceForge.net * [:Audiodateien_umwandeln:] {Übersicht} Übersichtsartikel #tag: Multimedia, Audio