Länge von Avi-Datei in VirtdubMod pur und mit Avisynth unterschiedlich

  • Hallo!

    Ich habe ein seltsames Problem. Ich habe ein AVI per TV-Karte von VHS gecaptured nach Anleitung vom Baron (gecaptured per VirtualDubSync 1.4.9.3, Größe 704x576 auf 700x564 gecroppt). Wenn ich die segmentierte AVI-Datei per Datei öffnen in VirtualDubMod (ver. 1.5.10.1) lade erhalte ich die korrekte Länge: 359787 Frames, 3:59:51.480. Öffne ich die Datei aber per Avisynth-Script in dem nur der Befehl SegmentedAviSource steht, so erhalte ich folgende falsche Länge: 348449 Frames, 3:52:17.960.
    Beim capturen hatte ich ungefähr 1300 dropped Frames, daran kann es also nicht liegen. Bei einem vorherigen Capturing mit der normalen VirtualDub ver. 1.5.10.1 funktionierte obiger Ladevorgang in VirtualDubMod ohne diese Abweichungen. Woran kann es also liegen?

    Mit freundlichen Grüßen,

    Vagabond

  • Zitat von Vagabond97

    korrekte Länge: 359787 Frames
    falsche Länge: 348449 Frames

    Beim capturen hatte ich ungefähr 1300 dropped Frames, daran kann es also nicht liegen.


    Diese Schlussfolgerung (der kategorische Ausschluss als Ursache) ist mir nicht gerade logisch (359787 - 348449 = 11338, vielleicht doch noch eine 10000 vergessen?); auch sind über 1000 Drops für einen Film wirklich eine ganze Menge...

    Andere mögliche Ursache: Wie groß ist denn das letzte Segment, also das mit der höchsten laufenden Nummer?

  • Hallo!

    Also das Ausschlußverfahren kann ich machen, da ich den Film schon einmal mit der normalen VirtualDub Version 1.5.10.1 gecaptured hatte und da hatte ich auch etwa 359800 Frames nur war hier die Anzahl der Dropped Frames fast doppelt so hoch (2300), daher hatte ich VirtualDub Sync ausprobiert. Die Menge der dropped Frames liegt am schlechten Ausgangsmaterial (15 Jahre altes VHS-Material). Ich hab den Film zweimal gecaptured, da ab der Mitte des Films der eine Audiokanal wegfällt (aus Stereo wird Mono). Beim ersten Capturen hatte ich gedacht, dass der Klinken-Stecker in der Soundkarte verrutscht ist (die Buchsen der SB Player1024 sind extrem wackelig), aber beim zweiten Capture trat das Problem an genau der selben Stelle auf.
    Um die Frage der Dateien zu beantworten: vorletzte heißt xyz.31.avi (Dateigröße 272.082 KB) die letzte xyz.32.avi (Dateigröße 12 KB).

    Mit freundlichen Grüßen,

    Vagabond

  • Hallo WarpEnterprises!

    Nein, das ist ja der Gag dabei: Es fehlt nichts! Wenn ich schnell durchs Video scrolle sind alle Teile dabei. Werde aber mal das mit der 12K-Datei ausprobieren. Dabei fällt mir gerade noch was ein: wenn mit 25fps gerechnet wird: 4h = 360.000 Frames, mit 24fps = 345600 Frames. Kann es also sein, dass beim Import über AviSynth auf 24fps umgerechnet wird?

    Mit freundlichen Grüßen,

    Vagabond

  • Versuch mal Avisynths Directshowsource.

    Musste allerdings jeden einzelnen Teil einladen, z.B. so:

    a=Directshowsource("pfad..datei...blablub.00.avi")
    b=Directshowsource("pfad..datei...blablub.01.avi")

    .....

    a+b......

    schon strange aber. Schau mal im Analog Bereich, da gabs zu dem Problem von picvideo, avisynth. yv12 etc neulich nen Beitrag. Hier isser: http://forum.gleitz.info/showthread.php?t=18735

  • Hallo baronvlad!

    Danke für den Tip, jetzt funktionierts, aber kleiner Hinweis: es gibt auch den Befehl SegmentedDirectshowsource. Hier nun aber meine Ergebnisse:

    AVI Datei direkt per Öffnen-Befehl in VirtdubMod geladen:

    FourCCcode = FourCC : [MJPG], IBM Motion JPG including Huffman
    Decompressor = PICVideo M-JPEG 3 VfW Codec
    Frames = 359787

    AVI Datei per AviSynth in VirtdubMod geladen per:

    -SegmentedAVISource("xyz.avi")

    FourCCcode = FourCC : [YV12], ATI YVU12 4:2:0 Planar
    Decompressor = DivXPro 5.2.0 Codec
    Frames = 348449

    -SegmentedAVISource("xyz.avi", pixel_type="YUY2")

    FourCCcode = FourCC : [YUY2], YUV 4:2:2 as for UYVY but with different
    Decompressor = YUV 4:2:2 (YUY2)
    Frames = 348449

    -SegmentedDirectShowSource("xyz.avi")

    FourCCcode = FourCC : [YUY2], YUV 4:2:2 as for UYVY but with different
    Decompressor = YUV 4:2:2 (YUY2)
    Frames = 359787

    Meine Frage ist allerdings: wieviel langsamer ist der DirectShowSource-Befehl, da ich allein zum öffnen der Avi's die zwei- bis dreifache Zeit benötige und hat die Benutzung eines anderen Decoders als den PICVideo-Decoder irgendwelche Auswirkungen (Qualität, Geschwindigkeit?)?

    Mit freundlichen Grüßen,

    Vagabond

  • Hallo Vagabond,

    segmenteddirectshowsource kannte ich gar nicht. Danke für den Hinweis !

    Zur Geschwindigkeit kann ich Dir soviel nicht sagen. Ich nehme dss an sich nur, wenn nichts anderes geht, also z.B. bei wmv, rm... Hatte aber an sich nicht den Eindruck, dass es da langsamer ginge. Probier doch einfach mal ein kleines Stückel aus.

    Zum Thema Qualitätsunterschiede und Einladeparameter für PicVideo und dss schau mal in den oben von mir geposteten Thread, da sind auch ein paar Hinweise und Vergleichsbilder. Ich nutze an sich nur Huffyuv, habe diesen Thread daher nur am Rande verfolgt. :)

  • Hallo BaronVlad!

    Ich hatte gestern abend keine Lust mehr die Geschwindigkeit zu testen. Werde ich heute Nachmittag noch nachholen. Im anderen Thread wird versucht das Video über AVISource zu laden, wobei die Ausgabe auf YUY2 geforced wird. Das resultiert bei mir zwar im richtigen Farbraum, aber ich bekomme die falsche Framezahl. Daher werde ich wohl das ganze mit DSS machen.

    Mit freundlichen Grüßen,

    Vagabond

  • Ja schon seltsam das Ganze. Ich kann mir aber kaum vorstellen, dass avisynth einzelne Frames unterschlägt. Eine grobe Überschlagsrechnung zeigt auch, dass bei segmentedavisource etwa 1 Segment nicht geladen wird. Vergleiche doch noch mal genau, ob da wirklich nichts fehlt im Vergleich zum Original. Evtl. ist es ja nur ein Nummerierungsproblem bei segmentedavisource.
    Die Sache mit den verschiedenen Decompressoren ist jedenfalls schon in Ordnung so, daran sollte es nicht liegen.

  • Hallo Orchidee!

    Ich hab nochmal das Video per Framezahlen überprüft. Hierbei kam heraus, das wirklich eine Datei nicht geöffnet wird :( (fällt bei 4 Stunden Material aber nicht auf :mad: ) Wenn ich normal in VirtualDubMod per öffnen-Befehl die Datei xyz.03.avi öffne oder per DirectShowSource wird sie klaglos geöffnet. Versuche ich das ganze per AviSource, so erhalte ich von AviSynth eine Fehlermeldung : "Could not decompress Frame 0". Diese erhalte ich aber nicht beim öffnen per SegmentedAviSource, da wird diese Datei einfach übergangen und keine Fehlermeldung ausgegeben.

    Mit freundlichen Grüßen,

    Vagabond

  • Welche AviSynth version hast du?

    Mit diesem Fehler haben wir uns ewig rumgeärgert (nämlich was man tun soll, wenn eine Datei "leicht" fehlerhaft ist oder z.B. am Anfang einen dropped frame hat).

  • Hallo

    ich hab hier genau die gleiche Problematik, ist denn das Problem inzwischen behoben worden.

    wenn ich versuche die Dateien per SegmentedAviSource zu öffnen unterschlägt er mir 4 .avi-Dateien

    öffne ich dagegen die xy.00.avi in vdm werden alle segmente geladen.

    avisynth und VDM benutz ich die neuesten versionen.

    es sind übrigens genau die segmente die ich auch mit TMpgEnc anfangs nicht in mpeg2 wandeln konnte, wegen fehlermeldung, aber das konnte ich mithilfe eines anderen threads
    http://forum.gleitz.info/showthread.php?t=14550&page=2&pp=10
    lösen.

    Ich muss dazu sagen, dass ich beim cappen ziemlich viele dropped frames hatte. aber eigentlich habe ich keine lust alles nochmal zu machen, da das ganze doch ziemlich zeitraubend war. im schnitt hat er jeden 3. frame rausgeschmissen. aber es sind nur alte urlaubsvideos und quali is mir eigentlich ziemlich egal. hauptsache ich bekomm das ding irgendwie auf dvd.

    Grüsse
    Steel

    Grüsse

    Hanzo Steel

    Man muss immer mit einem rechnen, auf den man nicht zählen kann!

Jetzt mitmachen!

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