[FFmpeg-devel] [PATCH] avcodec[/format]/webpenc: use WebPAnimEncoder API to generate animated WebP

Michael Niedermayer michaelni at gmx.at
Fri Apr 24 00:04:03 CEST 2015


On Thu, Apr 23, 2015 at 11:51:15PM +0200, Michael Niedermayer wrote:
> On Thu, Apr 16, 2015 at 10:40:14PM +0000, Urvang Joshi wrote:
> > On Thu, Apr 16, 2015 at 3:09 PM James Almer <jamrial at gmail.com> wrote:
> > 
> > > On 16/04/15 4:18 PM, Urvang Joshi wrote:
> > > > Hi,
> > > > Here's the patch without whitespace changes.
> > > >
> > > > Thanks,
> > > > Urvang
> > >
> > > This patch doesn't apply cleanly. Looks like something weird with the
> > > indentation still.
> > > Was this patch handmade? It says the hash for libwebpenc.c is 95d56ac
> > > (same as git head),
> > > but the contents of the patch don't match.
> > >
> > 
> > Sorry, I should have mentioned that it was created with
> > "--ignore-all-space" option, so using the same option when applying the
> > patch would have worked.
> > 
> > But to avoid any confusion, here's the re-created patch, that should apply
> > cleanly with just 'git am'.
> > 
> > 
> > >
> > > After fixing the conflicts and compiling the patch seems to work, but the
> > > resulting
> > > animated webp files are smaller than those using the native muxer using
> > > the default
> > > encoding and muxing settings.
> > > Is this because the muxing done by libwebpmux is different, or are the
> > > quality defaults
> > > changed in any way when using this codepath? If the former then that's
> > > pretty good, but
> > > if the latter then it should probably be fixed.
> > >
> > 
> > Short answer: muxing done by libwebpmux is different, so it's expected that
> > it generates smaller WebP files.
> > 
> > Detailed answer:
> > The native muxer is naive, and it always uses X offset and Y offset of 0
> > for all frames. This means the full width x height of all frames are
> > encoded.
> 
> > libwebpmux muxer is smart on the other hand: for example, it only encodes
> > the part of the frame which has changed from previous frame.
> > This and other optimizations result in smaller WebP files.
> 
> can you show some PSNR vs filesize information ?

also when doing PSNR vs fiesize comparissions dont forget to
try cr_threshold / cr_size / quality to vary the threshold at which
changes are ommited with the native encoder

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If a bugfix only changes things apparently unrelated to the bug with no
further explanation, that is a good sign that the bugfix is wrong.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20150424/0e5316ce/attachment.asc>


More information about the ffmpeg-devel mailing list