Wie es hier vorgeschlagen wurde , verwende ich cat
Befehl, um einige .mp3 Akten in eine .mp3 Akte zu verketten.
Stellen Sie sich vor, ich habe folgende .mp3-Dateien im aktuellen Ordner:
001001.mp3 001002.mp3 001003.mp3 001004.mp3 001005.mp3
oder so:
096001.mp3 096002.mp3 096003.mp3 096004.mp3
Ich muss diese .mp3-Dateien in aufsteigender Reihenfolge verketten, dh 001001.mp3+001002.mp3+001003.mp3+etc.
Um diese .mp3-Dateien zu einer zusammenzufügen, führe ich folgenden Befehl im aktuellen Ordner aus:
cat *.mp3 > final.mp3
Ich habe die endgültige .mp3-Datei getestet und es ist das, was ich erwartet habe, aber ich muss sicher sein , dass der obige Befehl die Dateien in aufsteigender Reihenfolge auswählt .
Kann ich sicher sein, dass der obige Befehl Dateien immer in aufsteigender Reihenfolge verkettet?
Vielen Dank, Sir !
quelle
find . -maxdepth 1 -iname '*.mp3' -print0 | sort -z | xargs -0 mp3wrap output.mp3
*.mp3
sollte ausreichen (und funktioniert mit Leerzeichen).$ brew install mp3wrap
.*.mp3
bleibt die alphabetische Reihenfolge garantiert erhalten. Wenn Ihre Dateien,, heißen09.mp3
,10.mp3
ist11.mp3
das wahrscheinlich das, was Sie wollen. Wenn Ihre Dateien den Namen,, haben9.mp3
,10.mp3
ist11.mp3
das wahrscheinlich nicht das, was Sie wollen, aber Sie können es tun`ls *.mp3 | sort -n`
.mp3wrap scheint eine anständige Lösung zu sein, aber als ich die resultierende Datei abgespielt habe, war der Zeitstempel nicht korrekt. Es scheint, als würde mp3wrap am besten verwendet, wenn Sie mp3s zu einer Datei zusammenfügen, von der Sie wissen, dass Sie sie später teilen möchten.
Ich wollte einfach nur einige MP3s dauerhaft miteinander verketten. Am Ende habe ich ffmpeg verwendet, um die Dateien zu verketten:
Installieren Sie zuerst ffmpeg
Ubuntu 15.04+
Ubuntu 14.10 und niedriger
Gehen Sie zu http://ffmpeg.org/download.html , laden Sie einen der statischen Builds herunter, entpacken Sie ihn und kopieren Sie ihn nach / usr / local / bin
ffmpeg -i "concat:file1.mp3|file2.mp3" -acodec copy output.mp3
Weitere Informationen: https://trac.ffmpeg.org/wiki/Concatenate#protocol
https://superuser.com/a/314245
quelle
ffmpeg
fehlt,avconv
ersetzt es aber: askubuntu.com/questions/432542/…output.mp3
amp3val
auszuführen, werden alle Arten von Fehlern angezeigt, die Wiedergabeprobleme in Chrome64 + verursachen (siehe bugs.chromium.org/p/chromium/issues/detail?id=794782 und bugs.chromium.org/p/chromium/). Fragen / Detail? id = 806601 # c10 )Wie bereits vorgeschlagen,
mp3wrap
ist eine gute Lösung. Es funktioniert jedoch möglicherweise nicht immer. Soweit ich weiß, wirdmp3wrap
davon ausgegangen, dass alle Eingabedateien die gleichen Eigenschaften wie VBR vs CBR, Bitrate usw. haben. Wenn diese Annahme nicht erfüllt ist, ist es wahrscheinlich, dass es fehlschlägt. In diesem Fall wäre die einzige Lösung, alle mp3-Dateien in ein Rohformat wie zu dekodieren.wav
, sie mit einem Programm wie zu verkettensox
und durch erneutes Kodieren in mp3 zu beenden.quelle
Es wird alphabetisch nach einzelnen Zeichen sortiert. Das bedeutet, dass "01" vor "1" steht, da nichts einen niedrigeren Wert als eins hat.
Hier ist ein Beispiel. Ich habe ein Verzeichnis mit den Dateien 1, 2, 3, 04, 05 und 06. Es handelt sich um Textdateien mit eigenen Dateinamen:
Also ja , das wird es; Sie müssen jedoch sicherstellen, dass alle Ihre Dateien ordnungsgemäß gepolstert sind.
Mit dieser raffinierten Zeile von Bash-Skripten können Sie die Dateinamen visuell vergleichen und so Fehler leicht erkennen:
Die Ausgabe sieht folgendermaßen aus:
Wenn dies nicht der Fall ist, müssen Sie die Dateinamen auffüllen: Bash-Skript zum Auffüllen von Dateinamen in StackOverflow erklärt, wie dies gemacht wird.
Bearbeiten. Stimmen Sie für Olis Antwort, es ist viel besser. : P
Ich lasse meins, weil es etwas hinzufügt, aber du solltest seine Lösung verwenden,
Denken Sie daran, dass
sort
die Sortierung weiterhin auf die oben beschriebene Weise erfolgt. Sie müssen die Dateinamen auch dann auffüllen, wenn sie nicht gleich lang sind.quelle
Die meisten Leute schlagen vor
mp3wrap
, aber es hat Nachteile: Die generierte Datei meldet bei einigen Playern nicht ihre volle Länge, und dann können Sie nicht über diesen Punkt hinaus suchen.mp3cat
erledigt den Job schnell und gut, soweit ich das beurteilen kann. Es kann unter http://mulholland.xyz/dev/mp3cat/ heruntergeladen und wie folgt verwendet werden:Eine andere Möglichkeit wäre
sox
aber es scheint sehr langsam zu sein (möglicherweise dekodiert und kodiert es das Audio neu?)
quelle
Ich fand, dass der Online-Dienst Audio-Joiner sehr gut funktioniert und den korrekten Zeitstempel beibehält (im Gegensatz zu mp3wrap).
quelle
Vielleicht möchten Sie versuchen , ein spezielles Audio - Editing - Programm (wie Audacity )
quelle
Ich liebe den Kommentar von bmaupin , aber er könnte natürlich (Versions-) Zahlen erzeugen, indem er verwendet
sort -V
:und Sie müssen nicht mit Sonderzeichen wie
' " () [] {}
im Dateinamen umgehen .quelle