[FFmpeg-devel] [PATCH] swscale/options: switch default to bicubic

Michael Niedermayer michaelni at gmx.at
Sun Oct 6 10:57:32 CEST 2013


On Thu, Oct 03, 2013 at 10:50:34AM -0400, Ronald S. Bultje wrote:
> Hi,
> 
> On Thu, Oct 3, 2013 at 10:38 AM, wm4 <nfxjfg at googlemail.com> wrote:
> 
> > On Thu, 3 Oct 2013 10:20:45 -0400
> > "Ronald S. Bultje" <rsbultje at gmail.com> wrote:
> > > On Thu, Oct 3, 2013 at 10:17 AM, wm4 <nfxjfg at googlemail.com> wrote:
> > > > On Mon, 30 Sep 2013 22:20:07 +0200
> > > > Michael Niedermayer <michaelni at gmx.at> wrote:
> > > > > Suggested-by: Ronald S. Bultje
> > > > > Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> > > > > ---
> > > > >  libswscale/options.c |    2 +-
> > > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > > >
> > > > > diff --git a/libswscale/options.c b/libswscale/options.c
> > > > > index 2b3147b..9e8703f 100644
> > > > > --- a/libswscale/options.c
> > > > > +++ b/libswscale/options.c
> > > > > @@ -34,7 +34,7 @@ static const char *sws_context_to_name(void *ptr)
> > > > >  #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
> > > > >
> > > > >  static const AVOption swscale_options[] = {
> > > > > -    { "sws_flags",       "scaler flags",
> > > >  OFFSET(flags),     AV_OPT_TYPE_FLAGS,  { .i64  = SWS_BILINEAR
> > }, 0,
> > > >       UINT_MAX,       VE, "sws_flags" },
> > > > > +    { "sws_flags",       "scaler flags",
> > > >  OFFSET(flags),     AV_OPT_TYPE_FLAGS,  { .i64  = SWS_BICUBIC
> >  }, 0,
> > > >      UINT_MAX,        VE, "sws_flags" },
> > > > >      { "fast_bilinear",   "fast bilinear",                 0,
> > > >       AV_OPT_TYPE_CONST,  { .i64  = SWS_FAST_BILINEAR  }, INT_MIN,
> > INT_MAX,
> > > >        VE, "sws_flags" },
> > > > >      { "bilinear",        "bilinear",                      0,
> > > >       AV_OPT_TYPE_CONST,  { .i64  = SWS_BILINEAR       }, INT_MIN,
> > INT_MAX,
> > > >        VE, "sws_flags" },
> > > > >      { "bicubic",         "bicubic",                       0,
> > > >       AV_OPT_TYPE_CONST,  { .i64  = SWS_BICUBIC        }, INT_MIN,
> > INT_MAX,
> > > >        VE, "sws_flags" },
> > > >
> > > > By the way, before this gets applied and just for consideration: Libav
> > > > have a patch that select the scaling algorithm by
> > upscaling/downscaling.
> > > >
> > >
> > > I saw that one, it's hilarious. I don't think they understand scaling
> > much.
> > > I think for a universal default, bicubic is quite fine.
> >
> > In the end, it shouldn't matter too much (as long as the scaler is not
> > buggy), but it'd still be nice if Libav libswscale and ffmpeg libswscale
> > behaved the same way.
> 
> 
> Why don't you try all the scalers on a bunch of HD clips (1080p50) and tell
> me what your CPU usage is for each of these fancy scalers with default
> filter order (20) compared to bicubic (and for fun, add bilinear and
> fast_bilin also).
> 
> Now tell me how much better the quality is, visually, for each of them.
> 
> Now tell me if that was worth it, and by what metric you decided to come to
> that conclusion (in terms of cpu vs quality trade-off).
> 
> That's how you decide this. Not by reading some forum posts.

+1

and until someone tests the scalers properly, ive applied this

thanks

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If you think the mosad wants you dead since a long time then you are either
wrong or dead since a long time.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20131006/a99be574/attachment.asc>


More information about the ffmpeg-devel mailing list