Message ID | 20230710235744.30513-1-leo.izen@gmail.com |
---|---|
Headers | show |
Series | JPEG XL Parser | expand |
On 7/10/23 19:57, Leo Izen wrote: > Changes from v4: > > - Added an entropy decoder and full parser, which finds the > boundaries between files correctly > - Removed unnecessary logging in libjxldec > > Changes from v3: > > - Don't remove AV_CODEC_CAP_DR1 from libjxldec > - jpegxl_parse.o added to STLIBOBJS in avcodec/Makefile > - add pipe demuxer to avformat/Makefile's SHLIBOBJS > > Changes from v2: > > - Fix libjxldec to work with packets that are smaller than one frame > - Change how code is shared between libavcodec and libavformat to be more sensible. > - Fix the parser to work with large headers that proceed the codestream in a container format > (for example, if several-KB Exif boxes preceed the codestream.) > - Modify the parser to set width/height instead of avctx > Note: avctx->pix_fmt and s->format are both set, because otherwise the CLI tools won't print > the pixel format without libjxl enabled. > - Update the fate test based on the new parser's packetization > > This test relies on FATE samples that haven't been uploaded yet. To test, unzip > the following zipfile[1] in the FATE_SAMPLES directory, placing the test images in jxl/. > > [1]: https://buzo.us/y.zip > > sha256sum: 43a2eeb0dfdf471b47a9fdfb1653974fa156ceceb776891cc137569a8ebf0e75 > signature: https://buzo.us/R.asc > > Leo Izen (4): > avcodec/libjxldec: use internal AVFrame as buffered space > avcodec/jpegxl_parser: add JPEG XL parser > avformat/jpegxl: remove jpegxl_probe, instead call > avcodec/jpegxl_parse > fate/jpegxl_anim: add demuxer fate test for jpegxl_anim > > libavcodec/Makefile | 3 + > libavcodec/jpegxl.h | 94 ++ > libavcodec/jpegxl_parse.c | 520 ++++++ > libavcodec/jpegxl_parse.h | 72 + > libavcodec/jpegxl_parser.c | 1455 +++++++++++++++++ > libavcodec/libjxldec.c | 36 +- > libavcodec/parsers.c | 1 + > libavcodec/version.h | 2 +- > libavformat/Makefile | 6 +- > libavformat/img2dec.c | 4 +- > libavformat/jpegxl_anim_dec.c | 115 +- > .../{jpegxl_probe.h => jpegxl_parse.c} | 21 +- > libavformat/jpegxl_probe.c | 412 ----- > libavformat/version.h | 2 +- > tests/Makefile | 1 + > tests/fate/jxl.mak | 16 + > tests/ref/fate/jxl-anim-demux-belgium | 6 + > tests/ref/fate/jxl-anim-demux-icos4d | 6 + > tests/ref/fate/jxl-anim-demux-lenna256 | 6 + > tests/ref/fate/jxl-anim-demux-newton | 6 + > 20 files changed, 2238 insertions(+), 546 deletions(-) > create mode 100644 libavcodec/jpegxl.h > create mode 100644 libavcodec/jpegxl_parse.c > create mode 100644 libavcodec/jpegxl_parse.h > create mode 100644 libavcodec/jpegxl_parser.c > rename libavformat/{jpegxl_probe.h => jpegxl_parse.c} (55%) > delete mode 100644 libavformat/jpegxl_probe.c > create mode 100644 tests/fate/jxl.mak > create mode 100644 tests/ref/fate/jxl-anim-demux-belgium > create mode 100644 tests/ref/fate/jxl-anim-demux-icos4d > create mode 100644 tests/ref/fate/jxl-anim-demux-lenna256 > create mode 100644 tests/ref/fate/jxl-anim-demux-newton > Bumping for review, thanks. - Leo Izen