mbox series

[FFmpeg-devel,v6,0/7] webp: add support for animated WebP decoding

Message ID 20231123114733.86103-1-thilo.borgmann@mail.de
Headers show
Series webp: add support for animated WebP decoding | expand

Message

Thilo Borgmann Nov. 23, 2023, 11:47 a.m. UTC
Still images fixed, includes FATE tests, VP8 decoder decoupled so there are no more data races, fixed more asserts.

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                           | 758 ++++++++++++++++++--
 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, 1625 insertions(+), 122 deletions(-)
 create mode 100644 libavcodec/webp.h
 create mode 100644 libavformat/webpdec.c
 create mode 100644 tests/ref/fate/webp-anim

Comments

Michael Niedermayer Nov. 24, 2023, 9:02 p.m. UTC | #1
On Thu, Nov 23, 2023 at 12:47:26PM +0100, Thilo Borgmann via ffmpeg-devel wrote:
> Still images fixed, includes FATE tests, VP8 decoder decoupled so there are no more data races, fixed more asserts.
> 
> 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                           | 758 ++++++++++++++++++--
>  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, 1625 insertions(+), 122 deletions(-)
>  create mode 100644 libavcodec/webp.h
>  create mode 100644 libavformat/webpdec.c
>  create mode 100644 tests/ref/fate/webp-anim

seems t0 break fate

TEST    exif-image-webp
--- ./tests/ref/fate/exif-image-webp	2023-11-24 21:28:14.398689445 +0100
+++ tests/data/fate/exif-image-webp	2023-11-24 22:02:25.856785635 +0100
@@ -8,12 +8,12 @@
 pkt_dts_time=0.000000
 best_effort_timestamp=0
 best_effort_timestamp_time=0.000000
-pkt_duration=1
-pkt_duration_time=0.040000
-duration=1
-duration_time=0.040000
-pkt_pos=0
-pkt_size=39276
+pkt_duration=N/A
+pkt_duration_time=N/A
+duration=N/A
+duration_time=N/A
+pkt_pos=N/A
+pkt_size=N/A
 width=400
 height=225
 crop_top=0
Test exif-image-webp failed. Look at tests/data/fate/exif-image-webp.err for details.
tests/Makefile:307: recipe for target 'fate-exif-image-webp' failed
make: *** [fate-exif-image-webp] Error 1

[...]