AVCSource vs. DirectShowSource

  • Nehmen wir an, wir haben ein x264 Track in einem Matroska Container.
    Wenn man in AviSynth den Befehl DirectShowSource("C:\x264.Video.mkv", fps=25) sollte es ohne Probleme gehen, vorausgesetzt man hat einen Splitter und einen passenden Decoder installiert. Aber mit dem Befehl AVCSource wirds nicht funzen, da man das Videofile zuerst mit dem DgAvcIndex analysieren muss und man erhält am Ende eine dga Projektdatei.
    Aber! DgAvcIndex kann nur elementare h264 Streams lesen, d.h man muss den Videostream aus dem Container extrahieren.
    Und jetzt frage ich mich für was man eigentlichen DgAvcIndex braucht, wenns mit DirectShowSource viel schneller geht. :nein:

  • Auch wenn einige Leute diese Aussage für zu pauschalisiert, macht Katjarella gerne, halten würde auch ich sagen, dass DirectShowSource eher eine Quick&Dirty Lösung ist, da es wesentlich fehleranfälliger ist. (Wobei ich durchaus schon einige Reencodes ohne Probleme mittels DirectShowSource durchgeführt habe.)

    Cu Selur

  • DirectShowSource verwendet irgend einen gerade installierten Decoder mit irgend welchen gerade eingestellten Optionen. Vielleicht schaltet der mal die Blockfilterung ab, wenn's ihm zu langsam geht. Vielleicht überspringt er auch mal einzelne Frames. Wer weiß.

    Kann dir bei DGAVCDec nicht passieren. Da wird die bestmögliche Qualität angefordert, auch wenn's etwas länger dauert.

  • Naja, bis jetzt hatte ich auch immer DirectShowSource bei Reencodes genutzt und war mit dem Ergebnis immer zufrieden.
    Jetzt kommts: gestern Nacht hatte ich den Rechner laufen lassen um ein Reencode, diesmal mit dem Befehl AVCSource, durchzuführen. Heute morgen wache ich auf und siehe da, die Zielgröße wurde um ca. 250 MB verfehlt. Mit DirectShowSource ist mir sowas noch nie passiert. Und ich bin mir sicher, dass ich den Encoder richtig konfiguriert hatte.

    LigH
    Im Beispiel hatte ich ja geschrieben, dass es ein h.264 Stream ist. Und da ich nur einen einzigen h.264 Decoder installiert habe, nämlich den CoreAVC, wird DirectShow wohl nur auf diesen zurückgreifen. Und beim DGAvcIndex wird irgendsoein libavcodec verwendet.

  • Das Verfehlen der Zielgröße hat im Allgemeinen mit dem Videoinhalt zu tun, oder mit Fehlbedienungen. Wenn es z.B. "zu klein" wird, gab es bei XviD einige typische Regeln zur Vermeidung der "Sättigung", wenn das Original schon zu weich war, aber das dürfte bei AVC so kaum auftauchen. Dann wäre auch noch denkbar, dass bei dir nur ein zweiter Durchlauf lief, und die Statistik aus dem ersten Durchlauf eines anderen Films stammte. Wenn es zu groß wurde, dann vielleicht wegen Interlacing im Original.

    Die Ursachen können vielfältig sein. Leider schreibst du keinerlei verwertbare Fakten. Noch nicht mal "zu groß" oder "zu klein". Ganz zu schweigen von einer Log-Datei vielleicht...

  • @ LigH
    Die Datei ist 250 MB zu klein. Und es liefen zwei Durchläufe (Passes) und bei der Statistikdatei bin ich mir auch 100% sicher.

    Zitat

    gab es bei XviD einige typische Regeln zur Vermeidung der "Sättigung"


    Könntest du vielleicht etwas genauer beschreiben was du damit meinst?

  • Bevor du nicht mit Fakten kommst, hab ich keine Lust, für dich im Forum zu suchen...

    - Spieldauer
    - Bildfläche
    - Zielformat
    - alle relevanten Programm- und Codeceinstellungen
    ...

    Du hast ja immer noch nicht ausgeschlossen, dass dein Video vielleicht nur 2 Minuten in Briefmarkengröße ist. Dann krieg ich das auch nicht größer als 250 MB. Aber bei 90 Minuten in PAL-Auflösung sollte das schon zu denken geben.

  • Zitat

    DirectShowSource verwendet irgend einen gerade installierten Decoder mit irgend welchen gerade eingestellten Optionen.

    Mit "RadLight Filter Manager" oder dem "FilterGraph Manager" kann man den Merit so festlegen, dass mit dem gewünschten DirectShow-Filter gearbeitet werden kann. Was für einen Clip verwendet wird sieht man ja in "GraphEdit"...

    Vielen Dank und beste Grüsse!

Jetzt mitmachen!

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