[FFmpeg-devel] attribute_deprecated int avpicture_deinterlace ??

wm4 nfxjfg at googlemail.com
Sat Nov 30 13:31:08 CET 2013


On Fri, 29 Nov 2013 09:16:17 -0500
"Don Moir" <donmoir at comcast.net> wrote:

> 
> ----- Original Message ----- 
> From: "Kieran Kunhya" <kierank at obe.tv>
> To: "FFmpeg development discussions and patches" <ffmpeg-devel at ffmpeg.org>
> Sent: Friday, November 29, 2013 9:16 PM
> Subject: Re: [FFmpeg-devel] attribute_deprecated int avpicture_deinterlace ??
> 
> 
> > On 29 November 2013 13:53, Don Moir <donmoir at comcast.net> wrote:
> >>
> >> ----- Original Message ----- From: "Kieran Kunhya" <kierank at obe.tv>
> >>
> >> To: "FFmpeg development discussions and patches" <ffmpeg-devel at ffmpeg.org>
> >> Sent: Friday, November 29, 2013 8:53 PM
> >>
> >> Subject: Re: [FFmpeg-devel] attribute_deprecated int avpicture_deinterlace
> >> ??
> >>
> >>
> >>> On 29 November 2013 14:06, Don Moir <donmoir at comcast.net> wrote:
> >>>>
> >>>> deinterlacing is directly related to decoding in that you want a properly
> >>>> decoded image and not some effect.
> >>>
> >>>
> >>> Not everybody wants progressive output from interlaced material.
> >>
> >>
> >> Not everybody wants to use avfilter. Deinterlace is already an option but I
> >> don't think people generally want to watch stripes unless maybe they are
> >> high :) .
> >
> > If you want the video in its original form use avcodec, if you want to
> > process the video later (e.g deinterlace) you use avfilter. It's not
> > complicated. I don't need to deinterlace, why do I need deinterlacing
> > bloating up libavutil?
> 
> I suppose you use the bloat provided by avfilter and you are happy with that. I used libavfilter early on to check it out and 


> thought it was pointless and still do and have no need for it at all. I suppose it has utility for some though. 

Except for deinterlacing.

libavcodec just outputs the video frames as-is. It doesn't even bother
to convert it to a pixel format known by the user application. Why
should it care about any form of postprocessing, especially something
as complicated as deinterlacing? There isn't even a single, perfect
deinterlacing algorithm, so I think the deprecated function is really
misplaced in lavc.

Also, I heard the lavc deinterlacer is really awful compared to yadif.


More information about the ffmpeg-devel mailing list