[FFmpeg-devel] [PATCH v4 0/7] webp: add support for animated WebP decoding
Thilo Borgmann
thilo.borgmann at mail.de
Thu Jul 27 14:29:34 EEST 2023
Am 25.07.23 um 22:14 schrieb James Zern:
> On Tue, Jul 25, 2023 at 1:58 AM Thilo Borgmann <thilo.borgmann at mail.de> wrote:
>>
>> Still images fixed from v2. Now includes a fate test for animated webp.
>>
>> Patch 5/7 is still there for making changes in lavc/webp reviewable but
>> shall be stashed when pushing.
>>
>> -Thilo
>>
>>
>> Josef Zlomek (2):
>> libavcodec/webp: add support for animated WebP decoding
>> libavformat/webp: add WebP demuxer
>>
>> Thilo Borgmann (5):
>> avcodec/webp: move definitions into header
>> avcodec/webp: remove unused definitions
>> avcodec/webp_parser: parse each frame into one packet
>> avcodec/webp: make init_canvas_frame static
>> fate: add test for animated WebP
>>
>> Changelog | 2 +
>> doc/demuxers.texi | 28 +
>> libavcodec/codec_desc.c | 3 +-
>> libavcodec/version.h | 2 +-
>> libavcodec/webp.c | 715 +++++++++++++++++--
>> libavcodec/webp.h | 38 +
>> libavcodec/webp_parser.c | 130 ++--
>> libavformat/Makefile | 1 +
>> libavformat/allformats.c | 1 +
>> libavformat/version.h | 2 +-
>> libavformat/webpdec.c | 733 ++++++++++++++++++++
>> tests/fate/image.mak | 3 +
>> tests/ref/fate/exif-image-webp | 12 +-
>> tests/ref/fate/webp-anim | 22 +
>> tests/ref/fate/webp-rgb-lena-lossless | 2 +-
>> tests/ref/fate/webp-rgb-lena-lossless-rgb24 | 2 +-
>> tests/ref/fate/webp-rgb-lossless | 2 +-
>> tests/ref/fate/webp-rgb-lossy-q80 | 2 +-
>> tests/ref/fate/webp-rgba-lossless | 2 +-
>> tests/ref/fate/webp-rgba-lossy-q80 | 2 +-
>> 20 files changed, 1589 insertions(+), 115 deletions(-)
>> create mode 100644 libavcodec/webp.h
>> create mode 100644 libavformat/webpdec.c
>> create mode 100644 tests/ref/fate/webp-anim
>>
>
> This series is lgtm. There are still a few edge cases where
> 1) the
> 'Canvas change detected' warning will be triggered with valid files,
As long as the canvas in frame threading is bound to a ThreadFrame, we can't reallocate for changes.
Wouldn't want to touch that until the new threading is all done.
> 2) corrupt / truncated files will produce output where they would fail
> with libwebp and
We might bail out as well though AFAICT we usually try to decode whatever might be possible.
> 3) I see quite a few "[webp @ 0x7f5530008c00]
> Multiple ff_thread_finish_setup() calls", not sure if that's expected.
Which sample you're looking at?
If I can reproduce this, I'll look at it. The other things I'd keep as they are.
Thanks,
Thilo
More information about the ffmpeg-devel
mailing list