avc stream aus avi holen

  • hab ein 11 GB avi mit nem avc stream drin.
    diesen möchte ich herausholen (als rawstream *.h264)


    - aviraw von mp4box arbeitet soweit gut, doch das programm hängt sich jedesmal bei 99% auf - "problembericht senden usw."!
    (keine ahnung warum)
    es entsteht trotzdem eine .h264 datei von 11 GB, allerdings ohne videoinformationen. (wenn ichs mit vlc abspiele öffnet sich kein videofenster, wie bisher, sondern nur der abspielkopf bewegt sich über die playerkonsole.)


    gibt es eine alternative? (so etwas wie mkvextract für avis?)


    am liebsten hätte ich einen demuxer für alle gängigen container, der alle streams erkennen und in die jeweilige rohvarianten speichern kann.

  • Wahrscheinlich wird es mit ffmpeg funktionieren (ein Kommandozeilenprogramm, ist u.a. auch bei der MeGUI dabei). Sicherlich helfen da die Optionen "-vcodec copy" (Video nur demultiplexen), "-an" (Audio brauchen wir nicht) und vielleicht "-f h264" (laut Formate-Liste das H.264-"Rohdaten"-Format). Also vielleicht:


    Code
    1. ffmpeg -i meinfilm.avi -vcodec copy -an -f h264 meinfilm.h264
  • gibt es eine alternative? (so etwas wie mkvextract für avis?)


    Mit MKVmerge GUI kannst du auf jedenfall von AVI nach MKV remuxen. Und anschließend mit MKVextract GUI extrahieren.
    Zugegebenermaßen etwas umständlich, weil ein Schritt eigentlich überflüssig ist...


    Alternativ kann man auch mit AVI-Mux GUI einzelne Streams extrahieren. Die Option ist allerdings etwas versteck:
    Man muss in der unteren Liste den Stream auswählen, dann Rechsklick -> "extract binary".


  • Mit MKVmerge GUI kannst du auf jedenfall von AVI nach MKV remuxen. Und anschließend mit MKVextract GUI extrahieren.


    Das hab ich ausprobiert bevor ich hier schrieb. MKVextract hat dann allerdings den einzeln selektierten videostream wieder in ein avi gepackt bzw als avi rausgeholt. (da war dann auch nur video drin)
    das ist auch das avi um das es mir geht (das ich durch avi2raw laufen lassen hab siehe oben)


    das mit binary aus avimux klingt sehr gut, werd ich auf jeden fall probieren.
    vielen dank

  • wie versprochen, hier die ergebnisse:


    Zitat

    ffmpeg -i meinfilm.avi -vcodec copy -an -f h264 meinfilm.h264


    ... hab ich genau so gemacht, erzeugt auch eine *.h264 datei in korrekter größe nur auch wieder kein video drin.


    Zitat

    Falls Du das avi abspielen kannst per DirectShow könnte man gdsmux verwenden.


    ... scheint zu funktionieren, allerdings gibt man die dateiendung selbst ein, das programm bietet es nicht an, auch keine direct stream copy option. man kann eben nur vermuten, dass er genau das tut, wenn man unter encode nichts einstellt. schaut man den stream dann mit vlc an steht unter den codec infos "avc1" und nicht "h264", wie beispielsweise bei anderen h264-streams die ich per mkvextract demuxed habe. ich glaube gdsmux erzeugt also nur wieder einen avi im gewand eines h264-streams.


    Zitat

    Man muss in der unteren Liste den Stream auswählen, dann Rechsklick -> "extract binary".


    ... erzeugt eine *.raw datei ohne video, ich glaub diese funktion war für audiostreams gedacht.


    weiter vorne angefangen:
    ich habe einen hd film (1080p, h264; 5.1ac3) bekommen, der in drei 4 GB avis gesplittet ist. alles was ich möchte ist rückwärts arbeiten bis ich die kompletten streams einzeln vorliegen habe, da ich unter anderem eine weitere tonspur hinzufügen möchte und das ganze in einen mkv container packen will.


    also theoretisch: joinen->demuxen->muxen
    oder von mir aus auch: demuxen->streams eizeln joinen->muxen


    die frage ist, wie?
    es muß doch möglich sein irgendwie den original h264 stream aus dem avi zu holen. genau so wie es mkvextract macht.

  • MediaInfo 0.7.9 schreibt über den ersten der drei Teile



    Kann es sein, dass beim muxen des avis irgendwas am avc-stream kaputt gegangen ist, weil avi womöglich nicht der passende container ist?