VideoHelp Forum

Our website is made possible by displaying online advertisements to our visitors. Consider supporting us by disable your adblocker or Try ConvertXtoDVD and convert all your movies to DVD. Free trial ! :)
+ Reply to Thread
Page 4 of 4
FirstFirst ... 2 3 4
Results 91 to 116 of 116
Thread
  1. Originally Posted by FLP437 View Post
    Iīm trying to develop some scripts to restore VHS this is the result of one of these scripts applied to the raw sample
    However is not optimized an even less for cartoons , for cartoons is possible to do better
    Quite nice imo!, the restoration is still 16-235? Only bothers me the ghost or fringe in some borders (I guess this is result of sharpening filter?). For example in frame #171 above the piano black keys. If it could be possible to remove it, for me it would be very good. What I like specially is that you have recovered the 'pencil stroke/line' of the drawings (kittens, etc)...

    I guess it comes from comercial VHS tape, or broadcast recording? Could you tell me the deck used, and if its TBC and DNR were on? Was captured directly from SVHS Deck -> svideo -> magewell -> vdub? or did you allow the comb filter in the magewell to do the separation?

    Have you done it in avisynth or vdub?

    Really nice, I like it.

    BTW, I was consifering also the magewell, do you know if it is posible to capture 4:4:4 10 bit from analogue (although it would be overkill)? I am considering capturing 10 bit, to avoid further degradation during editing.
    Last edited by darkbluesky; 31st Dec 2016 at 03:37.
    Quote Quote  
  2. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    The script with which I tried to restore the cartoon was not intended for cartoons, however it gives reasonably results. Is part of a larger VHS script that tries to overcome several others VHS problems.

    A small modification on QTGMC settings give I think slightly better results .The inclusion of the MSUcartoonrestore as a variant seems to improve the 'pencil stroke/line' more but add a little more blurriness, however the balance could eventually be positive for the inclusion of this filter. I extracted the relevant part of the script for use with the cartoon and included it as attachement.

    Again is not optimized for cartons I still have to think how to optimize it but itīs not my priority for now ,but this version address perhaps a little better the situation and the ghost or fringe in some borders seems almost gone.

    Yes you are right the cartoon sample is from a commercial VHS tape and no problems with macrovision perhaps the TBC will full frame synchronizer included in the magewell. The deck used as been the JVC HR-S9500 and during recording TBC/NR , B.E.S.T and EDIT were ON but Digital3R and Video Stabilizer were off. The capture as been made directly to the magewell card from svideo deck output to the magewell svideo input and I used Vdub and Huffyuv / utvideo for capture.

    The comb filter that the Magewell and others cards do have I think are only useful if using composite input for capture that itīs not been the case.
    The restore as been done using Avisynth

    Related to the Magewell I am very satisfied and I think itīs one of the best if not the better card that can be bought now days for this segment of price . The TBC with full frame synchronizer itīs outstanding , never again you will have a lost or inserted frame , well it can happen but itīs very rare but if you repeat it doesīt happen again and in 99,5% it doesnīt happen at all.
    The quality is also very good similar and some times better then the one I could get using the Panasonics DVD recorder as ADC and capture device and recording over HDMI.

    Does the Magewell support 10bits captures?

    Yes you can capture YUV 4:4:4 10bit

    Magewell Support for 4:4:4 10-bit output formats: V410, Y410
    More output formats are supported via Pro Capture SDK ,but I dont know how to use the SDK

    Y410 YUV 4:4:4 packed 10-bit.
    V410 YUV 4:4:4 packed 10 bit ( YUV version of R210/R10K)

    other direct formats supported:
    Support for 4:2:2 8-bit output formats: YUY2, YUYV, UYVY
    Support for 4:4:4 8-bit output formats: V308, IYU2, V408, BGR24, BGR32
    Support for 4:2:0 8-bit output formats: NV12, I420, YV12

    The problem is I donīt know of a 10 bit compress/decompress codec for VirtualDub working in YUV 4:4:4
    The only one I know working in 10 bit is UTvideo but the v210 format (YUV422 10bit, YCbCr ) is not compatible with the Y410 or V410 and the 2 other are RGB .Also MagicYUV and Cineform (not completely lossless) have 10 bit support but donīt have support to Y410/V410 so only uncompressed capture can be done, but after there will be no codec available to decompress..


    UTvideo 10 bits
    FourCC - Codec name - Internal format - VCM / DMO - QT
    UQRA , UtVideo Pro RGBA 10bit , RGBA 4:4:4 10bit b64a b64a
    UQRG , UtVideo Pro RGB 10bit , RGB 4:4:4 10bit b48r, b64a b48r, b64a
    UQY2 , UtVideo Pro YUV422 10bit, YCbCr 4:2:2 10bit v210 v210

    Also virtualdub doesnīt support 10 bits video processing as for now, so even if you capture in 10 bit there are no filter to use with in virtual dub and for avisynth Iīm not sure but if they exist they probably are less then a handful versus hundreds in 8 bit.

    I was also considering that possibility but it does not seem practically for now or even possible with virtualDub /avisynth and currents tools associated. To do it it will be necessary a completely different 10 bit pipeline.

    script used ( about 7-8 fps)

    Code:
    SetMTMode(5,8)
    SetMemoryMax(1024)
    LoadVirtualDubPlugin("c:\Program Files\Virtualdub 1.9.11\Plugins\MSU_cartoon_restore.vdf","MSUCartoonRestore", 0) 
    AviSource("E:\New Captures\AristoCats1.avi").AssumeTFF()
    #SetMTMode(2)   # some filters seems to work only with MTmode 5 or 6
    ConvertToRGB32(matrix="Rec601",interlaced=true)  # update matrix Pc.601(0-255)/Rec601(16-235)
    #MSUCartoonRestore("simple", Smoothness, Threshold, GPUUsage)
    MSUCartoonRestore("simple", 1, 25, 1)
    ConvertToYV12(matrix="Rec601",interlaced=true)
    QTGMC( Preset="Slower", EdiThreads=8, SourceMatch=3, MatchPreset="Slower", MatchPreset2="Slower", TR2=2, Lossless=2, MatchEnhance=0.8, NoisePreset="Slower", NoiseProcess=1, NoiseRestore=0.4, EZDenoise=0.75, Denoiser="dfttest", DenoiseMC=true, Sigma=2, ChromaNoise=True) 
    Stab()
    UnsharpHQ(THRESHOLD=20, SHARPSTR=4.0, SMOOTH=0.5, SHOW=false) 
    AutoAdjust(high_quality=true, threads_count=8)  
    SmoothTweak(HQ=true, saturation=1.3, contrast=1.4, brightness=0, useMT=1)
    Crop(10, 6, -10, -14) 
    AddBorders(10,8,10,8)
    Spline64Resize(720, 576)
    SetMTMode(1)
    GetMTMode(false) > 0 ? distributor() : last
    Note: some filters seems to only works with MT mode 5 or 6 with mode 1, 2 or 3 the script crash

    In the case of Utvideo is possible to use VCM or DMO compressors versions I think the VCM (vfw) are older and the only ones compatible with virtualdub however using a tool as graphedit is possible to use others compressors namely the DMO versions but I donīt know for sure If they have advantages and what they are.
    Image Attached Files
    Last edited by FLP437; 4th Jan 2017 at 15:09.
    Quote Quote  
  3. Thank you very much for your explanations, and the script. I'll try it as soon as possible. The avi is more balanced, more refined, I'll like it, there I can't see more ghosting than in the original, but the rest is much improved.

    For the 10 bit thing, -as I don't know how to use the SDK neither- I guess that I have two options with the magewell:

    1. Capture 444 10b uncompressed, do color editing in Premiere (or avisynth with the high color depth trick -to be checked-), then convert to 422 10 or 8 bit for the rest of restoration.
    2. Sheervideo seems to make a 444 10 bit lossless codec, but it is not free.

    Anyway, it should be checked that avisynth can work in 444 10 bit, with most of its filters... I'll search that topic.

    Edit: corrected typos
    Last edited by darkbluesky; 7th Jan 2017 at 08:38.
    Quote Quote  
  4. I came up with this:

    Code:
    AviSource("AristoCats1.avi")
    ColorYUV(gain_y=85, off_y=-13, gamma_y=50, cont_u=90, cont_v=90)
    ConvertToYV12()
    vinverse()
    dehalo_alpha(rx=2.5, ry=2.5, BrightStr=1.3)
    Stab()
    TemporalDegrain(SAD1=200, SAD2=150, sigma=8)
    aWarpSharp(depth=5)
    Hysteria(strength=2)
    FastLineDarkenMod()
    Sharpen(0.5, 0.3)
    Santiag()
    Crop(10,6,-20,-10)
    AddBorders(8,8,6,8) # only if you need DVD frame size
    Adjust that final Sharpen() to taste.
    Quote Quote  
  5. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    @darkbluesky
    V410/Y410 uncompressed YUV 4:4:4 10 bit gives a video stream with 332 Mbps and a file with 2,3 GB / minute so a SSD or a raid will be convenient. Also with a 138 Gb /hour is perhaps more adequate for an intermediary format then for archive IMO. I have tried the recorded files with the MPC-HC player that does include a v410 decoder( but not a y410 ) and they work fine.

    The problem is the lack of a vfw lossless codec supporting YUV 4:4:4 10 bit.

    Shervideo stopped their codec development in 2011 I think, the codec however did support a broad variety of bit depth, color spaces and chroma sub-sampling formats namely the v410/y410, However Iīm not sure if VDub could use it or not I think it was more used as a component codec for quicktime,

    The site of sheervideo is still on-line with all the information and is possible to download a try out but it seems itīs not possible anymore to buy the product, perhaps the try out doesn’t expire anymore and itīs offered for free? Also this codec I think provided lossless color space conversions.

    http://www.bitjazz.com/

    Related to avisynth and bit depth support you can look at this document , it is a little outdated but gives some information, I donīt think it have changed that much and if not the support is limited.

    http://avisynth.nl/index.php/High_bit-depth_Support_with_Avisynth

    Perhaps others can give additional information about this matter

    Another possibility could be the free VP9 profile 3 codec (from google ) it supports YUV 4:4:4 10 bit , I think it does lossless compression.

    Adobe premiere at least CS6 version doesn’t seem to be able to import v410/y410 (however it does import v210 10bit 4:2:2 ) the vp9 provides a plug-in for adobe that I have not been able to test that theoretical could give premiere support to vp9 and perhaps to v410.

    However VP9 uses Vorbis or Opus as audio codecs so eventually it will be necessary to demux the PCM original audio or perhaps not?

    https://www.webmproject.org/vp9/profiles/

    http://www.fnordware.com/WebM/

    If you can get v410 in premiere after adjusting exposure and correcting colors you can export to v210 10 bit (4:2:2 ) utvideo ( 59,5 Mbps) or gopro cineform 10 bit ( picture lossless not completely lossless 8,5 Mbps) and with this files you can work on Vdub and or avisynth however they will be converted to 8 bit in vdub and to avoid conversion on avisynth the filters you can use are limited. Another possibility is to frame serve directly from premiere to VDub using Debugmode FrameServer

    http://www.debugmode.com/frameserver/

    If you only use YUV filters in premiere you can frameserve directly in YUV to avisynth/Vdub avoiding a color space conversion and getting better quality.
    I am including a small sample of v410 with that you can try to see if you can import it in premiere with VP9 or sheervideo or find a way to read it in virtualdub /avisynth.

    @ jagabo
    thank you for your script Iīm sure itīs much better then mine that was not intended for cartoons . I will try it
    Image Attached Files
    Quote Quote  
  6. A lot of interesting information which I did ignore. I'll try to dig into it. Tx a lot!

    The V410 sample is captured from the magewell as uncompressed 444 10b? Which capture software has you used?
    Quote Quote  
  7. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    The capture software as been VirtualDub and the capture as been made using the magewell
    Quote Quote  
  8. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    @ jagabo
    I tried your script and the results were exceptional it doesn’t seem at all that the source is a VHS tape it seems the capture and your restoration are both very good. The specific cartoons filters that you introduced made a significant and major difference.

    One thing that caught my attention has been the no introduction of a de-interlace option considering that the file is interlaced. It's because the cartoons do not need to be deinterlaced as they are a sequence of still images and the type of movement seen in normal film doesnīt exist here?

    However as I always like to play around a little ( no better way to learn ) I still want to try some alternatives namely stab() / StabMod(), Sharpen / UnsharHQ, Santiag / Xaa, etc to see if I still can get some additional benefit.

    I have also tried to capture in gopro cineform ( picture lossless ) 10bit (yuv 4:2:2) at maximum quality – filmbase2 (about 52.5 Mbps very similar to lossless utvideo 8 bit 4:2:2 54,5 Mbps) and it seems the results are also very similar , I don’t know for sure which one provides better results. If it provides similar quality it could be an alternative to utvideo/huufyuv as a cross-platform intermediate codec and archive format as it works fine with Vdub/avisynth and with Premiere Pro.

    However there is one situation that seems weird and may limit or prevent the use of this format with this workflow, even selecting interlaced the result always seems to be progressive no matter the option I choose. Perhaps for cartoons this is not a problem but for normal films it could be I think.

    10 bit captures

    I made some limited tests and have not been able to read/import v410 (yuv 444 10 bit) files within virtualdub/avisynth or Premiere Pro

    Shervideo component extension for QuickTime theoretically should support v410 files but I donīt have been able to read the files with the extension mounted.

    VP9 profile 3 supports yuv 444 10 bit however I have not tried it , probably it will not work as the files seem to have a different wrapper webm, and also due to audio codec differences.

    FFV1 does support YUV 444 10 bit however the vfw ffdshow implementation supported by VirtualDub seems to support only 8 bit.

    So I am out of ideas to read / import a v410 file in Premiere or VDub/Avisynth

    My only last idea If nobody knows a way to import a v410 file in premiere or VDub/avisynth is to convert using FFMpeg from v410 to v210 or eventualy to Apple ProRes or Avid DNxHD.

    I made a first try but got an error

    ffmpeg –i sample410.avi –codec:v v210 –pix_fmt yuv422p10le sample210.avi

    I think iīm not using the correct sintax as itīs first time Iīm using FFmpeg perhaps somebody could correct me and present the correct command to convert from v410 to v210 yuv 422 10bit or Prores or DNxHD.

    I will eventually try a GUI QMC ( quick media converter) for FFMpeg from cocoon software however for more esoteric formats probably could be no better then the command line itself.
    Image Attached Files
    Quote Quote  
  9. Originally Posted by FLP437 View Post
    One thing that caught my attention has been the no introduction of a de-interlace option considering that the file is interlaced. It's because the cartoons do not need to be deinterlaced as they are a sequence of still images and the type of movement seen in normal film doesnīt exist here?
    The frames of the frames were all progressive. It's common for film sources to be sped up to 25 fps and left progressive. Sometimes you need to use TFM() first to recombine fields with PAL caps.
    Quote Quote  
  10. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    After searching a little more I just found a way to import v410 files in avisynth and the results using these files seem Awesome

    Code:
    ffvideosource("samplev410.avi",enable10bithack=true)
    f3kdb_dither()
    #converttoyv12() #note that converttoyv12() was only needed because ColorMatrix probably doesn't supports yv16 colorspace.
    #ColorMatrix(mode="Rec.709->Rec.601") #this is because avisynth works with 601 not 709 colorimetry
    #converttorgb32(matrix="PC.601") #this is because we need conversion without modifying levels and VDub scales any YUV input
    I think only the 2 lines are necessary as the files have bt.601 and are 16-235 if they are full scale 1-255 the pc.601 will be needed probably

    used the patched FFMS2 ( hacked for 10 bits ) and the f3kdb_dither in the avisynth plugins folder et voilá a superb image from a v410 file
    Last edited by FLP437; 9th Jan 2017 at 23:10.
    Quote Quote  
  11. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    @ jagabo
    "The frames of the frames were all progressive. It's common for film sources to be sped up to 25 fps and left progressive. Sometimes you need to use TFM() first to recombine fields with PAL caps."

    Could the fact that the capture with the gopro cineform codec always going to progressive be related with this situation
    Quote Quote  
  12. I have managed to import the V410 sample in Premiere Pro, I did re-encode it with FFmpeg as FFV1 (everything default), then it can be imported to Premiere (as I don't know FFmpeg syntax and have little time now, I have used myFFmpeg for re-encoding).

    The problem is that FFV1 is a slow codec and if the file is saved in a WD Black HDD, when you play it in the clip preview or timeline preview, it plays some frames and then the playing continues but with the preview image freezed. If you sweep the clip manually frame by frame and wait few seconds (it decodes and show all the frames, but it takes a lot of time if the clip is long).

    I tested the clip also from an SSD Sandisk Ultra II 480 Gb (not the fastest around, but still an SSD), and it improved a lot, still does not play all the frames the first time you playback the clip, but if you add it to timeline and play it back a few times, it will decode everyframe -more or less in realtime with some lag- and from then and on you can preview/play it inside Premiere without lag (at least in my rig, which does not have SATA3).

    I wonder how it would behave with a 90 minutes clip, though.

    And to continue the editing outside Premiere, I guess it has to be exported, but I guess it depends of the next steps to decide one codec or other.

    It could be very convenient though to import and filter in avisynth in 444 10bit. I'll check your script FLP437.
    Last edited by darkbluesky; 10th Jan 2017 at 14:16.
    Quote Quote  
  13. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    Is the converted FFV1 444?

    I think that perhaps a good compromise could be v410 conversion to v210 - YUV 422 10 bit, it seems to be a better cross-platform intermediate codec and eventually even an archive format. I converted v410 to v210 lossless with FFMpeg ( using the Quick media Conversion GUI for FFMpeg as I have not been able to find the correct syntax for the conversion using the FFMpeg command line). If you find the correct syntax let me know.

    V210 can be imported by Premiere, is fast ( I think it will be completely different from FFV1 and the problems you have experimented with, will probably vanish ) , Premiere can also export again in v210 ( utvideo v210 lossless).

    You can open v210 in avisynth (10-bit videos in their native format 4:2:2 and 4:4:4 are supported with the hacked FFMS2) with the procedure indicated in my post #100 and virtual dub can also read it if you have utvideo installed and you can save again in the same format. However in Vdub if you use filters it will convert I think to 8 bit loosing some information.

    Also v210 lossless is more compact then v410 uncompressed obviously and so could be a candidate to be used as a file format for archive .I read somewhere that high bit depth formats compress better.

    However even between v410 yuv 444 10 bit and yuv 422 8bit the difference is minimal for SD sources, is very hard to detect differences but I think if we search hard they are visible. Also itīs very difficult to do a restoration pipeline that does not crush some information as most of filters are 8 bit and most of them only work in YV12 (4:2:0) so itīs almost impossible not to loose some information in the process and capturing more information seems less important as we are not able to retain it.

    However for SD formats I think it could eventually be useful to retain 10 bit files for archive as the space is still acceptable( a little big but.... ) and the future could bring better tools and the possibility to make a full restoration pipeline in 10 bit without having to buy costly professional stuff , in this context for SD it seems to me that going from 444 to 422 is less important as SD sources donīt have enough Chroma information that going from 10 bit to 8 bit,however I can be wrong

    I also donīt know about the conversion quality using FFmpeg and Lav filters I hope itīs a good one and information is not lost in the process but I don’t know for sure.
    Image Attached Files
    Last edited by FLP437; 10th Jan 2017 at 21:17.
    Quote Quote  
  14. Hi.It's very interesting this thread.
    I haven't experience in capturing video but I think that Vapoursynth could be useful for a 10bit pipeline,it's nearly the same of avisynth but it support natively high bit depth .
    Vapoursynth has that work in 8,10,16,32 bit qtgmc,nnedi,eedi,dehalo,dering, mvtool,some denoiser,etc...and it has a very good matrix,primaries,transfer curve conversion even for dci or bt2020 hdr.
    Quote Quote  
  15. Originally Posted by FLP437 View Post
    Is the converted FFV1 444?
    Yes, this is mediainfo capture:

    Click image for larger version

Name:	Image 3.png
Views:	143
Size:	36.3 KB
ID:	40274


    Originally Posted by FLP437 View Post
    V210 can be imported by Premiere, is fast ( I think it will be completely different from FFV1 and the problems you have experimented with, will probably vanish ) , Premiere can also export again in v210 ( utvideo v210 lossless).
    I tested with FFV1 V210, there are less issues, although still a little. Much less anyway, I have not managed to convert to ut v210 with ffmpeg though, I'll keep trying.

    Originally Posted by FLP437 View Post
    You can open v210 in avisynth (10-bit videos in their native format 4:2:2 and 4:4:4 are supported with the hacked FFMS2) with the procedure indicated in my post #100 and virtual dub can also read it if you have utvideo installed and you can save again in the same format. However in Vdub if you use filters it will convert I think to 8 bit loosing some information.

    ...

    However even between v410 yuv 444 10 bit and yuv 422 8bit the difference is minimal for SD sources, is very hard to detect differences but I think if we search hard they are visible. Also itīs very difficult to do a restoration pipeline that does not crush some information as most of filters are 8 bit and most of them only work in YV12 (4:2:0) so itīs almost impossible not to loose some information in the process and capturing more information seems less important as we are not able to retain it.
    I am not sure, but I read the hack tricks avisynth as if it would work twice, first the first 8 bits and then the second block of 8 bits (so 16 bits, not real 10 bits, but anyway), can we assume then that all the filters of avisynth will work in 10 bits, or the hack only allows to open the file?


    Originally Posted by FLP437 View Post
    However for SD formats I think it could eventually be useful to retain 10 bit files for archive as the space is still acceptable( a little big but.... ) and the future could bring better tools and the possibility to make a full restoration pipeline in 10 bit without having to buy costly professional stuff , in this context for SD it seems to me that going from 444 to 422 is less important as SD sources donīt have enough Chroma information that going from 10 bit to 8 bit,however I can be wrong.
    Yes, I guess I agree too.
    Quote Quote  
  16. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    @age
    Yes vapoursynth is an option however I have an ecosystem based in virtualdub/avisynth and this is somewhat of a disruption not to speak of a new learning curve , python new syntax different filters.
    However it's an application which I want to evaluate and monitor it's development and if I can see a clear advantage and a short learning curve make a eventual transition in the near future.
    Quote Quote  
  17. Any clue if this http://www.magewell.com/pro-capture-hdmi is based on Analog Devices ADV7842?
    Quote Quote  
  18. Member
    Join Date
    Feb 2008
    Location
    Poland
    Search Comp PM
    Originally Posted by leonid_makarovsky View Post
    Any clue if this http://www.magewell.com/pro-capture-hdmi is based on Analog Devices ADV7842?
    Are you kidding? It is described in this thread.
    Quote Quote  
  19. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    Yes I can re - confirm it is developed around an ADV7842.
    You can see some info post #56 attached files - Magewell specs. zip does include one card photo where the ADV7842 chip is visible.
    You can also see post #57 attached file - memory on board - detailed hardware /software identified on card, where it is visible the amount of memory installed.
    Quote Quote  
  20. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    Some additional notes about the Magewell hdmi pro capture card.

    After contacts established between another member and Magewell , Magewell apparently clarified that they do have choose not to implement the Advanced time-base correction (TBC) with frame synchronization and 3D comb filter even if these features are integrant part of the ADV7842 ( main card chipset ) and all requirements were met namely memory in excess of 128 MB ( card has 256 MB fast in board memory). Apparently they choose instead using the significant amount of memory installed to implement a multiple buffer system that they say completely avoid lost frames if the transfer speed is enough. As the interface is PCIe 2.0 transfer speed is really not a problem. Related to the 3D Comb I tried using the Snell & Wilcox tests a capture using the composite input and it seems indeed that the 3D comb filter is also inactive.

    Itīs a pity as apparently according to http://forum.lddb.com/viewtopic.php?p=81549#p81549 the 3D comb from the ADV7842 itīs the best ever. It seems that analog is really not a priority for the capture card makers in this moment and even when they have the possibility to make an outstanding card in what analog is concerned they choose to prioritize digital and neglect analog.

    Even so I continue to find this card to be one of the best in its class.
    Quote Quote  
  21. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    Magewell 10 bit capture some details and thoughts

    The manual refers it can capture v410 and Y410 however it can capture out of the box
    V410 Packed 4:4:4 10 bit
    Y410 Packed 4:4:4 10 bit
    P210 Planar 4:2:2 10 bit
    P010 Planar 4:2:0 10 bit
    All of them uncompressed formats, also RGB10 /BGR10 as part of a grand total of 34 formats through the SDK.

    VirtualDub FilterMod a VirtualDub fork under active development does provides significant benefits related to the standard version and for 10 bit files it does have clear advantages as it does support high bit depth and in this case P210 and V410 without problems . It also provides a large set of improvements namely support to FFV1, 8 to 16 bit, RGB/RGBA and YUV 4:4:4 to 4:2:0 , X264 10 bit, V210, Apple ProRes, Lagarith , full control about colorimetry and levels and pixel formats to name just a few advantages. I found it also to run avisynth scripts faster than the standard version.

    So in this case the more interesting 10 bit formats to capture from this card are indeed

    P210 Planar 4:2:2 10 bit – 332 Mbps – 2.32 GB/min
    V410 Packed 4:4:4 10 bit – 332 Mbps – 2.32 GB/ min
    ( SSD or raid will be necessary due to the significant bandwidth )
    MagicYUV 10 bit YUV 4:2:2 lossless - 83,5 Mbps -0,61 GB/min

    The last one is another interesting possibility allowing direct 10 bit capture to lossless ( as this codec accepts the uncompressed p210 provided by the board) .The codec is fast, compress well and the bandwidth is compatible with all standard hard discs.

    V410 can be used directly in standard Avisynth with FFVideoSource.enable10bithack=true ( hacked FFMS2 to support High bit depth) otherwise any of these ( p210, v410, MagicYUV 10 bit 4:2:2) can be transcoded to v210 uncompressed, FFV1 10 bit lossless, H.264 10 bit lossless, UTvideo YUV /RGB 10 bit lossless or MagicYUV YUV / RGB 10 bit lossless, with virtualDub FilterMod or with FFmpeg ( recent FFmpeg versions already support MagicYUV (decoding only)). Standard Avisynth or Premiere Pro do work with FFV1 , H264 and v210.

    On standard Avisynth itīs mandatory to convert to stack16 and do a hybrid 16/8 bit restore script outputting in the end as staked or interleaved 16 bit, pure 10 bit or 8 bit to a compressor for as X264/x265. I have yet not tested with Avisynth+ also under active development , however it seems to have already proper 10bit+ color depth support and no longer requires the stacked hack. Support for a number of 10bit+ pixel formats through AviSource and DirectShowSource was also added, so it should be able to read high bit depth formats and also read MagicYUV AVIs directly through those sources filters. Also avisynth+ should be able to run currently avisynth scripts running in standard version 2.6 with minor modifications and probably faster ,avoiding for now a change of paradigm forced by vapoursynth migration to get full 10 bit support for instance. Also a lot of filters are being adapted to support high bit depth ( not all for now so a hybrid 16/8 bit should still be necessary).

    So I do think that VirtualDub FilterMod and Avisynth+ could be interesting and useful alternatives for anyone wanting to begin using 10 bit captures and not intending to change immediately to VapourSynth as it is significantly different as has perhaps a significant learning curve.

    MagicYUV 10 bit allowing a direct lossless capture could be a good codec to choose from but for now I need to confirm it will run smooth less with avisynth+ . I already confirmed it does work with recent FFmpeg versions ( decode only ) and so itīs possible to transcode to whatever format FFmpeg does support , for me the only drawback is not being able to use it directly with Premiere (as Premiere cannot read any deep color format through VFW/AVI, only eventually QuickTime ) However itīs possible to transcode to whatever we need FFV1 for instance as it is a well-balanced and flexible codec with relatively good speed and high compression for various presets generally well accepted by most applications including NLEīs, v210 (uncompressed) generally also well accepted too ,H264 or Apple ProRes 10 bit / GoPro Cineform 10 bit (not lossless but with a light compression).

    SD Pal Source 720x576 (v410 source file transcoded to XXX using VirtualDub Filter Mod) - approximated values to give an order of magnitude :
    FFV1 YUV 4:4:4 10 bit - 101 Mbps , 0,71 GB/min
    FFV1 YUV 4:2:2 10 bit - 81 Mbps , 0,57 GB/min
    FFV1 RGB 10 bit Lossless – 134 Mbps , 0,94 GB/min
    V210 Packed 4:2:2 10 bit uncompressed - 221 Mbps, 1,55 GB/min
    H264 YUV 4:4:4 10 bit lossless – 107 Mbps, 0,75 GB/min
    H264 YUV 4:2:2 10 bit lossless - 84,5 Mbps , 0,59 GB/min
    MagicYuv 4:2:2 10 bit lossless – 83,4 Mbps, 0,58 GB/min
    MagicYuv RGB 10 bit lossless - 134 Mbps , 0,94 GB/min
    Utvideo YUV 4:2:2 10 bit lossless - 88 Mbps , 0,62 GB/min
    UTVideo RGB 10 Bit lossless - 136 Mbps , 0,95 Gb/min
    GoPro Cineform FS2 4:2:2 10 Bit – 43,7 Mbps , 0,31 GB/ min
    Apple ProRes PRO YUV 4:4:4 HQ (2) 10 bit – 68,6 Mbps , 0,49 GB/min
    Apple ProRes PRO YUV 4:2:2 HQ (2) 10 bit – 58,4 Mbps , 0,42 GB/min
    Mostly can be wrapped in AVI or MOV

    So FFV1, V210 or H264 seems good candidates to intermediary codecs ( they work with Avisynth standard or plus , virtualdub standard or Mod and Premiere ) and FFV1 , H264 or MagicYUV could be good candidates for masters to avoid the large uncompressed files.
    Quote Quote  
  22. Member
    Join Date
    Feb 2008
    Location
    Poland
    Search Comp PM
    Originally Posted by FLP437 View Post
    Magewell apparently clarified that they do have choose not to implement the Advanced time-base correction (TBC) with frame synchronization and 3D comb filter even if these features are integrant part of the ADV7842 .
    Shame on Magewell!
    Quote Quote  
  23. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    Optional / Alternative capture methods for use with the Magewell HDMI Pro capture board

    Beyond the traditional methods using virtualdub or other applications based on directshow (OBS, AmarecTV, etc, ) there are some others that can present eventual interest so Iīm sharing some ideas about them

    Workflow in graphstudionext

    Image
    [Attachment 43900 - Click to enlarge]

    The advantage of this method is that it does allow for any video format supported by the card ( out of the box- 8 bit- YUY2, YUYV, UYVY, NV12, I420, I422, YV12, V308, IYU2, V408, BGR 24bits,BGRX 32Bits, YV16, NV16, NV61 10 bit- V410, Y410, P010 e P210) but also any number of audio channels maximum 8 and sample rate up to 192000 hz. With Virtualdub is not possible to go beyond as far as audio is concerned as 2 channels and 96000 hz sample rate.

    So for anyone interested in video captures with up to 8 audio channels and sample rates up to 192000 hz this can be one possibility, However the dshow filter doesn’t allow to change the audio bit depth so only 16 bit seems possible, although the card supports values up to and including 64 bit.

    Another possibility to capture multiple channels with high sample rates and high bit depth is to use the utility provided to exemplify the SDK use , the MultiAudioCapture ( with LibMWCapture.dll). However it only captures what it receives itīs not possible to change anything, channels number, sample rate or bit depth , you will get exactly what you had provided to the card. However this will use two different applications one for video and one for audio so a synchronized launch will be necessary, one workaround could be a “ mouse” macro utility as MouseRecorder for instance that does allow to record the macro and launch both application almost simultaneous , but even with the synchronized launch small adjustment could be eventually necessary.

    Capture video in high bit depth 10 bit

    The card provides as said before several 10 bit formats (YUV 4.2.0, 4.2.2 and 4.4.4 10 bit - P010, P210,and V410, Y410 ).Capturing them uncompressed pose no special problem with VirtualDub or VirtualDubFilterMod for instance ,however the files are quite huge. The ideal will be to capture directly to lossless on the fly. In this case the only possibility is to use P210 ( YUV 4:2:2 10 bit) and record using Magic YUV that does support p210. MagicYUV files can after be opened with avisynth+ , VirtualDub, VirtualDubFilterMod or transcoded with FFmpeg or VirtualDubfilterMod to any other format FFV1, Utvideo, X264 lossless or any other.

    Another possibility is to capture and transcode simultaneous on the fly to a lossless format directly with FFmpeg. using the FFmpeg dshow support facilities

    To FFV1 10 bit (lossless) could be done also to utvideo or any other lossless

    Code:
    FFmpeg64 -threads 8 -f dshow -video_size 1920x1080 -framerate 25 -vcodec v410 -rtbufsize 702000k -i video="Video (00 Pro Capture HDMI)":audio="Audio (00 Pro Capture HDMI)"  -acodec pcm_s16le -ar 48000 -ac 2 -vcodec ffv1 -level 3 -coder 1 -context 1 -g "1" -slices 24 -slicecrc 1 -y "E:\Test_FFV1.avi"
    FFV1 8 bit 4:4:4

    Code:
    ffmpeg64  -threads 8 -f dshow -video_size 1024x576 -framerate 25 -vcodec v308 -rtbufsize 702000k -i video="Video (00 Pro Capture HDMI)" -f dshow -i audio="Audio (00 Pro Capture HDMI)" -acodec copy -vcodec ffv1 -level 3 -coder 1 -context 1 -g "1" -slices 24 -slicecrc 1 -y "E:\Test_FFV1_8b.avi"
    Utvideo 8 bit 4:4:4
    Code:
    ffmpeg64 -threads 12 -f dshow -video_size 1024x576 -framerate 25 -vcodec v308 -rtbufsize 702000k -i video="Video (00 Pro Capture HDMI)" -f dshow -i audio="Audio (00 Pro Capture HDMI)" -acodec pcm_s16le -ar 48000 -ac 2 -vcodec utvideo  -pix_fmt yuv444p -pred median -y "E:Test_utvideo_444_8bit_loss.avi
    To 10 bit X264 lossless
    (FFmpeg as to be compiled with support to 10 bit x264)

    Code:
    FFmpegHI10 -threads 8 -f dshow -video_size 1920x1080 -framerate 25 -vcodec v410 -rtbufsize 702000k -i video="Video (00 Pro Capture HDMI)" -f dshow -i audio="Audio (00 Pro Capture HDMI)"  -acodec pcm_s16le -ar 48000 -ac 2 -vcodec libx264  -preset ultrafast -crf 0 -pix_fmt yuv444p10le -y "E:\Test_X264_10bit_loss.avi"
    This results in about 1GB /min for X264 10 bit lossless and 1,5 GB/min for FFV1 which are about 3-4 times less than the uncompressed files. The 10 bit x264 compress quite well. The CPU load is limited between 16-20% for the x264 and between 40-60% for the FFV1 on an Intel Core i7-6700K with 7% overclock: there are no drop frames if no other tasks are active.

    FFV1 10 bit do dither to 8 if opened in Premiere Pro but X264 10 bit lossless opens correctly as 10 bit in Adobe Premiere.

    The ffmpeg dshow for Magewell hdmi pro only allows YUV2 8 bit (default), v308 YUV444 8 bit, v408 YUV 4444 8 bit and v410 YUV 444 10 bit. In terms of audio it defaults to ch=2, bits=16 and rate= 44100.

    Video_size is usually up to 2048 x 1536 max, however the the FFmpeg dshow filter does state a max 2048x2880 fps=200 (I have not tried)

    Magewell does provide a plugin for Premiere but itīs of very limited interest it does capture in mp4 with very basic properties values

    Related to use with virtualdub or virtualdubfiltermod there are good probabilities that magicyuv will be supporting v410 and v308 in the near future so it will be easy to capture directly to lossless from these uncompressed streams formats .Also there is some possibility that utvideo will support p210 so capture to utvideo 422 10 bit will be also eventually possible to do.
    Image Attached Files
    Last edited by FLP437; 2nd Dec 2017 at 23:10.
    Quote Quote  
  24. Member
    Join Date
    Mar 2015
    Location
    Europe
    Search Comp PM
    With version 18 of VirtualDubFilterMod most of these situations are solved in a direct way. It will be possible to capture directly for instance to FFv1 or other codecs.Also support to 8 audio channels was also included. I will see how the magewell works with this new VDFM version.
    Quote Quote  
  25. Member
    Join Date
    Apr 2018
    Location
    France
    Search Comp PM
    Hi All! Based on this very interesting thread I have acquired and installed the Magewell Capture Pro HMDI PCIe card and VirtualDub. Being new to both, I am ashamed to admit that I have difficulty locating the driver settings/panel for the Magewell card as extensively discussed here. The card and driver are correctly installed as per Magewell's instructions, and I tried both VirtualDub (1.10.4, 32-bit) and VirtualDub2 (41585, 64-bit) on a Windows 10 machine. Settings are accessible through the Magewell Capture Express software. I'm probably missing something very stupid but Google has been of no help. Hope you can... Thanks for your help!
    Quote Quote  



Similar Threads