VideoHelp Forum




+ Reply to Thread
Results 1 to 8 of 8
  1. Member
    Join Date
    Nov 2008
    Location
    Australia
    Search Comp PM
    When I capture DV using WinDV and input the avi into avisynth it states it as YV12. Is this what is on the DV tape as RAW or is it being converted to YV12?

    Or should I be forcing the captured avi as YUY2 wich a codec such as Cedocida?

    Isn't
    YUV = 4:2:2
    YUV DV(PAL) = 4:2:0
    YV12 = 4:2:0
    So therefore should I be leaving it as YV12 that is captured from WinDV and use "converttoyuy2" in avisynth to frameserve to CCE?

    I have read threads that people have stated that you should force it to capture as YUY2 which is what CCE uses.
    I want to archive my original DV tapes for future proof/backup so wouldn't it be logical to keep it as original (YV12) so for any future programs that handle YV12 directly it would prevent it from loosing information from colorspace conversion?

    My goal is:
    1: To make a original backups of all my miniDV tapes to either miniDV or HDD (prob both for redundancy)
    2: Make best quality video for viewing on DVD. (makes for backups incase originals are lost/destroyed)

    Any help to enlighten me would be greatly appreciated.

    Thanks

    Josip
    Quote Quote  
  2. Yes, PAL DV is YV12 internally.
    Quote Quote  
  3. Member
    Join Date
    Nov 2008
    Location
    Australia
    Search Comp PM
    Thanks jagabo for your reply.

    So if DV internaly is YV12 then is there any reason to force the capture as YUY2 as opposed to using ConvertToYUY2 in avisynth to conver the colorspace?

    Does one method offer better quality than the other?

    Thanks once again
    Quote Quote  
  4. WinDV is simply taking the DV stream that appears at the firewire port and putting it in an AVI file. There is no choice to convert of YV12 to YUY2. It doesn't even decompress the video. Cedocida won't be used in this process (except maybe to display the video in WinDV's window).

    If you are doing a lot of filtering you might get slightly smoother colors converting to YUY2 before filtering. But the difference would be very hard to see in practice. Some filters only work in YUY2 or YV12 so your choice may be restricted by that. Obviously, you have to convert to YUY2 by the end of the script for CCE to accept the video data. Be sure to use the interlaced=true option, assuming your DV is interlaced:

    ConvertToYUY2(interlaced=true)

    And then set CCE to encode interlaced.
    Quote Quote  
  5. (This is my reply to the same question on doom9)

    Within the DV stream itself, the answer is "none of the above" strictly. The pixel layout depends on whether the DV is NTSC or PAL. In either case, the video is stored as compressed macroblocks consisting of four 8 x 8 Y blocks, one 8 x 8 Cb block and 8 x 8 Cr block (since we are talking about the strict naming, I've used YCbCr instead of YUV). Anyway, for NTSC, the chroma block maps to four horizontally stacked Y blocks (i.e., 32 x 8 ) and for PAL it is 16 x 16.

    Whether you end up with YUV, YV12, RGB etc etc depends upon the *decoder*. It can choose to create a planar image (Y, U and V separate), keep the chroma sampling at one per luma pixel, interpolate to 1:1, duplicate to 1:1 etc.

    So, in short, the *files* are always the same format as the DV stream. The concept of YUV vs. YV12 is strictly irrelevant at that level. Only once you decompress the video does the colorspace become meaningful and that depends on the decoder used.
    John Miller
    Quote Quote  
  6. Originally Posted by JohnnyMalaria
    In either case, the video is stored as compressed macroblocks consisting of four 8 x 8 Y blocks, one 8 x 8 Cb block and 8 x 8 Cr block
    So as not to confuse the OP, this is 4:2:0 subsampling. So YV12 is the equivalent AviSynth color format. I don't remember for sure how AviSynth would convert this to 4:2:2 subsampling. I think it just duplicates the U and V samples (rather than interpolating them).
    Quote Quote  
  7. Member
    Join Date
    Nov 2008
    Location
    Australia
    Search Comp PM
    This leads me to another confussion.
    A lot of people have stated that CCE can't handle YV12 which I believe is incorrect.
    Avisynth used with info() stated that my DV-AVI was YV12. I put the avi file directly into CCE and it accepted it and encoded it with no problems.

    I then encoded the same avi file with Avisynth - ConverToYUY2(interlaced=true) to CCE and compared a single frame and they were both identical.

    Thanks guys for helping me out.
    Quote Quote  
  8. Maybe older versions of CCE didn't accept YV12? I just verified it works accepts both YUY2 and YV12. It also accepts RGB.

    Given that AviSynth duplicates the U and V samples to convert YV12 to YUY2, and the likelihood that CCE will average pairs of U and V samples together to convert the YUY2 back to YV12, you shouldn't any difference between feeding YUY2 and YV12 to CCE via AviSynth. To make JonnyMalaria happy, CCE will convert YUY2 back to 4:2:0 subsampling with groups of four 8x8 Y blocks, one 8x8 block of Cb, and one 8x8 block of Cr, just like DV. LOL
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!