Blog Digitalgesellschaft Verwaltungsbetrieb Textarchiv Textarchiv Walter Kirk (✝) Impressum
LosslessCut - Timestamps aus .CSV-Dateien (Linux)
→ Vorbemerkung
→ Beispiel
→ Vorgehensweise
→ Datendatei erstellen
→ Schnittdatei ertellen
→ Berechnungsmethode
→ Umwandlung
→ Ende manuell ergänzen
→ Automation
→ Import in LosslessCut
→ Ergebnis
→ Zusammenfassung
LosslessCut ist ein übersichtliches Programm zum Bearbeiten von Audio- und Videodateien, das plattform-übergreifend zur Verfügung gestellt wird.
In einigen Fälle liegen Schnittpunkte und Kapiteltitel in der folgenden Form vor:
00:00:00 Kapitel 1 00:24:55 Kapitel 2 00:49:29 Kapitel 3 01:14:05 Kapitel 4 01:38:32 Kapitel 5 02:02:44 Kapitel 6 02:27:26 Kapitel 7 02:51:37 Kapitel 8 03:14:56 Kapitel 9 03:37:49 Kapitel 10 04:01:20 Kapitel 11 04:25:59 Kapitel 12
Das Beispiel gilt für das Hörbuch Theodor Fontane, Meine Kinderjahre, gelesen von Kurt Böwe, ORB 1992. Download der .mp3: hier (bis 2027-08-27, Link wird nicht überprüft).
Die oben aufgeführten Daten werden beispielsweise von der Internetseite kopiert und direkt in eine timestamps.txt gespeichert.
LosslessCut benötigt die Zeitangaben in Sekunden.
Jeder Timestamp HH:MM:SS wird in Gesamtsekunden umgerechnet:
$$\text{Sekunden} = (HH \times 3600) + (MM \times 60) + SS$$
Beispiel: 01:14:05 → (1 × 3600) + (14 × 60) + 5 = 3600 + 840 + 5 = 4445
| Timestamp | Rechnung | Ergebnis |
|---|---|---|
| 00:24:55 | 0 + 1440 + 55 | 1495 |
| 00:49:29 | 0 + 2940 + 29 | 2969 |
| 01:14:05 | 3600 + 840 + 5 | 4445 |
| 01:38:32 | 3600 + 2280 + 32 | 5912 |
| 02:02:44 | 7200 + 120 + 44 | 7364 |
| 02:27:26 | 7200 + 1620 + 26 | 8846 |
| 02:51:37 | 7200 + 3060 + 37 | 10297 |
| 03:14:56 | 10800 + 840 + 56 | 11696 |
| 03:37:49 | 10800 + 2220 + 49 | 13069 |
| 04:01:20 | 14400 + 60 + 20 | 14480 |
| 04:25:59 | 14400 + 1500 + 59 | 15959 |
Das Ende eines Kapitels ist jeweils der Start des nächsten – das letzte Kapitel (Kapitel 12) hat kein Ende, da es bis zum Audio-Ende läuft.
Die so erhaltenen Daten werden in eine schnitt.csv eingetragen nach folgendem Muster:
Start (Sekunden), Ende (Sekunden), Label
Also im Beispiel folgende Daten:
xxxxxxxxxx0,1495,Kapitel 11495,2969,Kapitel 22969,4445,Kapitel 34445,5912,Kapitel 45912,7364,Kapitel 57364,8846,Kapitel 68846,10297,Kapitel 710297,11696,Kapitel 811696,13069,Kapitel 913069,14480,Kapitel 1014480,15959,Kapitel 1115959,,Kapitel 12
Der Kapiteltitel ist frei wählbar.
Das Ende der Audio-/Videodatei ist offen, lässt sich jedoch ermitteln beispielsweise mit Audacious/Audacity: Die Datei hat eine Gesamtspielzeit von 04:29:27, also liegt das Ende bei 17367 Sekunden.
In einer Tabellenkalkulation erfolgt die Berechnung in der Form
| Stunden | 3600 | Minuten | 60 | Sekunden | Gesamt SS |
|---|---|---|---|---|---|
| 4 | 14400 | 49 | 2940 | 27 | 17367 |
4 x 3600 + 49 x 60 + 27
Für Kapitel 12 kann das Ende manuell ergänzt werden:
xxxxxxxxxx15959,17367,Kapitel 12
Die manuelle Ergänzung ist nicht unbedingt erforderlich. In LosslessCut kann das Ende eingestellt werden: siehe Vorgehensweise in LosslessCut für Kapitel 12
Mit dem beigefügten Sript werden die Daten aus der timestamps.txt umgerechnet direkt in eine schnitt.csv ausgegeben.
# mit Hilfe von KI erstellt.
input="${1:-timestamps.txt}"output="${2:-schnitt.csv}"
hms_to_seconds() { local IFS=: read -r h m s <<< "$1" echo $(( h * 3600 + m * 60 + s ))}
# Zeilen einlesenmapfile -t lines < <(grep -v '^$' "$input")
count=${#lines[@]}> "$output"
# Terminal-Headerprintf "%-10s %10s %10s %s\n" "Start" "Ende" "Dauer(s)" "Titel"echo "--------------------------------------------------------------"
for (( i=0; i<count; i++ )); do start=$(hms_to_seconds "${lines[$i]%% *}") label="${lines[$i]#* }"
if (( i + 1 < count )); then end=$(hms_to_seconds "${lines[$((i+1))]%% *}") dauer=$(( end - start )) else end="" dauer="" fi
# Terminal-Ausgabe printf "%-10s %10s %10s %s\n" "${lines[$i]%% *}" "${end:-"—"}" "${dauer:-"—"}" "$label"
# CSV schreiben echo "${start},${end},${label}" >> "$output"done
echo ""echo "✔ Gespeichert: $output" Die Audio-/Videodatei mit dem Programm LosslessCut öffnen und im Menü Datei mit
xxxxxxxxxx/Projekt importieren/Zeit in Sekunden (CSV)
werden die Daten eingefügt.
Vorgehensweise in LosslessCut für Kapitel 12:
Zum Start von Kapitel 12 springen (04:25:59) – per Klick in der Timeline oder Eingabe des Timecodes.
I drücken → setzt den Startpunkt.
Zum Ende des Videos springen – Taste End drücken (oder per Klick ganz ans Ende der Timeline).
O drücken → setzt den Endpunkt.
Damit ist Kapitel 12 bis zum festgelegten Zeitpunkt zur Verarbeitung eingebunden. Diese alternative Vorgehensweise erfüllt flexibel die Möglichkeit, den End-Zeitpunkt nach eigenen Vorstellungen zu ändern, um z.B. Applaus, Werbung, etc. nicht einzubeziehen.
Das Ergebnis kann so aussehen

Für den Import von Schnittpunkten und Kapiteltitel ist die Zusammenarbeit zwischen manueller und Programm-technischer Bearbeitung geeignet, zügig Audio-/Videodateien zu bearbeiten; hier anhand von Schnittpunkten separate Dateien zu erzeugen.
Wolfgang Kirk Veröffentlicht: 2026-08-31, 12:00 Uhr

