Making the rav1d Video Decoder 1% Faster, https://ohadravid.github.io/posts/2025-05-rav1d-faster/.
The author explains the approach: how to measure, to profile, and how to improve the code. Really great writing and excellent findings!
[Перевод] Ускоряем работу видеодекодера на 1%
Какое-то время назад memorysafety.org объявил о конкурсе по повышению производительности rav1d — порта AV1-декодера dav1d на Rust. Моя фамилия Равид, совсем как название декодера, поэтому я решил, что будет забавно попробовать (хоть я и, вероятно , не смогу участвовать в конкурсе). Эта статья посвящена двум найденным мной небольшим улучшениям производительности ( первый PR , второй PR ) и рассказу о том, как я их нашёл.
https://habr.com/ru/articles/912136/
#оптимизация_кода #обработка_видео #декодер #dav1d #rav1d #godbolt
@wyatt I've seen others interpret it as rav1d offering a $20,000 bug bounty for dav1d, the C decoder. If you find exploitable undefined behavior that the dav1d devs have to spend 5% of CPU time to prevent, you win.
#rav1d #dav1d #av1 #BugBounty #UndefinedBehavior #riir #rustlang
Nous avons déjà parlé du codec vidéo AV1 (pour AOMedia Video 1). Il s'agit d'un codec moderne qui offre une compression plus élevée que le HEVC (H.265) et qui a un avantage sur ses concurrents : il est ouvert et ne dépend ni de brevets, ni de redevan...
If any sw-decoder people (#dav1d, #ffmpeg, #vpx etc.) read this, do you know how feasible it would be to make decoders:
1. support output formats common for hw-decoders, like NV12, P010 etc.? Do some already do, do the #gstreamer implementions just miss something? Do I miss something?
2. support externally allocated buffers, crucially ones with stride != width?
Both points could help make things more performant - and together they could even allow zero-copy playback with common display engines.
HandBrake uses the dav1d decoder for AV1 video decoding. Dav1d is a high-performance and efficient open-source AV1 decoder developed by the VideoLAN, VLC, and FFmpeg communities. It is designed to provide fast and reliable decoding of AV1 video streams while minimizing CPU usage.
Handbrake 1.8.1 was released. This release was mostly bug fixes, but there were two third-party libraries that got updated.
- FFmpeg 7.0.1 (decoding and filters)
- libdav1d 1.4.3 (AV1 video decoding)
https://github.com/HandBrake/HandBrake/releases/tag/1.8.1
https://ffmpeg.org/
https://code.videolan.org/videolan/dav1d
#Linux #handbrake #video #transcoder #ffmpeg #libdav1d #dav1d #av1