Posts Tagged “”

Mit den letzten Updates von FFMPEG hat sich das Ausgabeformat der Zeitangabe verändert. Bis Version 0.6 wurde die Laufzeit eines Videos in Sekunden und Millisekunden in der Form 371.19 angegeben. Alle Versionen danach geben die Zeit in Form Stunden:Minuten:Sekunden.Millisekunden aus, was Clipbucket bis inklusive Version 2.5 nicht verarbeiten kann. Dadurch werden die Dateien zwar erfolgreich konvertiert, aber haben die Duration 0. Dadurch, dass in den Logs auch keine korrekte Zeit steht, funktioniert auch die Funktion Repair Video Duration nicht.

Eine Lösung ist das Verändern des Quelltextes von Clipbucket. Dazu editiert man die Datei includes/classes/conversion/ffmpeg.class.php vor der Zeile 360.

$duration    = (float)$args[3];

Folgende Zeilen lösen das Problem:

$args[3] = substr("$args[3]",0,-3);  # millisekunden entfernen
$fix_temp = $args[3];  # variable erstellen und wert uebergeben
$fix_seconds = substr("$fix_temp",-2); # sekunden extrahieren
$fix_temp = substr("$fix_temp",0,-3); # zeichen inklusive : entfernen
$fix_minutes = substr("$fix_temp",-2); # minuten extrahieren
$fix_temp = substr("$fix_temp",0,-3); # zeichen inklusive : entfernen
$fix_hours = substr("$fix_temp",-2); # stunden extrahieren
$fix_temp = $fix_hours*3600 + $fix_minutes*60 + $fix_seconds; # gesamtzeit berechnen
$duration = $fix_temp; # gesamtzeit uebergeben
#$duration    = (float)$args[3]; # alten befehl auskommentieren

Wer die Datei nicht selbst ändern möchte kann folgende Datei herunterladen ffmpeg.class.php.tar und im Verzeichnis includes/classes/conversion entpacken und die alte Datei ersetzen.

Damit funktioniert Clipbucket auch mit der aktuellen FFMPEG Version 0.8.

Comments Keine Kommentare »

217611 Seiten angezeigt, 352 heute
91610 Besuche, 149 heute
FireStats icon Powered by FireStats