[Ffmpeg-devel] interlace and motion artifacts
Dan Maas
dmaas
Thu Feb 16 02:29:47 CET 2006
> So, I hacked myself a new command-line switch that cycles the image up
> by one scanline. Attached. Use "-shift 1" to reverse the field
> order. I only implented this for PIX_FMT_YUV422P but it should be
> easy to do for other formats.
It should handle 4:1:1 as-is, you can change this:
if(enc->pix_fmt != PIX_FMT_YUV422P) {
to this:
if((enc->pix_fmt != PIX_FMT_YUV422P) && (enc->pix_fmt != PIX_FMT_YUV411P)) {
for 4:2:0, you could do a quick hack by shifting luma as in my patch,
and just leaving chroma alone. (change the upper limit of the first
"for" loop to "chan < 1"). Of course, to do it "right" in 4:2:0 you
would have to implement a real multi-tap resampling filter to shift
the chroma by one-half sample.
(footnote: I was surprised to discover that the chroma up/down
sampling code in img_convert() uses point sampling. Are there any
plans to implement real multi-tap filters?)
Regards,
Dan
More information about the ffmpeg-devel
mailing list