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
[email protected]
https://lists.sourceforge.net/lists/listinfo/mjpeg-users