Aufteilen einer Audiodatei in Abschnitte einer bestimmten Länge

Aufteilen einer Audiodatei in Abschnitte einer bestimmten Länge

Ich habe mehrere lange Audiodateien (je 80 Minuten; m4a) und möchte sie in 5- oder 10-Minuten-Stücke aufteilen.

Ich sehe viele Fragen zum Aufteilen einer Audiodatei bei längeren Pausen, Tönen usw., kann aber keine zu dieser einfachen Operation finden. Kennt jemand eine einfache Möglichkeit, dies zu tun?

Natürlich ist etwas Automatisches und die Befehlszeile okay – sogar vorzuziehen.

Dank im Voraus!

Antwort1

Mit aktuellem ffmpeg (Download einer statischen Versionvon hier):

ffmpeg -i in.m4a -f segment -segment_time 300 -c copy out%03d.m4a

Dabei wird der Segmentmultiplexer verwendet und die Bitströme werden kopiert. Wenn Ihre Datei Audio- und Videoströme enthält, können Sie den Videostrom mit deaktivieren -vn.


Hier ist ein Einzeiler, Sie brauchen nurRubinUndFFmpegEingerichtet:

ruby -e '(0..4500).step(300) { |x| system "ffmpeg -ss #{x} -i in.m4a -c copy -t 300 out-#{x}.m4a"}'

Führen Sie es einfach im selben Ordner aus, in dem in.m4aes sich befindet. Dadurch wird der Audio-Bitstream kopiert, sodass die Ausführung wahrscheinlich weniger als ein paar Sekunden dauert.

Erklären:

  • 4800 Sekunden ist die Länge der Audiodatei (80 Minuten × 60 Sekunden), also liegt unsere letzte Aufteilung bei 4500 (4800 - 300 Sekunden).
  • Wir gehen von 0 bis 4500 und teilen alle 300 Sekunden (5 Min. × 60 Sek.).
  • FFmpeg startet zur angegebenen Zeit durch-ss
  • Und es wird für die angegebene Zeit kopiert durch-t
  • Es werden mehrere Ausgabedateien mit dem Namen geschrieben out-<x>.mp4, wobei <x>die Startzeit in Sekunden angibt.

Antwort2

Ich habe selbst nach einer Lösung dafür gesucht. Der einfachste Weg, den ich gefunden habe, ist überMP4Box:

mp4box -split 300 infile.m4a

Wobei „300“ die Zeit in Sekunden ist. MP4Box schreibt automatisch nummerierte Ausgabedateien.

(Sie müssen nicht die gesamte große GPAC-Anwendung installieren. Dies sind die Dateien, die Sie aus dem Archiv extrahieren können, damit es funktioniert: js.dll; libeay32.dll; libgpac.dll; MP4Box.exe; ssleay32.dll)

Antwort3

Es ist schon eine Weile her, seit diese Frage gestellt wurde, aber nachdem ich mit Ruby und ffmpeg herumgespielt hatte, kam ich zu dem Schluss, dass es dafür unter Windows einen einfacheren Weg geben muss, und ich fand, dass es einen gibt.

Laden Sie Audacity herunter und installieren Sie es

Erstellen Sie an einem leicht zugänglichen Ort eine Textdatei und fügen Sie die folgende Zeichenfolge ein: (300-Sekunden-Intervalle, z. B. 5 Minuten, 10 Minuten wären 600 Intervalle usw.)

0       300  
300     600  
600     900  
900     1200  
1200    1500  
1500    1800  
1800    2100  
2100    2400  
2400    2700  
2700    3000  
3000    3300  
3300    3600  
3600    3900  
3900    4200  
4200    4500  
4500    4800  
4800    5100  
5100    5400  
5400    5700  
5700    6000  
6000    6300  
6300    6600  
6600    6900  
6900    7200  
7200    7500  
7500    7800  
7800    8100  
8100    8400  
8400    8700  
8700    9000  
9000    9300  
9300    9600  
9600    9900  
9900    10200  
10200   10500  
10500   10800  
10800   11100  
11100   11400  
11400   11700  
11700   12000  
12000   12300  
12300   12600  
12600   12900  
12900   13200  
13200   13500  
13500   13800  
13800   14100  
14100   14400  
14400   14700  
14700   15000  

Stellen Sie einfach sicher, dass die Anzahl der Intervalle größer ist als die Gesamtlänge Ihrer Audiodateien. Ich habe diese Datei erstellt, die über drei Stunden läuft, was für meine Zwecke lang genug ist. Fügen Sie je nach Bedarf weitere hinzu.

Importieren Sie die Audiodatei in Audacity und nehmen Sie die gewünschten Anpassungen und Änderungen vor. Klicken Sie dann auf Datei>Labels>Labels importieren.

Wählen Sie Ihre Textdatei aus, wählen Sie dann gleichzeitig die Beschriftungsspur und die Audiospur aus und klicken Sie auf Datei > Mehrere exportieren.

Ändern Sie den Dateityp, in den Sie exportieren möchten, passen Sie die Einstellungen an und wählen Sie dann den Zielordner aus.

Ich ändere das Nummerierungsmuster immer in „Nummerierung nach Dateinamenpräfix“ und gebe den gewünschten Dateinamen in das Feld ein. Das Programm fügt die Nummern hinzu. Ich klicke auf „Exportieren“ und voilà!

Antwort4

MP4Box funktioniert perfekt. Es ist immer cool, wenn man die Dinge vom Terminal aus erledigen kann. Schneller geht das.

Dies ist die Download-Seite: https://gpac.wp.imt.fr/downloads/gpac-nightly-builds/ Sie installieren das Programm und können dann vom Terminal aus arbeiten. Mehr ist nicht nötig.

Getestet, Befehl dfkt sagte, funktioniert perfekt: mp4box -split 59 infile.m4a

In meinem Fall wollte ich es in m4a <1 Minute aufteilen, um die Spracherkennung von Google zu vereinfachen.

Audacity kann ganz gut funktionieren, aber in meinem Fall arbeite ich lieber mit Befehlen als mit einer grafischen Benutzeroberfläche. Beste Lösung also für mp4box. Ich gebe keine neuen Informationen, der Verdienst liegt bei dfkt (danke, Mann). Ich bestätige nur, dass es eine großartige Lösung ist.

verwandte Informationen