View previous topic :: View next topic |
Author |
Message |
nagmat84 Apprentice
Joined: 27 Mar 2007 Posts: 271
|
Posted: Wed Jul 03, 2024 5:03 pm Post subject: AV1 codec support (dav1d, aom, svt-av1) in VLC and FFMpeg |
|
|
I am wondering what use flags I need to enable to get support for AV1 decoding.
This a list of packages, AV1-related use flags and their default setting:- media-video/vlc
- aom (disabled)
- dav1d (disabled)
- media-video/ffmpeg
- dav1d (enabled)
- libaom (disabled)
- svt-av1 (disabled)
Moreover, media-video/vlc supports the use flag ffmpeg, which is enabled by default.
Does this mean that VLC is able to decode AV1 video indirectly via ffmpeg?
What would change, if dav1d is also enabled for media-video/vlc directly? Are there any advantages or disadvantages in terms of efficiency, quality or stability?
What are the advantages/disadvantages of the other AV1-libraries? What library is used if support for more than one is enabled? |
|
Back to top |
|
|
stefantalpalaru Tux's lil' helper
Joined: 11 Jan 2009 Posts: 76 Location: Italy
|
Posted: Sun Jul 07, 2024 2:00 pm Post subject: |
|
|
> I am wondering what use flags I need to enable to get support for AV1 decoding.
"dav1d" |
|
Back to top |
|
|
Banana Moderator
Joined: 21 May 2004 Posts: 1746 Location: Germany
|
|
Back to top |
|
|
Cygon Tux's lil' helper
Joined: 05 Feb 2006 Posts: 115 Location: Germany
|
Posted: Thu Jul 11, 2024 11:04 am Post subject: |
|
|
Some additional details:
- ffmpeg consists of the command-line front end and a software library called "libav" that enables other applications to directly make use of the codecs and features built into ffmpeg.
- VLC is able to directly use dav1d (https://github.com/videolan/vlc/blob/master/modules/codec/dav1d.c) or use it through ffmpeg's libav.
- MPV uses dav1d only via ffmpeg's libav.
- Both VLC and MPV can use (and I think, prioritize) hardware decoding via vaapi, nvdec or even cuda or vulkan (most recent Intel CPUs, NVidia's RTX30xx and equivalent AMD offerings can decode AV1 in hardware).
Enabling dav1d in VLC might yield a tiny gain in efficiency. That is, if your system actually uses software decoding.
As for libaom, it is the reference encoder and decoder from the AV1 developers. Before dav1d, VLC used it for playback (and there probably is still a way to enable it). It is slower than dav1d and should be visually identical (early versions of dav1d didn't support all features of AV1, like synthetic film grain, but that was long ago).
- SVT-AV1 is a separate AV1 encoder and decoder first developed by Intel. It has now become the official reference encoder and is being worked on by Google, Netflix and Intel.
- I don't think any of the popular video players use or support SVT-AV1 for decoding.
- Enabling SVT-AV1 in ffmpeg likely only helps you when you want to encode video, but in that case, consider installing SVT-AV1 (media-libs/svt-av1) or its SVT-AV1-psy fork directly and encode via SvtAv1EncApp.
|
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|