Closed stevezau closed 2 months ago
@stevezau Hi there,
I recently discovered this project. Unfortunately, I use AMD graphics, so I cannot test the project that relies on NVIDIA graphics (I will look into whether adding AMD encoding support is feasible).
To my knowledge, libaom-av1
and libdav1d
serve different purposes. The former is for encoding, while the latter is for decoding.
Here are a few suggestions that might help you resolve this issue:
Check the available encoding libraries and codecs within the Docker environment using ffmpeg commands. You can use the following command to list all available encoders and decoders:
ffmpeg -encoders
ffmpeg -decoders
If the result does not contain libdav1d
or the encoder/decoder/lib you are looking for, you can try installing it with apt .
sudo apt-get update
sudo apt-get install libdav1d-dev
After installing the necessary libraries, you may need to rebuild ffmpeg
from the source to include the newly added libraries.
Additionally, here are the commands I recently used to rebuild ffmpeg
with NVIDIA CUDA in a different environment. These may not perfectly fit your situation, so you might need to replace some commands accordingly:
# You may need to check the version of the nvidia-driver
sudo apt install nvidia-driver-525 nvidia-cuda-toolkit build-essential yasm cmake libtool libc6 libc6-dev unzip wget libnuma1 libnuma-dev openssl libssl-dev libass-dev libfdk-aac-dev libmp3lame-dev libopus-dev libtheora-dev libvorbis-dev libvpx-dev libx264-dev libx265-dev -y
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg/ --depth=1
./configure --enable-nonfree --enable-cuda-nvcc --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 --enable-openssl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree --enable-libaom
sudo make && sudo make install
If this resolves the issue, the ffmpeg in the Dockerfile's FROM might be unnecessary. Alternatively, you might find that someone else has already published a Docker image tailored for NVIDIA environments, which could be worth looking into.
Good luck!
If the result does not contain libdav1d or the encoder/decoder/lib you are looking for, you can try installing it with apt .
~I think the problem might be solved if the docker container could access the host system's lib
and use its own ffmpeg
. (Not verified, just an idea)~
On second thought, this is not a good idea. I didn't think about the case where the host system and the docker environment are different. This could cause bigger problems.
Hey, see the output of ffmpeg encoders/decoders. So, perhaps it is missing libdav1d? I am out of my depth here so I will use your suggestions then hopefully test it works.
see here https://github.com/stevezau/plex_generate_vid_previews/pull/45
ffmpeg -encoders
root@f709d15e9d1d:/app# ffmpeg -encoders
ffmpeg version 7.0.1 Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 13 (Ubuntu 13.2.0-23ubuntu4)
configuration: --disable-debug --disable-doc --disable-ffplay --enable-alsa --enable-cuvid --enable-ffprobe --enable-gpl --enable-libaom --enable-libass --enable-libfdk_aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libplacebo --enable-librav1e --enable-libshaderc --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpl --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nonfree --enable-nvdec --enable-nvenc --enable-cuda-llvm --enable-opencl --enable-openssl --enable-stripping --enable-vaapi --enable-vdpau --enable-version3 --enable-vulkan
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100
Encoders:
V..... = Video
A..... = Audio
S..... = Subtitle
.F.... = Frame-level multithreading
..S... = Slice-level multithreading
...X.. = Codec is experimental
....B. = Supports draw_horiz_band
.....D = Supports direct rendering method 1
------
V....D a64multi Multicolor charset for Commodore 64 (codec a64_multi)
V....D a64multi5 Multicolor charset for Commodore 64, extended with 5th color (colram) (codec a64_multi5)
V....D alias_pix Alias/Wavefront PIX image
V..... amv AMV Video
V....D apng APNG (Animated Portable Network Graphics) image
V....D asv1 ASUS V1
V....D asv2 ASUS V2
V....D libaom-av1 libaom AV1 (codec av1)
V....D librav1e librav1e AV1 (codec av1)
V..... libsvtav1 SVT-AV1(Scalable Video Technology for AV1) encoder (codec av1)
V....D av1_nvenc NVIDIA NVENC av1 encoder (codec av1)
V..... av1_qsv AV1 (Intel Quick Sync Video acceleration) (codec av1)
V....D av1_vaapi AV1 (VAAPI) (codec av1)
V....D avrp Avid 1:1 10-bit RGB Packer
V..X.D avui Avid Meridien Uncompressed
VF...D bitpacked Bitpacked
V....D bmp BMP (Windows and OS/2 bitmap)
VF...D cfhd GoPro CineForm HD
V....D cinepak Cinepak
V....D cljr Cirrus Logic AccuPak
V.S..D vc2 SMPTE VC-2 (codec dirac)
VFS..D dnxhd VC3/DNxHD
V....D dpx DPX (Digital Picture Exchange) image
VFS..D dvvideo DV (Digital Video)
VFS..D dxv Resolume DXV
VF...D exr OpenEXR image
V.S..D ffv1 FFmpeg video codec #1
VF...D ffvhuff Huffyuv FFmpeg variant
V....D fits Flexible Image Transport System
V....D flashsv Flash Screen Video
V....D flashsv2 Flash Screen Video Version 2
V..... flv FLV / Sorenson Spark / Sorenson H.263 (Flash Video) (codec flv1)
V....D gif GIF (Graphics Interchange Format)
V..... h261 H.261
V..... h263 H.263 / H.263-1996
V..... h263_v4l2m2m V4L2 mem2mem H.263 encoder wrapper (codec h263)
V.S... h263p H.263+ / H.263-1998 / H.263 version 2
V....D libx264 libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (codec h264)
V....D libx264rgb libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 RGB (codec h264)
V....D h264_nvenc NVIDIA NVENC H.264 encoder (codec h264)
V..... h264_qsv H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (Intel Quick Sync Video acceleration) (codec h264)
V..... h264_v4l2m2m V4L2 mem2mem H.264 encoder wrapper (codec h264)
V....D h264_vaapi H.264/AVC (VAAPI) (codec h264)
VF...D hdr HDR (Radiance RGBE format) image
V....D libx265 libx265 H.265 / HEVC (codec hevc)
V....D hevc_nvenc NVIDIA NVENC hevc encoder (codec hevc)
V..... hevc_qsv HEVC (Intel Quick Sync Video acceleration) (codec hevc)
V..... hevc_v4l2m2m V4L2 mem2mem HEVC encoder wrapper (codec hevc)
V....D hevc_vaapi H.265/HEVC (VAAPI) (codec hevc)
V....D libkvazaar libkvazaar H.265 / HEVC (codec hevc)
VF...D huffyuv Huffyuv / HuffYUV
VF...D jpeg2000 JPEG 2000
VF.... libopenjpeg OpenJPEG JPEG 2000 (codec jpeg2000)
VF...D jpegls JPEG-LS
VF...D ljpeg Lossless JPEG
VFS..D magicyuv MagicYUV video
VFS... mjpeg MJPEG (Motion JPEG)
V..... mjpeg_qsv MJPEG (Intel Quick Sync Video acceleration) (codec mjpeg)
V....D mjpeg_vaapi MJPEG (VAAPI) (codec mjpeg)
V.S... mpeg1video MPEG-1 video
V.S... mpeg2video MPEG-2 video
V..... mpeg2_qsv MPEG-2 video (Intel Quick Sync Video acceleration) (codec mpeg2video)
V....D mpeg2_vaapi MPEG-2 (VAAPI) (codec mpeg2video)
V.S... mpeg4 MPEG-4 part 2
V....D libxvid libxvidcore MPEG-4 part 2 (codec mpeg4)
V..... mpeg4_v4l2m2m V4L2 mem2mem MPEG4 encoder wrapper (codec mpeg4)
V..... msmpeg4v2 MPEG-4 part 2 Microsoft variant version 2
V..... msmpeg4 MPEG-4 part 2 Microsoft variant version 3 (codec msmpeg4v3)
V....D msrle Microsoft RLE
V..... msvideo1 Microsoft Video-1
V....D pam PAM (Portable AnyMap) image
V....D pbm PBM (Portable BitMap) image
V....D pcx PC Paintbrush PCX image
V....D pfm PFM (Portable FloatMap) image
V....D pgm PGM (Portable GrayMap) image
V....D pgmyuv PGMYUV (Portable GrayMap YUV) image
V....D phm PHM (Portable HalfFloatMap) image
VF...D png PNG (Portable Network Graphics) image
V....D ppm PPM (Portable PixelMap) image
VF...D prores Apple ProRes
VF...D prores_aw Apple ProRes (codec prores)
VFS... prores_ks Apple ProRes (iCodec Pro) (codec prores)
VF...D qoi QOI (Quite OK Image format) image
V....D qtrle QuickTime Animation (RLE) video
V....D r10k AJA Kona 10-bit RGB Codec
V....D r210 Uncompressed RGB 10-bit
VF...D rawvideo raw video
V....D roqvideo id RoQ video (codec roq)
V....D rpza QuickTime video (RPZA)
V..... rv10 RealVideo 1.0
V..... rv20 RealVideo 2.0
V....D sgi SGI image
V....D smc QuickTime Graphics (SMC)
V....D snow Snow
V..... speedhq NewTek SpeedHQ
V....D sunrast Sun Rasterfile image
V....D svq1 Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1
V....D targa Truevision Targa image
V....D libtheora libtheora Theora (codec theora)
VF...D tiff TIFF image
VF...D utvideo Ut Video
VF...D v210 Uncompressed 4:2:2 10-bit
V....D v308 Uncompressed packed 4:4:4
V....D v408 Uncompressed packed QT 4:4:4:4
V....D v410 Uncompressed 4:4:4 10-bit
V.S..D vbn Vizrt Binary Image
V..... vnull null video
V....D libvpx libvpx VP8 (codec vp8)
V..... vp8_v4l2m2m V4L2 mem2mem VP8 encoder wrapper (codec vp8)
V....D vp8_vaapi VP8 (VAAPI) (codec vp8)
V....D libvpx-vp9 libvpx VP9 (codec vp9)
V....D vp9_vaapi VP9 (VAAPI) (codec vp9)
V..... vp9_qsv VP9 video (Intel Quick Sync Video acceleration) (codec vp9)
VF...D wbmp WBMP (Wireless Application Protocol Bitmap) image
V....D libwebp_anim libwebp WebP image (codec webp)
V....D libwebp libwebp WebP image (codec webp)
V..... wmv1 Windows Media Video 7
V..... wmv2 Windows Media Video 8
V..... wrapped_avframe AVFrame to AVPacket passthrough
V....D xbm XBM (X BitMap) image
V....D xface X-face image
V....D xwd XWD (X Window Dump) image
V....D y41p Uncompressed YUV 4:1:1 12-bit
V....D yuv4 Uncompressed packed 4:2:0
VF...D zlib LCL (LossLess Codec Library) ZLIB
V....D zmbv Zip Motion Blocks Video
A....D aac AAC (Advanced Audio Coding)
A....D libfdk_aac Fraunhofer FDK AAC (codec aac)
A....D ac3 ATSC A/52A (AC-3)
A....D ac3_fixed ATSC A/52A (AC-3) (codec ac3)
A....D adpcm_adx SEGA CRI ADX ADPCM
A....D adpcm_argo ADPCM Argonaut Games
A....D g722 G.722 ADPCM (codec adpcm_g722)
A....D g726 G.726 ADPCM (codec adpcm_g726)
A....D g726le G.726 little endian ADPCM ("right-justified") (codec adpcm_g726le)
A....D adpcm_ima_alp ADPCM IMA High Voltage Software ALP
A....D adpcm_ima_amv ADPCM IMA AMV
A....D adpcm_ima_apm ADPCM IMA Ubisoft APM
A....D adpcm_ima_qt ADPCM IMA QuickTime
A....D adpcm_ima_ssi ADPCM IMA Simon & Schuster Interactive
A....D adpcm_ima_wav ADPCM IMA WAV
A....D adpcm_ima_ws ADPCM IMA Westwood
A....D adpcm_ms ADPCM Microsoft
A....D adpcm_swf ADPCM Shockwave Flash
A....D adpcm_yamaha ADPCM Yamaha
A....D alac ALAC (Apple Lossless Audio Codec)
A....D libopencore_amrnb OpenCORE AMR-NB (Adaptive Multi-Rate Narrow-Band) (codec amr_nb)
A..... anull null audio
A....D aptx aptX (Audio Processing Technology for Bluetooth)
A....D aptx_hd aptX HD (Audio Processing Technology for Bluetooth)
A....D comfortnoise RFC 3389 comfort noise generator
A....D dfpwm DFPWM1a audio
A..X.D dca DCA (DTS Coherent Acoustics) (codec dts)
A....D eac3 ATSC A/52 E-AC-3
A....D flac FLAC (Free Lossless Audio Codec)
A....D g723_1 G.723.1
A..X.D mlp MLP (Meridian Lossless Packing)
A....D mp2 MP2 (MPEG audio layer 2)
A....D mp2fixed MP2 fixed point (MPEG audio layer 2) (codec mp2)
A....D libmp3lame libmp3lame MP3 (MPEG audio layer 3) (codec mp3)
A....D nellymoser Nellymoser Asao
A..X.D opus Opus
A....D libopus libopus Opus (codec opus)
A....D pcm_alaw PCM A-law / G.711 A-law
A....D pcm_bluray PCM signed 16|20|24-bit big-endian for Blu-ray media
A....D pcm_dvd PCM signed 16|20|24-bit big-endian for DVD media
A....D pcm_f32be PCM 32-bit floating point big-endian
A....D pcm_f32le PCM 32-bit floating point little-endian
A....D pcm_f64be PCM 64-bit floating point big-endian
A....D pcm_f64le PCM 64-bit floating point little-endian
A....D pcm_mulaw PCM mu-law / G.711 mu-law
A....D pcm_s16be PCM signed 16-bit big-endian
A....D pcm_s16be_planar PCM signed 16-bit big-endian planar
A....D pcm_s16le PCM signed 16-bit little-endian
A....D pcm_s16le_planar PCM signed 16-bit little-endian planar
A....D pcm_s24be PCM signed 24-bit big-endian
A....D pcm_s24daud PCM D-Cinema audio signed 24-bit
A....D pcm_s24le PCM signed 24-bit little-endian
A....D pcm_s24le_planar PCM signed 24-bit little-endian planar
A....D pcm_s32be PCM signed 32-bit big-endian
A....D pcm_s32le PCM signed 32-bit little-endian
A....D pcm_s32le_planar PCM signed 32-bit little-endian planar
A....D pcm_s64be PCM signed 64-bit big-endian
A....D pcm_s64le PCM signed 64-bit little-endian
A....D pcm_s8 PCM signed 8-bit
A....D pcm_s8_planar PCM signed 8-bit planar
A....D pcm_u16be PCM unsigned 16-bit big-endian
A....D pcm_u16le PCM unsigned 16-bit little-endian
A....D pcm_u24be PCM unsigned 24-bit big-endian
A....D pcm_u24le PCM unsigned 24-bit little-endian
A....D pcm_u32be PCM unsigned 32-bit big-endian
A....D pcm_u32le PCM unsigned 32-bit little-endian
A....D pcm_u8 PCM unsigned 8-bit
A....D pcm_vidc PCM Archimedes VIDC
A....D real_144 RealAudio 1.0 (14.4K) (codec ra_144)
A....D roq_dpcm id RoQ DPCM
A..X.D s302m SMPTE 302M
A....D sbc SBC (low-complexity subband codec)
A..X.D sonic Sonic
A..X.D sonicls Sonic lossless
A..X.D truehd TrueHD
A....D tta TTA (True Audio)
A..X.D vorbis Vorbis
A....D libvorbis libvorbis (codec vorbis)
A....D wavpack WavPack
A....D wmav1 Windows Media Audio 1
A....D wmav2 Windows Media Audio 2
S..... ssa ASS (Advanced SubStation Alpha) subtitle (codec ass)
S..... ass ASS (Advanced SubStation Alpha) subtitle
S..... dvbsub DVB subtitles (codec dvb_subtitle)
S..... dvdsub DVD subtitles (codec dvd_subtitle)
S..... mov_text 3GPP Timed Text subtitle
S..... srt SubRip subtitle (codec subrip)
S..... subrip SubRip subtitle
S..... text Raw text subtitle
S..... ttml TTML subtitle
S..... webvtt WebVTT subtitle
S..... xsub DivX subtitles (XSUB)```
ffmpeg -decoders
root@f709d15e9d1d:/app# ffmpeg -decoders
ffmpeg version 7.0.1 Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 13 (Ubuntu 13.2.0-23ubuntu4)
configuration: --disable-debug --disable-doc --disable-ffplay --enable-alsa --enable-cuvid --enable-ffprobe --enable-gpl --enable-libaom --enable-libass --enable-libfdk_aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libplacebo --enable-librav1e --enable-libshaderc --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpl --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nonfree --enable-nvdec --enable-nvenc --enable-cuda-llvm --enable-opencl --enable-openssl --enable-stripping --enable-vaapi --enable-vdpau --enable-version3 --enable-vulkan
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100
Decoders:
V..... = Video
A..... = Audio
S..... = Subtitle
.F.... = Frame-level multithreading
..S... = Slice-level multithreading
...X.. = Codec is experimental
....B. = Supports draw_horiz_band
.....D = Supports direct rendering method 1
------
V....D 012v Uncompressed 4:2:2 10-bit
V....D 4xm 4X Movie
V....D 8bps QuickTime 8BPS video
V....D aasc Autodesk RLE
V....D agm Amuse Graphics Movie
VF...D aic Apple Intermediate Codec
V....D alias_pix Alias/Wavefront PIX image
V....D amv AMV Video
V....D anm Deluxe Paint Animation
V....D ansi ASCII/ANSI art
VF...D apng APNG (Animated Portable Network Graphics) image
V....D arbc Gryphon's Anim Compressor
V....D argo Argonaut Games Video
V....D asv1 ASUS V1
V....D asv2 ASUS V2
V....D aura Auravision AURA
V....D aura2 Auravision Aura 2
V....D libaom-av1 libaom AV1 (codec av1)
V....D av1 Alliance for Open Media AV1
V..... av1_cuvid Nvidia CUVID AV1 decoder (codec av1)
V....D av1_qsv AV1 video (Intel Quick Sync Video acceleration) (codec av1)
V....D avrn Avid AVI Codec
V....D avrp Avid 1:1 10-bit RGB Packer
V....D avs AVS (Audio Video Standard) video
V....D avui Avid Meridien Uncompressed
V....D bethsoftvid Bethesda VID video
V....D bfi Brute Force & Ignorance
V....D binkvideo Bink video
V....D bintext Binary text
VF.... bitpacked Bitpacked
V....D bmp BMP (Windows and OS/2 bitmap)
V....D bmv_video Discworld II BMV video
V....D brender_pix BRender PIX image
V....D c93 Interplay C93
V....D cavs Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)
V....D cdgraphics CD Graphics video
V....D cdtoons CDToons video
V....D cdxl Commodore CDXL video
VF...D cfhd GoPro CineForm HD
V....D cinepak Cinepak
V....D clearvideo Iterated Systems ClearVideo
V....D cljr Cirrus Logic AccuPak
VF...D cllc Canopus Lossless Codec
V....D eacmv Electronic Arts CMV video (codec cmv)
V....D cpia CPiA video format
VF...D cri Cintel RAW
V....D camstudio CamStudio (codec cscd)
V....D cyuv Creative YUV (CYUV)
V.S..D dds DirectDraw Surface image decoder
V....D dfa Chronomaster DFA
V.S..D dirac BBC Dirac VC-2
VFS..D dnxhd VC3/DNxHD
V....D dpx DPX (Digital Picture Exchange) image
V....D dsicinvideo Delphine Software International CIN video
VFS..D dvvideo DV (Digital Video)
V....D dxa Feeble Files/ScummVM DXA
VF...D dxtory Dxtory
VFS..D dxv Resolume DXV
V....D escape124 Escape 124
V....D escape130 Escape 130
VFS..D exr OpenEXR image
VFS..D ffv1 FFmpeg video codec #1
VF..BD ffvhuff Huffyuv FFmpeg variant
V.S..D fic Mirillis FIC
V....D fits Flexible Image Transport System
V....D flashsv Flash Screen Video v1
V....D flashsv2 Flash Screen Video v2
V....D flic Autodesk Animator Flic video
V...BD flv FLV / Sorenson Spark / Sorenson H.263 (Flash Video) (codec flv1)
V....D fmvc FM Screen Capture Codec
VF...D fraps Fraps
V....D frwu Forward Uncompressed
V....D g2m Go2Meeting
V....D gdv Gremlin Digital Video
V....D gem GEM Raster image
V....D gif GIF (Graphics Interchange Format)
V....D h261 H.261
V...BD h263 H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2
V..... h263_v4l2m2m V4L2 mem2mem H.263 decoder wrapper (codec h263)
V...BD h263i Intel H.263
V...BD h263p H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2
VFS..D h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
V..... h264_v4l2m2m V4L2 mem2mem H.264 decoder wrapper (codec h264)
V....D h264_qsv H264 video (Intel Quick Sync Video acceleration) (codec h264)
V..... h264_cuvid Nvidia CUVID H264 decoder (codec h264)
VFS..D hap Vidvox Hap
VF...D hdr HDR (Radiance RGBE format) image
VFS..D hevc HEVC (High Efficiency Video Coding)
V....D hevc_qsv HEVC video (Intel Quick Sync Video acceleration) (codec hevc)
V..... hevc_v4l2m2m V4L2 mem2mem HEVC decoder wrapper (codec hevc)
V..... hevc_cuvid Nvidia CUVID HEVC decoder (codec hevc)
V....D hnm4video HNM 4 video
V....D hq_hqa Canopus HQ/HQA
VFS..D hqx Canopus HQX
VF..BD huffyuv Huffyuv / HuffYUV
VF..BD hymt HuffYUV MT
V....D idcinvideo id Quake II CIN video (codec idcin)
V....D idf iCEDraw text
V....D iff IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN (codec iff_ilbm)
V....D imm4 Infinity IMM4
V..... imm5 Infinity IMM5
V....D indeo2 Intel Indeo 2
V....D indeo3 Intel Indeo 3
V....D indeo4 Intel Indeo Video Interactive 4
V....D indeo5 Intel Indeo Video Interactive 5
V....D interplayvideo Interplay MVE video
V....D ipu IPU Video
VFS..D jpeg2000 JPEG 2000
V....D jpegls JPEG-LS
V....D jv Bitmap Brothers JV video
V....D kgv1 Kega Game Video
V....D kmvc Karl Morton's video codec
VF...D lagarith Lagarith lossless
V....D lead LEAD MCMP
V....D loco LOCO
V....D lscr LEAD Screen Capture
V....D m101 Matrox Uncompressed SD
V....D eamad Electronic Arts Madcow Video (codec mad)
VFS..D magicyuv MagicYUV video
VF...D mdec Sony PlayStation MDEC (Motion DECoder)
V....D media100 Media 100
VF...D mimic Mimic
V....D mjpeg MJPEG (Motion JPEG)
V..... mjpeg_cuvid Nvidia CUVID MJPEG decoder (codec mjpeg)
V....D mjpeg_qsv MJPEG video (Intel Quick Sync Video acceleration) (codec mjpeg)
V....D mjpegb Apple MJPEG-B
V....D mmvideo American Laser Games MM Video
V....D mobiclip MobiClip Video
V....D motionpixels Motion Pixels video
V.S.BD mpeg1video MPEG-1 video
V..... mpeg1_v4l2m2m V4L2 mem2mem MPEG1 decoder wrapper (codec mpeg1video)
V..... mpeg1_cuvid Nvidia CUVID MPEG1VIDEO decoder (codec mpeg1video)
V.S.BD mpeg2video MPEG-2 video
V.S.BD mpegvideo MPEG-1 video (codec mpeg2video)
V..... mpeg2_v4l2m2m V4L2 mem2mem MPEG2 decoder wrapper (codec mpeg2video)
V....D mpeg2_qsv MPEG2VIDEO video (Intel Quick Sync Video acceleration) (codec mpeg2video)
V..... mpeg2_cuvid Nvidia CUVID MPEG2VIDEO decoder (codec mpeg2video)
VF..BD mpeg4 MPEG-4 part 2
V..... mpeg4_v4l2m2m V4L2 mem2mem MPEG4 decoder wrapper (codec mpeg4)
V..... mpeg4_cuvid Nvidia CUVID MPEG4 decoder (codec mpeg4)
V....D msa1 MS ATC Screen
V....D mscc Mandsoft Screen Capture Codec
V...BD msmpeg4v1 MPEG-4 part 2 Microsoft variant version 1
V...BD msmpeg4v2 MPEG-4 part 2 Microsoft variant version 2
V...BD msmpeg4 MPEG-4 part 2 Microsoft variant version 3 (codec msmpeg4v3)
V....D msp2 Microsoft Paint (MSP) version 2
V....D msrle Microsoft RLE
V....D mss1 MS Screen 1
V....D mss2 MS Windows Media Video V9 Screen
V....D msvideo1 Microsoft Video 1
VF...D mszh LCL (LossLess Codec Library) MSZH
V....D mts2 MS Expression Encoder Screen
V....D mv30 MidiVid 3.0
V....D mvc1 Silicon Graphics Motion Video Compressor 1
V....D mvc2 Silicon Graphics Motion Video Compressor 2
V....D mvdv MidiVid VQ
V....D mvha MidiVid Archive Codec
V....D mwsc MatchWare Screen Capture Codec
V....D mxpeg Mobotix MxPEG video
VF...D notchlc NotchLC
V....D nuv NuppelVideo/RTJPEG
V....D paf_video Amazing Studio Packed Animation File Video
V....D pam PAM (Portable AnyMap) image
V....D pbm PBM (Portable BitMap) image
V....D pcx PC Paintbrush PCX image
V....D pdv PDV (PlayDate Video)
V....D pfm PFM (Portable FloatMap) image
V....D pgm PGM (Portable GrayMap) image
V....D pgmyuv PGMYUV (Portable GrayMap YUV) image
V....D pgx PGX (JPEG2000 Test Format)
V....D phm PHM (Portable HalfFloatMap) image
VF...D photocd Kodak Photo CD
V....D pictor Pictor/PC Paint
VF...D pixlet Apple Pixlet
VF...D png PNG (Portable Network Graphics) image
V....D ppm PPM (Portable PixelMap) image
VFS..D prores Apple ProRes (iCodec Pro)
V....D prosumer Brooktree ProSumer Video
VF...D psd Photoshop PSD file
V....D ptx V.Flash PTX image
V....D qdraw Apple QuickDraw
VF...D qoi QOI (Quite OK Image format) image
V....D qpeg Q-team QPEG
V....D qtrle QuickTime Animation (RLE) video
V....D r10k AJA Kona 10-bit RGB Codec
V....D r210 Uncompressed RGB 10-bit
V....D rasc RemotelyAnywhere Screen Capture
V..... rawvideo raw video
V....D rl2 RL2 video
V....D roqvideo id RoQ video (codec roq)
V....D rpza QuickTime video (RPZA)
V....D rscc innoHeim/Rsupport Screen Capture Codec
VF...D rtv1 RTV1 (RivaTuner Video)
V....D rv10 RealVideo 1.0
V....D rv20 RealVideo 2.0
VF...D rv30 RealVideo 3.0
VF...D rv40 RealVideo 4.0
V....D sanm LucasArts SANM/Smush video
V....D scpr ScreenPressor
V....D screenpresso Screenpresso
V....D sga Digital Pictures SGA Video
V....D sgi SGI image
V....D sgirle Silicon Graphics RLE 8-bit video
VF...D sheervideo BitJazz SheerVideo
V....D simbiosis_imx Simbiosis Interactive IMX Video
V....D smackvid Smacker video (codec smackvideo)
V....D smc QuickTime Graphics (SMC)
V....D smvjpeg SMV JPEG
V....D snow Snow
V....D sp5x Sunplus JPEG (SP5X)
V....D speedhq NewTek SpeedHQ
V....D srgc Screen Recorder Gold Codec
V....D sunrast Sun Rasterfile image
V....D svq1 Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1
V...BD svq3 Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3
V....D targa Truevision Targa image
V....D targa_y216 Pinnacle TARGA CineWave YUV16
V....D tdsc TDSC
V....D eatgq Electronic Arts TGQ video (codec tgq)
V....D eatgv Electronic Arts TGV video (codec tgv)
VF..BD theora Theora
V....D thp Nintendo Gamecube THP video
V....D tiertexseqvideo Tiertex Limited SEQ video
VF...D tiff TIFF image
V....D tmv 8088flex TMV
V....D eatqi Electronic Arts TQI Video (codec tqi)
V....D truemotion1 Duck TrueMotion 1.0
V....D truemotion2 Duck TrueMotion 2.0
V....D truemotion2rt Duck TrueMotion 2.0 Real Time
V....D camtasia TechSmith Screen Capture Codec (codec tscc)
V....D tscc2 TechSmith Screen Codec 2
V....D txd Renderware TXD (TeXture Dictionary) image
V....D ultimotion IBM UltiMotion (codec ulti)
VF...D utvideo Ut Video
VFS..D v210 Uncompressed 4:2:2 10-bit
V....D v210x Uncompressed 4:2:2 10-bit
V....D v308 Uncompressed packed 4:4:4
V....D v408 Uncompressed packed QT 4:4:4:4
VFS..D v410 Uncompressed 4:4:4 10-bit
V....D vb Beam Software VB
VF...D vble VBLE Lossless Codec
V.S..D vbn Vizrt Binary Image
V....D vc1 SMPTE VC-1
V....D vc1_qsv VC1 video (Intel Quick Sync Video acceleration) (codec vc1)
V..... vc1_v4l2m2m V4L2 mem2mem VC1 decoder wrapper (codec vc1)
V..... vc1_cuvid Nvidia CUVID VC1 decoder (codec vc1)
V....D vc1image Windows Media Video 9 Image v2
V....D vcr1 ATI VCR1
V....D xl Miro VideoXL (codec vixl)
V....D vmdvideo Sierra VMD video
VFS..D vmix vMix Video
V....D vmnc VMware Screen Codec / VMware Video
V....D vnull null video
VF..BD vp3 On2 VP3
VF..BD vp4 On2 VP4
V....D vp5 On2 VP5
V....D vp6 On2 VP6
V.S..D vp6a On2 VP6 (Flash version, with alpha channel)
V....D vp6f On2 VP6 (Flash version)
V....D vp7 On2 VP7
VFS..D vp8 On2 VP8
V..... vp8_v4l2m2m V4L2 mem2mem VP8 decoder wrapper (codec vp8)
V....D libvpx libvpx VP8 (codec vp8)
V..... vp8_cuvid Nvidia CUVID VP8 decoder (codec vp8)
V....D vp8_qsv VP8 video (Intel Quick Sync Video acceleration) (codec vp8)
VFS..D vp9 Google VP9
V..... vp9_v4l2m2m V4L2 mem2mem VP9 decoder wrapper (codec vp9)
V..... libvpx-vp9 libvpx VP9 (codec vp9)
V..... vp9_cuvid Nvidia CUVID VP9 decoder (codec vp9)
V....D vp9_qsv VP9 video (Intel Quick Sync Video acceleration) (codec vp9)
V....D vqc ViewQuest VQC
V..X.D vvc VVC (Versatile Video Coding)
VF...D wbmp WBMP (Wireless Application Protocol Bitmap) image
V....D wcmv WinCAM Motion Video
VF...D webp WebP image
V...BD wmv1 Windows Media Video 7
V...BD wmv2 Windows Media Video 8
V....D wmv3 Windows Media Video 9
V....D wmv3image Windows Media Video 9 Image
V....D wnv1 Winnov WNV1
V..... wrapped_avframe AVPacket to AVFrame passthrough
V....D vqavideo Westwood Studios VQA (Vector Quantized Animation) video (codec ws_vqa)
V....D xan_wc3 Wing Commander III / Xan
V....D xan_wc4 Wing Commander IV / Xxan
V....D xbin eXtended BINary text
V....D xbm XBM (X BitMap) image
V....D xface X-face image
V....D xpm XPM (X PixMap) image
V....D xwd XWD (X Window Dump) image
V....D y41p Uncompressed YUV 4:1:1 12-bit
VF...D ylc YUY2 Lossless Codec
V..... yop Psygnosis YOP Video
V....D yuv4 Uncompressed packed 4:2:0
V....D zerocodec ZeroCodec Lossless Video
VF...D zlib LCL (LossLess Codec Library) ZLIB
V....D zmbv Zip Motion Blocks Video
A....D 8svx_exp 8SVX exponential
A....D 8svx_fib 8SVX fibonacci
A....D aac AAC (Advanced Audio Coding)
A....D aac_fixed AAC (Advanced Audio Coding) (codec aac)
A....D libfdk_aac Fraunhofer FDK AAC (codec aac)
A....D aac_latm AAC LATM (Advanced Audio Coding LATM syntax)
A....D ac3 ATSC A/52A (AC-3)
A....D ac3_fixed ATSC A/52A (AC-3) (codec ac3)
A....D acelp.kelvin Sipro ACELP.KELVIN
A....D adpcm_4xm ADPCM 4X Movie
A....D adpcm_adx SEGA CRI ADX ADPCM
A....D adpcm_afc ADPCM Nintendo Gamecube AFC
A....D adpcm_agm ADPCM AmuseGraphics Movie
A....D adpcm_aica ADPCM Yamaha AICA
A....D adpcm_argo ADPCM Argonaut Games
A....D adpcm_ct ADPCM Creative Technology
A....D adpcm_dtk ADPCM Nintendo Gamecube DTK
A....D adpcm_ea ADPCM Electronic Arts
A....D adpcm_ea_maxis_xa ADPCM Electronic Arts Maxis CDROM XA
A....D adpcm_ea_r1 ADPCM Electronic Arts R1
A....D adpcm_ea_r2 ADPCM Electronic Arts R2
A....D adpcm_ea_r3 ADPCM Electronic Arts R3
A....D adpcm_ea_xas ADPCM Electronic Arts XAS
A....D g722 G.722 ADPCM (codec adpcm_g722)
A....D g726 G.726 ADPCM (codec adpcm_g726)
A....D g726le G.726 ADPCM little-endian (codec adpcm_g726le)
A....D adpcm_ima_acorn ADPCM IMA Acorn Replay
A....D adpcm_ima_alp ADPCM IMA High Voltage Software ALP
A....D adpcm_ima_amv ADPCM IMA AMV
A....D adpcm_ima_apc ADPCM IMA CRYO APC
A....D adpcm_ima_apm ADPCM IMA Ubisoft APM
A....D adpcm_ima_cunning ADPCM IMA Cunning Developments
A....D adpcm_ima_dat4 ADPCM IMA Eurocom DAT4
A....D adpcm_ima_dk3 ADPCM IMA Duck DK3
A....D adpcm_ima_dk4 ADPCM IMA Duck DK4
A....D adpcm_ima_ea_eacs ADPCM IMA Electronic Arts EACS
A....D adpcm_ima_ea_sead ADPCM IMA Electronic Arts SEAD
A....D adpcm_ima_iss ADPCM IMA Funcom ISS
A....D adpcm_ima_moflex ADPCM IMA MobiClip MOFLEX
A....D adpcm_ima_mtf ADPCM IMA Capcom's MT Framework
A....D adpcm_ima_oki ADPCM IMA Dialogic OKI
A....D adpcm_ima_qt ADPCM IMA QuickTime
A....D adpcm_ima_rad ADPCM IMA Radical
A....D adpcm_ima_smjpeg ADPCM IMA Loki SDL MJPEG
A....D adpcm_ima_ssi ADPCM IMA Simon & Schuster Interactive
A....D adpcm_ima_wav ADPCM IMA WAV
A....D adpcm_ima_ws ADPCM IMA Westwood
A....D adpcm_ms ADPCM Microsoft
A....D adpcm_mtaf ADPCM MTAF
A....D adpcm_psx ADPCM Playstation
A....D adpcm_sbpro_2 ADPCM Sound Blaster Pro 2-bit
A....D adpcm_sbpro_3 ADPCM Sound Blaster Pro 2.6-bit
A....D adpcm_sbpro_4 ADPCM Sound Blaster Pro 4-bit
A....D adpcm_swf ADPCM Shockwave Flash
A....D adpcm_thp ADPCM Nintendo THP
A....D adpcm_thp_le ADPCM Nintendo THP (little-endian)
A....D adpcm_vima LucasArts VIMA audio
A....D adpcm_xa ADPCM CDROM XA
A....D adpcm_xmd ADPCM Konami XMD
A....D adpcm_yamaha ADPCM Yamaha
A....D adpcm_zork ADPCM Zork
AF...D alac ALAC (Apple Lossless Audio Codec)
A....D amrnb AMR-NB (Adaptive Multi-Rate NarrowBand) (codec amr_nb)
A....D libopencore_amrnb OpenCORE AMR-NB (Adaptive Multi-Rate Narrow-Band) (codec amr_nb)
A....D amrwb AMR-WB (Adaptive Multi-Rate WideBand) (codec amr_wb)
A....D libopencore_amrwb OpenCORE AMR-WB (Adaptive Multi-Rate Wide-Band) (codec amr_wb)
A....D anull null audio
A....D apac Marian's A-pac audio
A....D ape Monkey's Audio
A....D aptx aptX (Audio Processing Technology for Bluetooth)
A....D aptx_hd aptX HD (Audio Processing Technology for Bluetooth)
A....D atrac1 ATRAC1 (Adaptive TRansform Acoustic Coding)
A....D atrac3 ATRAC3 (Adaptive TRansform Acoustic Coding 3)
A....D atrac3al ATRAC3 AL (Adaptive TRansform Acoustic Coding 3 Advanced Lossless)
A....D atrac3plus ATRAC3+ (Adaptive TRansform Acoustic Coding 3+) (codec atrac3p)
A....D atrac3plusal ATRAC3+ AL (Adaptive TRansform Acoustic Coding 3+ Advanced Lossless) (codec atrac3pal)
A....D atrac9 ATRAC9 (Adaptive TRansform Acoustic Coding 9)
A....D on2avc On2 Audio for Video Codec (codec avc)
A....D binkaudio_dct Bink Audio (DCT)
A....D binkaudio_rdft Bink Audio (RDFT)
A....D bmv_audio Discworld II BMV audio
A....D bonk Bonk audio
A....D cbd2_dpcm DPCM Cuberoot-Delta-Exact
A....D comfortnoise RFC 3389 comfort noise generator
A....D cook Cook / Cooker / Gecko (RealAudio G2)
A....D derf_dpcm DPCM Xilam DERF
A....D dfpwm DFPWM1a audio
A....D dolby_e Dolby E
A.S..D dsd_lsbf DSD (Direct Stream Digital), least significant bit first
A.S..D dsd_lsbf_planar DSD (Direct Stream Digital), least significant bit first, planar
A.S..D dsd_msbf DSD (Direct Stream Digital), most significant bit first
A.S..D dsd_msbf_planar DSD (Direct Stream Digital), most significant bit first, planar
A....D dsicinaudio Delphine Software International CIN audio
A....D dss_sp Digital Speech Standard - Standard Play mode (DSS SP)
A....D dst DST (Digital Stream Transfer)
A....D dca DCA (DTS Coherent Acoustics) (codec dts)
A....D dvaudio Ulead DV Audio
A....D eac3 ATSC A/52B (AC-3, E-AC-3)
A....D evrc EVRC (Enhanced Variable Rate Codec)
A....D fastaudio MobiClip FastAudio
AF...D flac FLAC (Free Lossless Audio Codec)
A....D ftr FTR Voice
A....D g723_1 G.723.1
A....D g729 G.729
A....D gremlin_dpcm DPCM Gremlin
A....D gsm GSM
A....D gsm_ms GSM Microsoft variant
A....D hca CRI HCA
A....D hcom HCOM Audio
A....D iac IAC (Indeo Audio Coder)
A....D ilbc iLBC (Internet Low Bitrate Codec)
A....D imc IMC (Intel Music Coder)
A....D interplay_dpcm DPCM Interplay
A....D interplayacm Interplay ACM
A....D mace3 MACE (Macintosh Audio Compression/Expansion) 3:1
A....D mace6 MACE (Macintosh Audio Compression/Expansion) 6:1
A....D metasound Voxware MetaSound
A....D misc4 Micronas SC-4 Audio
A....D mlp MLP (Meridian Lossless Packing)
A....D mp1 MP1 (MPEG audio layer 1)
A....D mp1float MP1 (MPEG audio layer 1) (codec mp1)
A....D mp2 MP2 (MPEG audio layer 2)
A....D mp2float MP2 (MPEG audio layer 2) (codec mp2)
A....D mp3float MP3 (MPEG audio layer 3) (codec mp3)
A....D mp3 MP3 (MPEG audio layer 3)
A....D mp3adufloat ADU (Application Data Unit) MP3 (MPEG audio layer 3) (codec mp3adu)
A....D mp3adu ADU (Application Data Unit) MP3 (MPEG audio layer 3)
A....D mp3on4float MP3onMP4 (codec mp3on4)
A....D mp3on4 MP3onMP4
A....D als MPEG-4 Audio Lossless Coding (ALS) (codec mp4als)
A....D msnsiren MSN Siren
A....D mpc7 Musepack SV7 (codec musepack7)
A....D mpc8 Musepack SV8 (codec musepack8)
A....D nellymoser Nellymoser Asao
A....D opus Opus
A....D libopus libopus Opus (codec opus)
A....D osq OSQ (Original Sound Quality)
A....D paf_audio Amazing Studio Packed Animation File Audio
A....D pcm_alaw PCM A-law / G.711 A-law
A....D pcm_bluray PCM signed 16|20|24-bit big-endian for Blu-ray media
A....D pcm_dvd PCM signed 16|20|24-bit big-endian for DVD media
A....D pcm_f16le PCM 16.8 floating point little-endian
A....D pcm_f24le PCM 24.0 floating point little-endian
A....D pcm_f32be PCM 32-bit floating point big-endian
A....D pcm_f32le PCM 32-bit floating point little-endian
A....D pcm_f64be PCM 64-bit floating point big-endian
A....D pcm_f64le PCM 64-bit floating point little-endian
A....D pcm_lxf PCM signed 20-bit little-endian planar
A....D pcm_mulaw PCM mu-law / G.711 mu-law
A....D pcm_s16be PCM signed 16-bit big-endian
A....D pcm_s16be_planar PCM signed 16-bit big-endian planar
A....D pcm_s16le PCM signed 16-bit little-endian
A....D pcm_s16le_planar PCM signed 16-bit little-endian planar
A....D pcm_s24be PCM signed 24-bit big-endian
A....D pcm_s24daud PCM D-Cinema audio signed 24-bit
A....D pcm_s24le PCM signed 24-bit little-endian
A....D pcm_s24le_planar PCM signed 24-bit little-endian planar
A....D pcm_s32be PCM signed 32-bit big-endian
A....D pcm_s32le PCM signed 32-bit little-endian
A....D pcm_s32le_planar PCM signed 32-bit little-endian planar
A....D pcm_s64be PCM signed 64-bit big-endian
A....D pcm_s64le PCM signed 64-bit little-endian
A....D pcm_s8 PCM signed 8-bit
A....D pcm_s8_planar PCM signed 8-bit planar
A....D pcm_sga PCM SGA
A....D pcm_u16be PCM unsigned 16-bit big-endian
A....D pcm_u16le PCM unsigned 16-bit little-endian
A....D pcm_u24be PCM unsigned 24-bit big-endian
A....D pcm_u24le PCM unsigned 24-bit little-endian
A....D pcm_u32be PCM unsigned 32-bit big-endian
A....D pcm_u32le PCM unsigned 32-bit little-endian
A....D pcm_u8 PCM unsigned 8-bit
A....D pcm_vidc PCM Archimedes VIDC
A....D qcelp QCELP / PureVoice
A....D qdm2 QDesign Music Codec 2
A....D qdmc QDesign Music Codec 1
A....D qoa QOA (Quite OK Audio)
A....D real_144 RealAudio 1.0 (14.4K) (codec ra_144)
A....D real_288 RealAudio 2.0 (28.8K) (codec ra_288)
A....D ralf RealAudio Lossless
A....D rka RKA (RK Audio)
A....D roq_dpcm DPCM id RoQ
A....D s302m SMPTE 302M
A....D sbc SBC (low-complexity subband codec)
A....D sdx2_dpcm DPCM Squareroot-Delta-Exact
A....D shorten Shorten
A....D sipr RealAudio SIPR / ACELP.NET
A....D siren Siren
A....D smackaud Smacker audio (codec smackaudio)
A....D sol_dpcm DPCM Sol
A..X.D sonic Sonic
A....D speex Speex
AF...D tak TAK (Tom's lossless Audio Kompressor)
A....D truehd TrueHD
A....D truespeech DSP Group TrueSpeech
AF...D tta TTA (True Audio)
A....D twinvq VQF TwinVQ
A....D vmdaudio Sierra VMD audio
A....D vorbis Vorbis
A..... libvorbis libvorbis (codec vorbis)
A....D wady_dpcm DPCM Marble WADY
A....D wavarc Waveform Archiver
A....D wavesynth Wave synthesis pseudo-codec
AFS..D wavpack WavPack
A....D ws_snd1 Westwood Audio (SND1) (codec westwood_snd1)
A....D wmalossless Windows Media Audio Lossless
A....D wmapro Windows Media Audio 9 Professional
A....D wmav1 Windows Media Audio 1
A....D wmav2 Windows Media Audio 2
A....D wmavoice Windows Media Audio Voice
A....D xan_dpcm DPCM Xan
A....D xma1 Xbox Media Audio 1
A....D xma2 Xbox Media Audio 2
S..... ssa ASS (Advanced SubStation Alpha) subtitle (codec ass)
S..... ass ASS (Advanced SubStation Alpha) subtitle
S..... dvbsub DVB subtitles (codec dvb_subtitle)
S..... dvdsub DVD subtitles (codec dvd_subtitle)
S..... cc_dec Closed Captions (EIA-608 / CEA-708) (codec eia_608)
S..... pgssub HDMV Presentation Graphic Stream subtitles (codec hdmv_pgs_subtitle)
S..... jacosub JACOsub subtitle
S..... microdvd MicroDVD subtitle
S..... mov_text 3GPP Timed Text subtitle
S..... mpl2 MPL2 subtitle
S..... pjs PJS subtitle
S..... realtext RealText subtitle
S..... sami SAMI subtitle
S..... stl Spruce subtitle format
S..... srt SubRip subtitle (codec subrip)
S..... subrip SubRip subtitle
S..... subviewer SubViewer subtitle
S..... subviewer1 SubViewer1 subtitle
S..... text Raw text subtitle
S..... vplayer VPlayer subtitle
S..... webvtt WebVTT subtitle
S..... xsub XSUB
@stevezau
Correct misrepresented information:
To my knowledge,
libaom-av1
andlibdav1d
serve different purposes. The former is for encoding, while the latter is for decoding.
libaom-av1
seems to have been used for both encoder and decoder. (libdav1d
is for decoder only.)
Then, when I guessed the problem, it seems that the performance was high because libdav1d was used in the host environment, and the performance was low because libom-av1 was used in the Docker container environment.
Check a little more precisely whether ffmpeg
can use the libav1d
codec in the Docker container.
First, check whether the libav1d library is installed in the Docker environment with the following command. (Checking with ffmpeg --codes
seems to be a little more accurate.)
ffmpeg -codecs | grep libdav1d
In my environment, the output is as follows.
# ...
DEV.L. av1 Alliance for Open Media AV1 (decoders: libdav1d libaom-av1 av1 av1_cuvid av1_qsv) (encoders: libaom-av1 librav1e libsvtav1 av1_nvenc av1_qsv av1_vaapi)
(decoders: libdav1d
in Alliance for Open Media AV1
)
-c:v libdav1d
when decoding ffmpeg to check if it is decoded.sudo apt install libdav1d-dev
# If there is nothing new to install, you can skip it because the library is already included in the Docker image.
./configure --enable-nonfree \
# ....
--enable-libdav1d
# ...
(I didn't know you'd use all the ./configure
settings I suggested. They are the commands I used to build ffmpeg for my specific case, and there may be options you don't need.)
make install
, check if ffmpeg
command includes --enable-libdav1d
. If you type ffmpeg command without any options, configuration
item will appear.ffmpeg
ffmpeg version 6.1.1-3ubuntu5+esm1 Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 13 (Ubuntu 13.2.0-23ubuntu4)
configuration: --prefix=/usr --extra-version=3ubuntu5+esm1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --disable-omx --enable-gnutls --enable-libaom --enable-libass --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libharfbuzz --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-openal --enable-opencl --enable-opengl --disable-sndio --enable-libvpl --disable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-ladspa --enable-libbluray --enable-libjack --enable-libpulse --enable-librabbitmq --enable-librist --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libx264 --enable-libzmq --enable-libzvbi --enable-lv2 --enable-sdl2 --enable-libplacebo --enable-librav1e --enable-pocketsphinx --enable-librsvg --enable-libjxl --enable-shared --enable-libdav1d
The configuration section should contain --enable-libdav1d
. (If it doesn't show up, you need to check what file ffmpeg is running as. Since the Docker container is currently running as the linuxserver/ffmpeg:7.0.1
image, there may be two ffmpeg binary files. And if you are using a custom-built ffmpeg, you probably don't need to use the Docker image that includes ffmpeg
.)
Now, let's start the thumbnail and check if it worked using libdav1d
.
@stevezau i will try fixing this later.or adding a proper fix
Linuxserver image was updated with support for libdav1d in https://github.com/linuxserver/docker-ffmpeg/pull/79 If you initiate a new build of your docker image, it should support the dav1d decoder
thank you!
hmm, it is still very slow/has issues when running on av1 files in the container. ill have to dig in and debug later.. as best I can as I'm out of my depth here :)
Ignore that.. I updated the code to change to "auto" hwaccel mode. FFMPEG should now choose the best path. With the latest update to ffmpeg container it should also now support AV1 properly. Closing this issue as resolved.
There is a known issue where AV1 codes are extremely slow to process when using the docker container.
For example, it runs at 0.8x speed in the container; on the native machine, the exact same FFmpeg command runs at 10x. The only difference I can see is that the av1 lib in the container uses
[libaom-av1 @ 0x559ad8f192c0] 3.8.2
, while the native host uses[libdav1d @ 0x55e42e5f4640] libdav1d 1.2.1
.I am unsure how to change that as I use the linuxserver/ffmpeg base image.
Leaving this ticket open, I hope a ffmpeg expert can help as i've run out of ideas.