"Luft ablassen" aus Transport Stream ?

  • Hallo erstmal...

    habe erfahren, dass TV-Aufnahmen, die im .ts-Format in H264/AVC vorliegen, oft Unmengen von "Luft" enthalten, gemeint sind GOPs, die mit unnützen Nullen gefüllt sind.

    Ich suche ein Tool, das mir anzeigt, wieviel "Leerinformationen" in einer .ts-Datei wirklich drin sind.

    Hintergrund:
    TV-Aufnahme ist 8 GB gross, durchschnittliche Bitrate beträgt 12000 kbps
    Ich möchte die Datei mit x264 kleiner-rechnen / transcodieren, um Platz zu sparen.
    Nun wäre es ja "doof" eine 8GB-Datei, die 50% NULLEN enthält auf 6GB herunterzurechnen. => 25% Platz verschwendet
    Es wäre sinniger sie in diesem Fall auf 4GB runterzurechnen.

    1000 Dank für Eure Hilfe, jedesmal lehrreich ;)

  • Die Null Packets werden z.B. bei Umcontainern in MKV entfernt.
    Auch VideoRedo V4 kann das.
    Demuxt man die elementarstreams mit eac3to werden die NPs ebenfalls aussortiert.


  • Ich suche ein Tool, das mir anzeigt, wieviel "Leerinformationen" in einer .ts-Datei wirklich drin sind.

    Da fällt mir nur der TS-Doctor ein (Heft-DVD ct 17/2010), einfach das *_check.log nach "Nur überprüfen" durchlesen.

    Code
    Opening file C:\Temp2\Die Tudors - arte HD 2010-09-21 21-05-00.tsOS: Windows 7 TSDoctor.exe V 1.0.58......H264 filler data: 53,4% [Netto]......

    Mal ein Vergleich:

    Die mit eac3to erzeugten Dateien lagen bei mir im Bereich von GDS mux/mkvmerge.

    Vielleicht reicht ja der so gewonnene Platz dass du auf das Transcoden mit x264 verzichten kannst. Die Qualität wird wahrscheinlich leiden. Wenn doch, kannst du dir das Entfernen der Filler sparen, da meines Erachtens der Decoder x264 nur das decodete Bild liefert.

  • Danke mal, ja damit kann ich als .mp4 exportieren, aber leider ruckelt die Datei und Audio ist asynchron.
    Export als MKV geht damit leider nicht. Trotzdem ein hübsches Tool. :)
    Evtl. ist aber die exportierte Dateigröße ein Indiz dafür, wieviel NULLEN im Stream drin waren.
    Also jetzt werde ich mal probe encoden und testen...

  • Möglicherweise würde es schon reichen, den Inhalt überhaupt nur mit tsMuxeR o.ä. zu re-multiplexen, oder gleich zu demultiplexen (wenn du sowieso weiterverarbeiten willst, kann das von Vorteil sein, je nach dem welche Methode du zum Lesen der Quelle für Video bzw. Audio benötigst).

    Aber ohne Gewähr. Ich habe selbst keine DVB-TS, um das zu testen.

  • Möglicherweise würde es schon reichen, den Inhalt überhaupt nur mit tsMuxeR o.ä. zu re-multiplexen, oder gleich zu demultiplexen


    Auf jeden Fall geht es nach demuxen mit tsMuxeRGUI und muxen mit mkvmergeGUI nach mkv

  • Es besteht eigentlich kein Grund, als etwas anderes als ts zu exportieren.
    Wahlweise exportiert man als Elementarstreams und muxt das ganze mit gdsmux oder mkvmergegui.

    MKV Export ist bei transport-streams verarbeitenden Programmen eher selten.

  • MKV überhaupt ist außerhalb der Freeware-Szene noch erschreckend selten. ;)

    Im Matroska-Entwicklerteam kann man ja schon stolz auf die mittelbare Nutzung in DivX 7 und WebM sein, sowie auf die teilweise Unterstützung in einigen Playern. Von einer kompletten Akzeptanz im kommerziellen Sektor ist man aber noch ein gutes Stück entfernt. Wenn man bedenkt, dass dafür sogar niemand Lizenzgebühren zahlen müsste, fragt man sich schon, ob es daran liegt, dass im Hintergrund keiner für die Unterstützung dieses Formates finanzielle "Überzeugungsarbeit" leistet. Läuft ähnlich wie bei der sehr schleppenden Unterstützung von Ogg Vorbis in mobilen Media-Playern.

    Nun ja - für DVB hat ein Transport-Stream seine Berechtigung, da ist nicht dran zu deuteln. Aber für ein generisches Zwischenformat / Austauschformat oder zusätzliches exportierbares Endformat in Video-Schnitt-Programmen wäre MKV ja wohl ideal (unter anderem auch wegen möglicher Rückwärts-Referenzen zu vorherigen Keyframes).

  • Zitat

    Evtl. ist aber die exportierte Dateigröße ein Indiz dafür, wieviel NULLEN im Stream drin waren.

    Richtig, die mit GDSMux/mkvmerge/eac3to/TSDoctor erzeugten Dateien geben dir eigentlich genau das, was du willst: eine ziemlich konkrete (je nach verwendetem Tool) Angabe der Streamgrösse nach Entfernen der Fülldaten. Wenn du jetzt je nach Bedarf noch die für dich irrelevanten Audiostreams entfernst, hast du eine Entscheidungshilfe ob das Umwandeln mit x264 für Dich in Frage kommt. Und genau dafür musst du diesen Schritt gehen.

    Für das Umwandeln in/mit x264 musst du keine "Fillers" entfernen, weil vor dem Umwandeln das Bild decodiert wird und dabei die Fülldaten nicht ausgewertet werden. Diese Fülldaten sind für das korrekte Decodieren der Bildinhalte nicht notwendig und werden nur in den Stream eingefügt, um eine konstante Bitrate zu erzeugen.

    Mein Tip: Schau dir die Dateigrösse nach Schnitt, entfernen der nicht benötigten Streams und muxen in *.mkv an und überlege dir gut, ob das Umwandeln noch nötig ist. Ich erreiche je nach Ausgangsmaterial eine Reduktion auf 30-70 Prozent. Wenn es jetzt keinen guten Grund, wie z.B. das Archivieren auf DVD gibt, würde ich an deiner Stelle auf das Neucodieren verzichten. Wenn jetzt z.B für eine DVD noch paar MB zuviel sind, ist es vielleicht eine Überlegung wert den Taschenrechner zu zücken und über das Eindampfen der Audiospur nachzudenken, bevor ich den Videostream anrühre ... .

    Dies gilt natürlich nur unter der Annahme, dass du die Aufnahmen am PC abspielst. Haste du irgendwelche Hardwareplayer, sind natürlich deren Wiedergabemöglichkeiten und speziellen Eigenheiten zu beachten. Nicht umsonst sind die vom TSDoctor erzeugten Dateien nach Entfernen der Fülldaten etwas grösser.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!