AVI Capture Video von der BM Intensity Shuttle -> Falsche Pixel_Type Zuweisung?

  • Hab hier ein Video vorliegen, das ich mal mit der:
    Blackmagic Intensity Shuttle USB 3.0 unter Media Express > aufgezeichnet habe.

    Code
    Datei Name: Pre1-BM-Codec-YUV422-Uncompressed-UYVY--Pixel_Type.avi 
    
    
    __Container: AVI 
    Video Codec: Blackmagic AVI 8-Bit > Uncompressed YUV 4:2:2 
    Audio Codec: PCM / WAVE > 2 Kanäle > 48,0 KHz > 16 bits 
    __MediaInfo: [URL]http://img.xrmb2.net/images/757889.png[/URL]



    Das Video kann ich ganz einfach unter VirtualDub öffnen, da der zugehörige VFW Codec, auf meinem Betriebssystem installiert ist!

    Hier mal ein Videoschnippsel Auszug von ca. 6 Sekunden vom Original Capture,
    per DirectStreamCopy (V+A) unter VirtualDub ausgeschnitten & abgespeichert:
    http://www.file-upload.net/download-97656…l_Type.rar.html

    Jetzt habe ich folgendes AviSynth Script, dazu erstellt und unter AvsPmod eingebunden:
    http://img.xrmb2.net/images/752154.png
    " "
    Warum ist der Pixel_Type YUY2 falsch???
    Und auch die FPS werden falsch angezeigt (24.000 fps)
    Auch durch die Zuweisung des Befehles: AssumeFPS(25.000), brachten keine Änderung -> http://img.xrmb2.net/images/314436.png

    Als Pixel_Type: RGB24 oder RGB32, wird das Video sofort erkannt:
    http://img.xrmb2.net/images/544067.png

    3 Mal editiert, zuletzt von H264x (30. Oktober 2014 um 00:44)

  • Hallo

    Dein kurzes Testfile ist sicher nicht in RGB,

    Nimm mal folgendes Script...Die Benennung Deines Clips habe ich gekürzt und auch vorab vom Audioanteil befreit.

    AVISource("G:\Pre1-BM.avi",pixel_type="YUY2")
    AssumeTFF()
    info()

    Dann sollte es so angezeigt werden wie im Bild

    b.jpg

    Datenrettungen Normwandlungen Restaurierungen Digitalisierungen

  • AviSynth-Fehlermeldungs-Clips haben 24 fps. Mit AssumeFPS(25) änderst du die Framerate der Fehlermeldung. Trotzdem wird dein AVI-Clip nicht eingelesen.

    Warum das Video bei dir nicht geöffnet wird, wenn du YUY2 als Ausgabeformat forderst, verwundert schon, eventuell fehlt da ein Farbraumkonverter für VfW. Der FourCC in diesem AVI ist "UYVY", und "YUY2" wäre nur eine Umsortierung der Bytes (Big Endian / Little Endian) in einem 4-Byte-Block (DWORD). Vielleicht hilft es, in der "VFW Codec Configuration" von ffdshow im Decoder-Tab die Raw-Formate zu aktivieren.
    __

    Bei mir ist das aber auch so eingestellt, und es kommt der gleiche Fehler (in VirtualDubMod als Dialog statt Videoclip):

    Zitat

    Avisynth open failure:
    AVISource: the video decompressor couldn't produce YUY2 output
    (H:\Video\Pre1-BM.avs, line 1)

    Lasse ich pixel_type="YUY2" weg, öffnet er es in RGB32.

    Bekanntes Problem auch im doom9-Forum: Uncompressed UYVY AVI fails to load in AviSynth; der BlackMagic VfW-Codec sollte das eigentlich tun, aber genauso gut auch der Microsoft VfW-Codec für unkomprimierte Formate (msyuv.dll). Laut Registry ist der aber bei mir eingebunden:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32] (32-bit-Windows)
    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32] (64-bit-Windows)

    ...
    "vidc.uyvy"="msyuv.dll"
    "vidc.yuy2"="msyuv.dll"
    "vidc.yvyu"="msyuv.dll"
    ...

    Konvertiert dieser VfW-Codec nur nach RGB, aber nicht YUV-Formate untereinander? Mal sehen, ob es hilft, die auf ff_vfw.dll umzuschreiben...
    __

    Ja, das hilft.

    Wenn der VfW-Codec von ffdshow verantwortlich für YUV-Konvertierungen ist, dann ist die Konvertierung zu YUY2 möglich (ohne Vorgabe bevorzugt er YV12).

    VORSICHT! Anwendung ohne Gewähr! Erst Sicherheitskopie des zu ändernden Registry-Zweiges speichern! Installation von ffdshow (32 bit) wird vorausgesetzt, die Decodierung von "Raw"-Formaten in der VFW-Konfiguration muss aktiviert sein!

    yuv_vfw_win32.reg

    Code
    Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]"vidc.uyvy"="ff_vfw.dll""vidc.yuy2"="ff_vfw.dll""vidc.yvyu"="ff_vfw.dll""vidc.iyuv"="ff_vfw.dll""vidc.i420"="ff_vfw.dll""vidc.yvu9"="ff_vfw.dll"

    yuv_vfw_win64.reg

    Code
    Windows Registry Editor Version 5.00
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32]
    "vidc.uyvy"="ff_vfw.dll"
    "vidc.yuy2"="ff_vfw.dll"
    "vidc.yvyu"="ff_vfw.dll"
    "vidc.iyuv"="ff_vfw.dll"
    "vidc.i420"="ff_vfw.dll"
    "vidc.yvu9"="ff_vfw.dll"
  • Zitat

    Warum ist der Pixel_Type YUY2 falsch???

    Der Blackmagic Dekoder kann aus dem vorliegenden AVI kein YUY2 ausgeben (nur RGB24 und RGB32) - deshalb gibt Avisynth eine Fehlermeldung aus.

    Zitat

    Und auch die FPS werden falsch angezeigt (24.000 fps)

    Da Avisynth das Video nicht anzeigen kann wird eine Fehlermeldung ausgegeben, diese standardmäßig mit 24 fps.

    Du musst einen Dekoder verwenden der aus dem AVI direkt YUV ausgeben kann.
    zb. AVI mit Yamb zu UYVY demuxen, mit Rawsource in Avisynth laden
    rawsource("Pre1-BM-Codec-YUV422-Uncompressed-UYVY--Pixel_Type.UYVY", 720, 576, pixel_type="UYVY")

  • Du musst einen Dekoder verwenden der aus dem AVI direkt YUV ausgeben kann.

    Das dürfte mit dem ^ Registry-Patch (oder Installation eines VfW-Codecs, der sich dabei ordentlich für diese Formate registriert) einfacher sein als mit mit dem Demultiplexen von Gigabytes...

  • Zitat

    Das dürfte mit dem ^ Registry-Patch (oder Installation eines VfW-Codecs, der sich dabei ordentlich für diese Formate registriert) einfacher sein als mit mit dem Demultiplexen von Gigabytes...

    sicherlich .... nur als ich meinen Beitrag geschrieben habe wusste ich noch nichts von deinem :)

  • Nachtrag:
    Lautet die Überschrift jetzt Capture oder Caputure?
    Habe es doch gestern Abend noch korregiert ;)


    Dein kurzes Testfile ist sicher nicht in RGB,


    Ganau, es müsste Fachsachlich, richtig so heißen?

    Code
    [U]Video Codec:[/U]
    Blackmagic AVI 8-Bit = Uncompressed YUV 4:2:2 > UYVY



    Nimm mal folgendes Script...Die Benennung Deines Clips habe ich gekürzt und auch vorab vom Audioanteil befreit.

    AVISource("G:\Pre1-BM.avi",pixel_type="YUY2")
    AssumeTFF()
    info()

    AssumeTFF > ist falsch und wird auch falsch angezeigt, da das Video zu 100% Progressiv ist :)


    AviSynth-Fehlermeldungs-Clips haben 24 fps.
    Mit AssumeFPS(25) änderst du die Framerate der Fehlermeldung.
    Trotzdem wird dein AVI-Clip nicht eingelesen.


    Der Blackmagic Dekoder kann aus dem vorliegenden AVI kein YUY2 ausgeben (nur RGB24 und RGB32)
    - deshalb gibt Avisynth eine Fehlermeldung aus.
    Da Avisynth das Video nicht anzeigen kann wird eine Fehlermeldung ausgegeben, diese standardmäßig mit 24 fps.

    Vielen Dank euch beiden, für die gute Erklärung :)


    Lasse ich pixel_type="YUY2" weg, öffnet er es in RGB32.

    Ist das schlimm?
    Verlustfrei ist und bleibt doch Verlustfrei..
    Nur eine Unnötige Umrechnung findet statt, was ja nicht unbedingt sein muß ;)



    Wenn der VfW-Codec von ffdshow verantwortlich für YUV-Konvertierungen ist,
    dann ist die Konvertierung zu YUY2 möglich (ohne Vorgabe bevorzugt er YV12).

    FFDShow fehlt auf meinem PC :D
    Und das mit guten Grund!
    Siehe Beitrag:


    Auf meinen i5 PC, habe ich sehr wenige VfW Codecs installiert und erst recht kein FFDShow / LAV etc...
    Es fehlen somit sämtliche Codec´s / Splitter siehe:
    http://img.xrmb2.net/images/316709.png
    --> Das sind all meine VFW Codecs, die ich auf meinem i5 PC > P8P67 Rev 3.0, drauf habe!


    Zum Abschluß:

    Eventuell Beitrag 6 und 7 aus folgendem Link beachten.
    http://forum.gleitz.info/showthread.php…=drastic+codecs


    Capture ich mit der gleichen USB3 Shuttle statt mit der Blackmagic-eigenen Soft mit DirectShow mit der
    der Software Edius 6.08 und 7.00 sehe ich im Header,folgendes

    Fazit:
    Capturet man mit der Hauseigenen Software: Media Express, dann zeichnet die:
    Blackmagic Intensity Shuttle USB 3.0,
    den Pixel_Type, fälschlicherweiße als RGB32 im Header auf??

    Nachträglich diesen VFW Codec installieren und alles wird gut: http://www.drastictech.com/download_codec.html



    http://www.drastictech.com/download_codec.html

    4 Mal editiert, zuletzt von H264x (30. Oktober 2014 um 14:16)

  • Ist das schlimm?
    Verlustfrei ist und bleibt doch Verlustfrei..
    Nur eine Unnötige Umrechnung findet statt, was ja nicht unbedingt sein muß ;)

    Aber gerade diese Umrechnung zwischen YUV und RGB ist ja gerade nicht verlustfrei. Es kann dabei zu Rundungsfehlern kommen, so dass die Farbauflösung in ungünstigen Fällen nur noch 7 statt 8 bit Genauigkeit hat, und schon das kann man als Banding bemerken.

    FFDShow fehlt auf meinem PC :D
    ...

    Nachträglich diesen VFW Codec installieren und alles wird gut: http://www.drastictech.com/download_codec.html

    Ich sehe eigentlich keinen "guten Grund" dafür, ffdshow zu vermeiden. Er unterstützt vor allem die Decodierung, und die paar wenigen Encoder, die noch drin geblieben sind, sind von höchster Qualität (hatte mal MJPEG-Codecs verglichen; DV sollte ähnlich sein; FFV1 ist als verlustloser Komprimierer auch recht gut neben Ut und Lagarith; und die Huffyuv-Variante in ffvfw unterstützt auch YV12).

  • Aber gerade diese Umrechnung zwischen YUV und RGB ist ja gerade nicht verlustfrei.
    Es kann dabei zu Rundungsfehlern kommen,
    so dass die Farbauflösung in ungünstigen Fällen nur noch 7 statt 8 bit Genauigkeit hat,
    und schon das kann man als Banding bemerken.

    Gut zu wissen :)

    Ich sehe eigentlich keinen "guten Grund" dafür, ffdshow zu vermeiden.
    Er unterstützt vor allem die Decodierung, und die paar wenigen Encoder, die noch drin geblieben sind, sind von höchster Qualität

    Encoder:
    Reichen mir der VFW: UT (Für Verlustfreie Speicherung)
    und Eigenständig: x264.exe (Für Transparente Speicherung)

    Decodierung:
    Ich bleibe bei meiner Meinung, das 2 native AviSynth DLL Dateien, für alles gut sind: L-SMASH Works & FFMS2


    Mit AviSynth und einem einzigen nativen DLL Decoder (LSMASHSource.dll) und dazu einige wenige VfW Codecs,
    kann ich alle Video & Audio Formate öffnen, die für meine Zwecke völlig ausreichend sind!
    Man schaut sich mal die Libavcodec Bibliothek an, die FFMS2 Decodieren kann (Das ist schon gewaltig)
    http://en.wikipedia.org/wiki/Libavcode…ed_video_codecs

    Bis jetzt ist mir noch kein Video unter die Finger gekommen, was Ich nicht Decodieren konnte ;)


    (hatte mal MJPEG-Codecs verglichen; DV sollte ähnlich sein;

    Auch den VFW -> BlackMagic MJPEG Codec?
    [Blockierte Grafik: http://img.xrmb2.net/images/674462.png]

    Bildquali ist tadellos,setze ich aber nicht ein.

    Ich bin der Meinung, der BlackMagic MJPEG Codec, ist somit der Beste von allen MJPEG´s...



    FFV1 ist als verlustloser Komprimierer auch recht gut neben Ut und Lagarith;
    und die Huffyuv-Variante in ffvfw unterstützt auch YV12).

    Wie ich mitbekommen habe, ist jetzt folgendes angesagt ;)

    Jetzt verstehe ich den Grund, warum UT nicht mehr angesagt ist :(
    Da ich nur mit VirtualDub arbeite, reicht doch der UT als Verlustfreier Codec... für meine Zwecke völlig aus!


    Denn diese prof.Digitalisierer setzen je nach Mengenvolumen gleichzeitig dann auch mehrere Capturestationen in Betrieb.
    Hier im Beispiel,warens gleichzeitig 3 Stationen,das geht dann echt zügig.
    Zudem werden hier die Streams noch sep.für eine Zeitdauer von 1 bis 6 Monate abgespeichert,
    dann aber aus Platzgründen nicht mehr unkomprimiert,
    sondern in Lagarith oder in Huffyuv_MT,da ja das Material in Interlaced vorliegt.

    Huffyuv_MT --> Hört sich verdammt Interessant an :)

    2 Mal editiert, zuletzt von H264x (30. Oktober 2014 um 15:46)

  • Hallo H264x


    Warum ist der Pixel_Type YUY2 falsch???


    das Problem mit pixel_type="YUY2" hatte ich auch mal früher und Heuer versucht dass neu nachzuvollziehen.
    Bei diesem einem Rechner mit Windows 7 64-Bit, der seit langen nicht mehr in Betrieb war weil ich ihn nur zu Aufnahmezwecken benutze, wurde ffdshow_rev4533_20140929_clsid_x64 installiert und damit verschwand auch die Fehlermeldung. 32-Bit dürfte keine Ausnahme sein. Zu den voreingestellten Settings gehörten auch die Übernahme der RAW-Filter.

    2 Mal editiert, zuletzt von Rübezahl (31. Oktober 2014 um 21:39)

  • Tja, theoretisch sollte es klappen, wenn man ffdshow installiert hat; praktisch aber scheint es Probleme zu geben, wenn die Unterstützung von Raw-Formaten für den VfW-Codec bei der Installation noch nicht aktiviert war. Eventuell kann die VFW-Konfiguration von ffdshow die Decoder auch nur dann nachträglich neu zuweisen, wenn sie explizit "als Administrator" ausgeführt wird, das hab ich noch nicht überprüft. Vielleicht funktioniert das auch gar nicht, im Gegensatz zur DirectShow-Filter-Konfiguration... Da bleibt nur, alles noch mal im Detail zu testen, eventuell mit Registry-Zweig-Backups.

Jetzt mitmachen!

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