2.6.0: Navigation bei h264-Dateien unmöglich

Started by habkeinen, September 26, 2012, 09:22:00 AM

Previous topic - Next topic

habkeinen

Hallo zusammen,

beim Ausprobieren der Version 2.6.0 (Win32, Kompilieren unter openSuse 12.1 ist wohl noch niemandem gelungen...;)) ist mir aufgefallen, dass sich h264-Dateien praktisch nicht bearbeiten lassen, da die Navigation nur in Echtzeit über die ->- und <--Tasten funktioniert.
Der Sprung zum nächsten/letzten I-Frame gibt eine Fehlermeldung ("Cannot go to next/previous keyframe").
Ein Verschieben mit Hilfe des Schiebereglers ist unmöglich, da jede Bewegung daran auf Position 0::00:00 zurücksetzt.
Nach einem ersten Schnitt reagiert die Anwendung grundsätzlich mit mehreren Sekunden Verzögerung.

Datei ist H264, 720x576, PAL 16:9; mp3, 192 kbps.

Eigentlich reicht mir Version 2.5.6 völlig aus, nur ein automatischer Schnitt mit Hilfe von Cutlists für h264-Material wäre sehr nützlich, das funktioniert allerdings mit 2.6.0 bisher überhaupt nicht.

Jan Gruuthuse

#1
Bitte laden Sie Beispiel-Video rund 20 MB oder 5 Sekunden. 2.5.6 ist Frame basiert. 2.6 ist zeit basiert, orientiert sich mehr an HD TV und so weiter.
Please upload sample video around 20 MB or 5 seconds. 2.5.6 is frame based, 2.6 is time based, more orientated to HD TV an so on.
Haben eine Probe 207 MB Download hier  720p test in 7zip-Format
Have a sample 207 MB download here 720p test in 7zip format

styrol

Vermutlich fehlen die Timestamps. Ein vorgängiges Remuxen mit WinFF respektive ffmpeg hilft eventuell.

habkeinen

Quote from: styrol on September 26, 2012, 09:59:38 AM
Vermutlich fehlen die Timestamps. Ein vorgängiges Remuxen mit WinFF respektive ffmpeg hilft eventuell.
Wie funktioniert das ohne Recodierung? Meinst du damit setpts=PTS-STARTPTS? Bietet WinFF das ohne händische Parametereingabe an?

Da ich das Ganze eh nur zur Verarbeitung mit Cutlists (Quelle sind einige Dateien von onlinetvrecorder) nutze, ist mir der Zeitaufwand aber eher zu groß. Da habe ich es händisch deutlich schneller geschnitten.

styrol

QuoteWie funktioniert das ohne Recodierung? Meinst du damit setpts=PTS-STARTPTS?
Nein, simples Neu-Schreiben der Video- und Audio-Spur in den gleichen Container. Nehme an, du hast eine AVI-Datei von OTR.

QuoteBietet WinFF das ohne händische Parametereingabe an?
Einmal ein entsprechendes Profil erstellen:
Profilname: Copy
Profilbezeichnung: AVI Copy
Kommandozeile: -vcodec copy -acodec copy
Dateiendung:avi
Kategorie: AVI

Wobei h.264 in AVI ist nicht so eine gute Idee, würde MKV verwenden. Oder wenn du MP4 verwendest, dann: -acodec libfaac -ab 96k

OTR bietet die Sendungen, bei welchen die Werbung bereits herausgeschnitten wurde, auch als MP4-Dateien an. Ok, du musst Premium-Kunde sein, kann ich dir nur empfehlen.

habkeinen

Die Umwandlung in mkv mache ich mit mkvmerge, das hilft mir aber nicht weiter, da ich kein Tool kenne, mit dem sich otr-Schnittlisten für Nicht-avi-Dateien verarbeiten lassen. Das Schneiden von avis funktioniert grundsätzlich mit Virtualdub, welches bei mir aber unter openSuse 12.1 mit wine und otr-Verwaltung lediglich eine allgemeine nichtssagende Fehlermeldung ausgibt.
Der händische Schnitt ist mit Virtualdub auch mit avis framegenau möglich, beim Schneiden von mkv mit avidemux 2.6 reagiert die Anwendung nach 2-3 Schnitten praktisch nicht mehr (Shortcuts (del, ->, <-) funktionieren gar nicht mehr, Navigation zwischen I-Frames mit teilweise minutenlanger Verzögerung).

ps: Nicht-Premium-User haben bei otr keine Problem mit h264-Material.;)
Da ich oft nur alle paar Wochen mal herunterlade, ist das bei otr direkt oft nicht mehr möglich. Die Wartezeiten zu gängigen Zeiten sind enorm, und es ist mir noch nicht gelungen, einen mit otr wirklich funktionierenden Downloadmanager für Linux-BS zu finden.

styrol

Das Problem ist eben H.264 im AVI-Container und damit verbundene fehlende Timestamps, zumindest für Avidemux:
[addFile]  [Editor] This is H264, check if we can fill missing PTS
  [ADM_setH264MissingPts]  We have 211179 missing PTS
  [ADM_setH264MissingPts]  Some PTS are missing, try to guess them...
  [ADM_setH264MissingPts]  H264 AVC scheme: 0/105590 failures.
  [ADM_setH264MissingPts]  Filling 2nd field PTS
  [ADM_setH264MissingPts]  Fixed 0 PTS
  [ADM_setH264MissingPts]  There is more than 5% unavailable PTS, wont even try (211179/211180)...
  [ADM_setH264MissingPts]  End of game, we have 211179 missing PTS


Wenn du mit Avidemux zuerst ein MKV erzeugst (Copy, Copy), dann funktioniert auf jeden Fall die Navigation von Keyframe zu Keyframe und wohl auch das händische Schneiden. Aber eben, wenn du wegen den Cutlists auf AVI angewiesen bist, hilft dir das nichts.