On Mon, 19 Dec 2005, sean wrote:

> Actually, it seems I made that up. I did capture with dv2.

        Hard enough debugging problems without "creative writing" in the
        bug report :-) 

> So why's lav2wav busting my chops :)

        Don't know.  I've never used the lav* programs with DV data - the DV
        handling is less well developed than it could be.

> OK. I'll get cvs.

        What version were you using?  The 1.8.0 that came out a while back?

> If I get this correctly, DV  ( NTSC? ) records video 4:1:1. 

        Correct.  However "libdv" (which is what mjpegtools/lav* uses to
        process DV data) mangles the data into 4:2:2 using a suboptimal
        superscaling technique (replicates the chroma samples).  Then later
        on that 4:2:2 data gets converted (haven't looked at the code that
        handles  that - I think Matt did it and if so it's doing the best it
        can with the 4:2:2 data).

> dvd mjepg2 is 4:2:0. So my present command "lav2yuv -C 422 | 
       ^
       |
       mpeg2 :)

> yuvdenoise | y4mscaler -O preset=dvd | mpeg2enc ...." - 
> which is the result of an info mesage from lav2yuv - 
> upsamples the dv stream - a Bad Idea.

        It is necessary to re-sample from 4:1:1 to 4:2:0 (which means super
        sampling horizontally but sub-sampling vertically) but the way libdv
        does it (which is what the "-C 422" is doing) is not correct.

        The video processing should be working ok.  It's the audio processing
        (lav2wav) that was having problems  - and for that I don't know what's
        going on.

>   Where does it go to 4:2:0? mpeg2enc? Or does y4mscaler take care of it?

        y4mscaler's taking care of it - part of the "preset=DVD"

        What you'll be able to do with the cvs version is something like:

lav2yuv -C 411 file | yuvdenoise | y4mscaler -O preset=DVD | mpeg2enc ...

        as a side note 'yuvdenoise' has seen a lot of work (improvements) since
        the last release so you'll get the benefit of that as well.

        For DV handling ffmpeg's libavcodec has a much better DV decoder
        than libdv.  Not sure anyone's got the inclination to replace 'libdv'
        with 'libavcodec' in mjpegtools though.

        Building the smilutils (need the cvs version, not the old 0.3.x 
        releases you'll find around the net) with ffmpeg's libavcodec
        is straightforward.  That gives you 'smil2yuv' and 'smil2wav' (counter-
        parts to lav2yuv and lav2wav) which are much more at ease with DV
        data.   The above command undergoes a simple transformation into:

        smil2yuv -a output.wav -i 2 file | yuvdenoise | ...
        (gives the video on stdout and creates the wave file in one command)

        The other thing which just occurred to me is that if you have 
        libquicktime built with ffmpeg's codecs then the new 'qttoy4m' program
        should be able to (never been tested) process Quicktime files 
        containing DV data.  Only thing I've tested qttoy4m and y4mtoqt with
        has been uncompressed formats ('2vuy' and 'v210').

        Have Fun!

        Cheers,
        Steven Schultz



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Mjpeg-users mailing list
Mjpeg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mjpeg-users

Reply via email to