Audio Split

AudioSplit

Wav-Dateien

Mit vielen Programmen kann man die Zerlegung großer wav-Dateien bewerkstelligen, aber manche sind auch direkt dafür vorgesehen: AudioWavBreaker!

Mp3-Dateien zerlegen ohne Umwandlung in wav

nach Zeitpunkten

Da mein Lieblingsbearbeitungstool audacity (noch) nicht wirklich perfekt auf die simple Zerlegung großer Aufnahmen in kleine Stückchen ausgelegt ist, bietet sich hierfür die Zusammenarbeit mit Speziellen Programmen an. Zum Beispiel mit mp3splt.

Schritte:

  1. import einer mp3-Datei in audacity;
  2. Hinzufügen eines „Label-Tracks“ und Setzen der Labels für die Schnittstellen (Ctrl-B);
  3. Export des Label-Tracks (Datei ⇒ Labels exportieren);
  4. Umwandlung der Zeitangaben der labels.txt-Datei in das Format für mp3splt;
  5. Zerlegen der mp3-Datei mit mp3splt unter Verwendung der konvertierten Zeitangaben.

Die von audacity exportierte Datei labels.txt sieht bspw. so aus:

0,000000        01
1334,000000     02
2821,000000     03
4487,000000     04
6411,000000     05
8924,000000     06
11630,000000    07
13421,000000    08
15415,000000    09
17419,000000    10
20222,000000    11
22412,000000    12
24248,000000    13
25854,000000    14
28110,000000    15
30305,000000    16
32120,000000    17
33852,000000    18
34834,000000    19
36914,000000    20
37675,000000    21
40569,000000    22
42489,913469    End

Die erste Spalte bezeichnet die Position in Sekunden und Sekundenbruchteilen (oder Frames?), die zweite Spalte – den Namen des Labels, also in meinem Fall die Nummer des Abschnitts. Die letzte Zeile enthält die Zeitposition des Dateiendes, dieses muß mit angegeben werden, da mp3splt Abschnitte entsprechend der angegebenen von-bis-Angaben erzeugt.

mp3split erwartet die Zeitangaben im Format: mmm.ss.xx (Minuten.Sekunden.Hundertstel-Sekunden). Also wird die Datei entsprechend abgewandelt, z.B. mit

̃$ for S in `cat labels.txt | sed 's/,.*$//'`; do \
   echo -n "$(( $S / 60 )).$(( $S % 60 )) " >> chapters.min.sec ; \
   done

Resultat:

̃$ cat chapters.min.sec
0.0 22.14 47.1 74.47 106.51 148.44 193.50 223.41 256.55 290.19 337.2 373.32 404.8 430.54 468.30 505.5 535.20 564.12 580.34 615.14 627.55 676.9 708.9

(Die hierbei erzeugte Datei muß nachbearbeitet werden, denn hierbei wird bspw. aus 61 Sekunden – 1.1, richtig aber wäre natürlich 1.01. Außerdem habe ich hier natürlich die Zehntel- und Hundertstelsekunden komplett vernachlässigt)

Auf diese Datei kann jetzt mp3splt zurückgreifen:

̃$ mp3splt audio-datei.mp3 `cat chapters.min.sec`

Und das Ergebnis ist eine Reihe von neu-angelegten Dateien:

̃$ ls *.mp3
audio-datei_000.00_022.14.mp3  audio-datei_404.08_430.54.mp3
audio-datei_022.14_047.01.mp3  audio-datei_430.54_468.30.mp3
audio-datei_047.01_074.47.mp3  audio-datei_468.30_505.05.mp3
audio-datei_074.47_106.51.mp3  audio-datei_505.05_535.20.mp3
audio-datei_106.51_148.44.mp3  audio-datei_535.20_564.12.mp3
audio-datei_148.44_193.50.mp3  audio-datei_564.12_580.34.mp3
audio-datei_193.50_223.41.mp3  audio-datei_580.34_615.14.mp3
audio-datei_223.41_256.55.mp3  audio-datei_615.14_627.55.mp3
audio-datei_256.55_290.19.mp3  audio-datei_627.55_676.09.mp3
audio-datei_290.19_337.02.mp3  audio-datei_676.09_708.09.mp3
audio-datei_337.02_373.32.mp3  audio-datei.mp3
audio-datei_373.32_404.08.mp3