Avidemux kann manche TS-files nicht öffnen

Started by micaelo, September 27, 2018, 09:49:07 AM

Previous topic - Next topic

micaelo

Ich schneide meine TV-Aufnahmen (HD) mit Avidemux. Format der Aufnahmen ist TS. Funktioniert fast immer super, aber manche TS-Dateien kann Avidemux nicht öffnen. Mit dem VLC-Player kann ich sie aber abspielen.

Hat jemand einen Tipp?

eumagga0x2a

Bitte den Anfang* einer betroffenen Aufnahme als Sample bereitstellen, zum Beispiel mittels WeTransfer, Mega, Dropbox, Google Drive o.ä.

*) 250 bis 350 MiB würden genügen:

dd if=/Pfad/zur/Originaldatei of=/Pfad/zum/Sample bs=1M count=300

Wenn kein Linux oder macOS zur Verfügung steht, müsste es auch für Windows Tools geben, die eine Datei splitten. Das erste Fragment wäre von Interesse. Notfalls einfach die ganze Datei als Sample hochladen.

micaelo

Schon mal danke vorab  :)

Hier der Linke zu den ersten 500 MB des TS-files, den Avidemux nicht öffnen kann:
https://www.dropbox.com/s/eo6e4flkd1rrmzl/Kruso%202018-09-26%2023-15.ts?dl=0

Die Fehlermeldungen lauten:

"Der Versuch, [Dateipfad] zu öffnen, ist fehlgeschlagen" und nach Klick auf OK "Die Datei kann nicht geöffnet werden".

Weitere Info:

System Windows 7 Prof. SP3 32Bit, Avidemux 2.7.1 32Bit

VG, micaelo

eumagga0x2a

#3
Thanks, I can reproduce the problem. By the way, cutting away just 1 MiB from the start of the file allows Avidemux to find PMTs (program map tables) and thus correctly detect the video. With the unmodified sample, Avidemux falls back to brute force detection of content and happens by chance to detect 2 PIDs which might be video (the correct PID of the video track and a false positive). The latest detected video track wins. While it is trivial to make the first one win, this is gambling and guesswork.

I'm looking for a better solution :)

Upps, die deutsche Version folgt :-D

Danke, ich kann das Problem reproduzieren. Avidemux findet PMTs nicht und versucht mittels Brute Force den Inhalt zu ermitteln. Dabei werden zufällig gleich zwei Tracks als Video identifiziert, das wirkliche Video und ein falscher Treffer. Wer zuletzt kommt gewinnt.

Obwohl es sich leicht ändern lässt, damit die erste als Video identifizierte PID zum Zuge kommt, ist es doch Glückssache.

Übrigens, ein MiB vom Anfang des Streams wegzuschneiden erlaubt Avidemux die PMTs zu finden und alle Tracks korrekt einzulesen.

micaelo

Thanks a lot. I Have checked this immediately, using my file splitter to cut the sample into pieces and then recombine just the second through last. After that, Avidemax opens the file. Fortunately, I always start recording some minutes prior to what I actually want to record.

At least, that's a workaround, but a more elegant solution would be welcome  ;)

Can I change any of the Avidemux settings to make Avidemux less sensitive to the PID mess you mentioned?

eumagga0x2a

Nein, das kann nicht durch Einstellungen beeinflusst werden.

micaelo

Quote from: eumagga0x2a on September 27, 2018, 08:21:56 PM
Danke, ich kann das Problem reproduzieren. Avidemux findet PMTs nicht und versucht mittels Brute Force den Inhalt zu ermitteln. Dabei werden zufällig gleich zwei Tracks als Video identifiziert, das wirkliche Video und ein falscher Treffer. Wer zuletzt kommt gewinnt.

Obwohl es sich leicht ändern lässt, damit die erste als Video identifizierte PID zum Zuge kommt, ist es doch Glückssache.

Übrigens, ein MiB vom Anfang des Streams wegzuschneiden erlaubt Avidemux die PMTs zu finden und alle Tracks korrekt einzulesen.

Ist das ein bekanntes Problem? Ich habe bisher nichts darüber gelesen, aber bei mir hatte ich bei 3 von ca. 15 TV-Mitschnitten den Fall, dass Avidemux die TS-Datei nicht öffnen kann. (Ich hatte schon meine Hardware im Verdacht)

Für den Moment habe ich folgenden Workaround gefunden: Ich öffne die TS-Datei mit einem alternativen Schnittprogramm (Smart Cutter Portable) und schneide ein paar Frames am Anfang weg. Danach kann Avidemux die so behandelte TS-Datei öffnen.

Schöner wär's natürlich, wenn es auch ohne diesen Kunstgriff mit Avidemux klappt.

eumagga0x2a

Nein, mir ist so ein Fall noch nicht vorgekommen, wobei ich mich bislang nicht viel mit dem MpegTS Demuxer beschäftigt habe. Meine DVB-C Mitschnitte öffnet Avidemux jedenfalls ohne Probleme.

Irgendwas ist mit dem Receiver dennoch nicht in Ordnung: Extradata für den H.264 Stream fehlt, deswegen funktioniert z.B. Hardware-beschleunigte Dekodierung auf macOS nicht.

Ich habe einen Patch eingepflegt, mit dem das Auffinden des Videostreams im Sample auch ohne Brute Force klappt. Wenn nächste Nightly Builds erzeugt und hochgeladen sind, wäre es schön zu testen, ob mit denen das Laden von anderen problematischen Aufnahmen gelingt. Bitte nicht vergessen, die *.idx2-Dateien vorher zu löschen!

micaelo

Quote from: eumagga0x2a on September 28, 2018, 11:50:46 AM
Ich habe einen Patch eingepflegt, mit dem das Auffinden des Videostreams im Sample auch ohne Brute Force klappt. Wenn nächste Nightly Builds erzeugt und hochgeladen sind, wäre es schön zu testen, ob mit denen das Laden von anderen problematischen Aufnahmen gelingt. Bitte nicht vergessen, die *.idx2-Dateien vorher zu löschen!

Ich werde das nächste Nightly Build testen. Kann ich das dann einfach über die bestehende Installation installieren?

eumagga0x2a

Die Mutter der Porzellankiste sagt, dass die Deinstallation der bestehenden Avidemux-Installation vor der Installation eines Nightly Builds keine negativen Folgen haben kann.

eumagga0x2a

Bitte mit r180929 testen: https://avidemux.org/nightly/win32/

Quote from: eumagga0x2a on September 28, 2018, 11:50:46 AM
Irgendwas ist mit dem Receiver dennoch nicht in Ordnung: Extradata für den H.264 Stream fehlt, deswegen funktioniert z.B. Hardware-beschleunigte Dekodierung auf macOS nicht.

Das nehme ich bis auf die Tatsache, dass Avidemux das Video unter macOS tatsächlich nicht in Hardware dekodieren kann, vollumfänglich zurück. Globale Extradata gibt es bei Formaten wie MP4 und Matroska. Nicht so in einem MPEG-TS, wo diese Informationen über NAL units bereitgestellt werden. Es ist schon gar kein Indiz für ein Problem mit dem Receiver, Asche auf mein Haupt.



micaelo

Quote from: eumagga0x2a on September 29, 2018, 07:15:30 PM
Bitte mit r180929 testen: https://avidemux.org/nightly/win32/

Mit dieser Version kann ich jetzt das weiter oben bereitgestellte Sample öffnen, nicht jedoch 2 weitere Videos, die ich auch schon mit dem letzten Stable Release nicht öffnen konnte.

eumagga0x2a

Bitte die ersten 100 MiB von den beiden als Samples bereitstellen.


eumagga0x2a

Danke für die Samples, leider kann ich ohne tiefgreifende Umbauten in Avidemux keine Lösung anbieten außer den Anfang des Streams wegzuschneiden, so genügt es, die ersten 100 KiB des letzten Samples zu entfernen, um die Datei brauchbar zu machen.

Avidemux kann nur ein Video pro Stream handhaben, die Mitschnitt-Software oder Hardware schreibt aber zwei Aufnahmen, die zumindest eine kleine Überlappung aufweisen, in eine Datei. Mit dem ersten Sample hatten wir Glück, dass die erste PAT gar keine verwertbaren PMTs enthielt. In den anderen Samples bekommt Avidemux schon aus der ersten PAT einen Videotrack (den der vorherigen Aufnahme) mitgeteilt, der aber eigentlich schon zu Ende ist.