arthenica / ffmpeg-kit

FFmpeg Kit for applications. Supports Android, Flutter, iOS, Linux, macOS, React Native and tvOS. Supersedes MobileFFmpeg, flutter_ffmpeg and react-native-ffmpeg.
https://arthenica.github.io/ffmpeg-kit
GNU Lesser General Public License v3.0
4.36k stars 581 forks source link

Enable JPEG XL by default #785

Open markg85 opened 1 year ago

markg85 commented 1 year ago

Is your feature request related to a problem? Please describe. Enable JPEG XL support

Describe the solution you'd like Allow to convert to/from JPEG-XL

Describe alternatives you've considered None

Platform All

Additional context It's been in ffmpeg for a year or so but apparently went under the release note radar (couldn't find it). The initial commit was in late April 2022 And i can guarantee that it is most certainly in ffmpeg:

❯ ffmpeg -h decoder=jpegxl
ffmpeg version n6.0 Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 13.1.1 (GCC) 20230429
  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libjxl --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc --enable-opencl --enable-opengl --enable-shared --enable-version3 --enable-vulkan
  libavutil      58.  2.100 / 58.  2.100
  libavcodec     60.  3.100 / 60.  3.100
  libavformat    60.  3.100 / 60.  3.100
  libavdevice    60.  1.100 / 60.  1.100
  libavfilter     9.  3.100 /  9.  3.100
  libswscale      7.  1.100 /  7.  1.100
  libswresample   4. 10.100 /  4. 10.100
  libpostproc    57.  1.100 / 57.  1.100
Decoder libjxl [libjxl JPEG XL]:
    General capabilities: dr1 threads 
    Threading capabilities: other

And the "official documentation": https://www.ffmpeg.org/ffmpeg-codecs.html#libjxl

Not much info but some which means it's there.

It apparently uses libjxl which has BSD 3-Clause license thus should be good to be enabled.

You can have animated jpegxl of which samples can be found here. Based on that it should probably be enabled in the video package Though don't use chrome to look at them as chrome decided in their "wishdom" to nuke this next-gen image format in favor of the AV1 (AVIF) image format. Depending on your browser, you can look at those images. Consult https://caniuse.com/jpegxl to see which one to use.

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days.

markg85 commented 1 year ago

Bump. Clearly.

github-actions[bot] commented 10 months ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days.

mgenware commented 10 months ago

Bump. JXL has gained support on all apple devices. It would be great if it's enabled by default.

Quackdoc commented 8 months ago

This would be really nice to have for sure

github-actions[bot] commented 6 months ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days.

Quackdoc commented 6 months ago

bump for bot

OnClickListener2048 commented 1 month ago

bump