Draft:Dav1d: Difference between revisions
m minor edits to multithreaded paragraph |
m mention dav1d as a stopgap solution |
||
Line 18: | Line 18: | ||
== History == |
== History == |
||
In October 2018, Ronald Bultje and Jean-Baptiste Kempf announced dav1d at the VideoLAN Developer Days 2018 conference.<ref>{{Cite AV media |url=https://www.youtube.com/watch?v=UhIgBdrKyNM |title=Video Dev Days 2018: Dav1d: a fast new AV1 decoder |language=en |access-date=2024-04-29 |via=www.youtube.com}}</ref> The |
In October 2018, Ronald Bultje and Jean-Baptiste Kempf announced dav1d at the VideoLAN Developer Days 2018 conference.<ref>{{Cite AV media |url=https://www.youtube.com/watch?v=UhIgBdrKyNM |title=Video Dev Days 2018: Dav1d: a fast new AV1 decoder |language=en |access-date=2024-04-29 |via=www.youtube.com}}</ref> The goal of the project being to develop a fast AV1 software decoder to jumpstart the AV1 ecosystem and act as a [[stopgap]] solution until AV1 hardware decoders are common place. |
||
Releases 0.1 to 0.7.1 were primarily dedicated to [[Color depth|low-bitdepth]] [[Single instruction, multiple data|SIMD]] optimizations, aimed at enhancing decoding efficiency on x86 and ARM.<ref>{{Cite web |title=dav1d 0.7.1 - Jean-Baptiste Kempf's Website |url=https://jbkempf.com/blog/dav1d-0.7.1/ |access-date=2024-04-29 |website=jbkempf.com}}</ref> In 2019, [[Benchmark (computing)|benchmarks]] showed that dav1d 0.5 was the fastest AV1 decoder in comparison to libgav1 and libaom.<ref>{{Cite web |last=Hoeven |first=Ewout ter |date=2019-10-10 |title=AV1 is ready for prime time Part 2: Decoding performance |url=https://medium.com/@ewoutterhoeven/av1-is-ready-for-prime-time-part-2-decoding-performance-d3428221313 |access-date=2024-04-29 |website=Medium |language=en}}</ref> Subsequent releases, from 0.7.1 to 1.0, shifted focus to high-bitdepth SIMD optimizations.<ref>{{Cite web |title=dav1d 0.9.1: a ton of asm - Jean-Baptiste Kempf's Website |url=https://jbkempf.com/blog/2021/dav1d-0.9.1-a-ton-of-asm/ |access-date=2024-04-29 |website=jbkempf.com}}</ref> |
The first usable version of dav1d, called 0.1.0 Gazelle, it was released in December 2018.<ref>{{Cite web |title=First release of dav1d, the AV1 decoder - Jean-Baptiste Kempf's Website |url=https://jbkempf.com/blog/First-release-of-dav1d/ |access-date=2024-04-29 |website=jbkempf.com}}</ref> Releases 0.1.0 to 0.7.1 were primarily dedicated to [[Color depth|low-bitdepth]] [[Single instruction, multiple data|SIMD]] optimizations, aimed at enhancing decoding efficiency on x86 and ARM.<ref>{{Cite web |title=dav1d 0.7.1 - Jean-Baptiste Kempf's Website |url=https://jbkempf.com/blog/dav1d-0.7.1/ |access-date=2024-04-29 |website=jbkempf.com}}</ref> In 2019, [[Benchmark (computing)|benchmarks]] showed that dav1d 0.5 was the fastest AV1 decoder in comparison to libgav1 and libaom.<ref>{{Cite web |last=Hoeven |first=Ewout ter |date=2019-10-10 |title=AV1 is ready for prime time Part 2: Decoding performance |url=https://medium.com/@ewoutterhoeven/av1-is-ready-for-prime-time-part-2-decoding-performance-d3428221313 |access-date=2024-04-29 |website=Medium |language=en}}</ref> Subsequent releases, from 0.7.1 to 1.0, shifted focus to high-bitdepth SIMD optimizations.<ref>{{Cite web |title=dav1d 0.9.1: a ton of asm - Jean-Baptiste Kempf's Website |url=https://jbkempf.com/blog/2021/dav1d-0.9.1-a-ton-of-asm/ |access-date=2024-04-29 |website=jbkempf.com}}</ref> |
||
From the beginning, dav1d was designed to be multithreaded, allowing for a combination of both frame-level [[Parallelism (computing)|parallelism]] and tile-level parallelism. The 1.0.0 release introduced a [[thread pool]] design, where each component in the decoding loop runs as a generic task with a simple dependency management mechanism<ref>{{Cite AV media |url=https://www.youtube.com/watch?v=a4uretCJh_4 |title=Ronald S. Bultje - Low-level wizardry in dav1d |language=en |access-date=2024-05-03 |via=www.youtube.com}}</ref>. In this design, worker threads iterate over a list of available tasks, allowing for a more resource-efficient parallel decoding scheme that is independent of bitstream features like tiles. |
From the beginning, dav1d was designed to be multithreaded, allowing for a combination of both frame-level [[Parallelism (computing)|parallelism]] and tile-level parallelism. The 1.0.0 release introduced a [[thread pool]] design, where each component in the decoding loop runs as a generic task with a simple dependency management mechanism<ref>{{Cite AV media |url=https://www.youtube.com/watch?v=a4uretCJh_4 |title=Ronald S. Bultje - Low-level wizardry in dav1d |language=en |access-date=2024-05-03 |via=www.youtube.com}}</ref>. In this design, worker threads iterate over a list of available tasks, allowing for a more resource-efficient parallel decoding scheme that is independent of bitstream features like tiles. |
Revision as of 18:28, 3 May 2024
Draft article not currently submitted for review.
This is a draft Articles for creation (AfC) submission. It is not currently pending review. While there are no deadlines, abandoned drafts may be deleted after six months. To edit the draft click on the "Edit" tab at the top of the window. To be accepted, a draft should:
It is strongly discouraged to write about yourself, your business or employer. If you do so, you must declare it. Where to get help
How to improve a draft
You can also browse Wikipedia:Featured articles and Wikipedia:Good articles to find examples of Wikipedia's best writing on topics similar to your proposed article. Improving your odds of a speedy review To improve your odds of a faster review, tag your draft with relevant WikiProject tags using the button below. This will let reviewers know a new draft has been submitted in their area of interest. For instance, if you wrote about a female astronomer, you would want to add the Biography, Astronomy, and Women scientists tags. Editor resources
Last edited by Trudluc (talk | contribs) 17 days ago. (Update) |
dav1d is a free and open-source software library and a command-line utility to decode video streams in the AV1 video coding format. It is developed by the VideoLAN and FFmpeg communities and sponsored by the Alliance for Open Media.[1] It is designed to be fast, small, cross-platform and multithreaded.[2]
dav1d is released under the BSD 2-clause "Simplified" License, a distinction from the Copyleft licensing favored by projects like FFmpeg and VideoLAN. This strategic choice of a more permissive license was made to encourage wider adoption of AV1. The decision to adopt a permissive license model for dav1d finds its roots in the Vorbis project, where similar licensing strategies were employed to promote adoption and prevent the entrenchment of proprietary formats.[3]
History
In October 2018, Ronald Bultje and Jean-Baptiste Kempf announced dav1d at the VideoLAN Developer Days 2018 conference.[4] The goal of the project being to develop a fast AV1 software decoder to jumpstart the AV1 ecosystem and act as a stopgap solution until AV1 hardware decoders are common place.
The first usable version of dav1d, called 0.1.0 Gazelle, it was released in December 2018.[5] Releases 0.1.0 to 0.7.1 were primarily dedicated to low-bitdepth SIMD optimizations, aimed at enhancing decoding efficiency on x86 and ARM.[6] In 2019, benchmarks showed that dav1d 0.5 was the fastest AV1 decoder in comparison to libgav1 and libaom.[7] Subsequent releases, from 0.7.1 to 1.0, shifted focus to high-bitdepth SIMD optimizations.[8]
From the beginning, dav1d was designed to be multithreaded, allowing for a combination of both frame-level parallelism and tile-level parallelism. The 1.0.0 release introduced a thread pool design, where each component in the decoding loop runs as a generic task with a simple dependency management mechanism[9]. In this design, worker threads iterate over a list of available tasks, allowing for a more resource-efficient parallel decoding scheme that is independent of bitstream features like tiles.
References
- ^ "dav1d - dav1d is an AV1 decoder - VideoLAN". www.videolan.org. Retrieved 2024-04-26.
- ^ "Introducing dav1d: a new AV1 decoder - Jean-Baptiste Kempf's Website". jbkempf.com. Retrieved 2024-04-26.
- ^ "LWN.net: RMS on the Ogg Vorbis license". lwn.net. Retrieved 2024-04-29.
- ^ Video Dev Days 2018: Dav1d: a fast new AV1 decoder. Retrieved 2024-04-29 – via www.youtube.com.
- ^ "First release of dav1d, the AV1 decoder - Jean-Baptiste Kempf's Website". jbkempf.com. Retrieved 2024-04-29.
- ^ "dav1d 0.7.1 - Jean-Baptiste Kempf's Website". jbkempf.com. Retrieved 2024-04-29.
- ^ Hoeven, Ewout ter (2019-10-10). "AV1 is ready for prime time Part 2: Decoding performance". Medium. Retrieved 2024-04-29.
- ^ "dav1d 0.9.1: a ton of asm - Jean-Baptiste Kempf's Website". jbkempf.com. Retrieved 2024-04-29.
- ^ Ronald S. Bultje - Low-level wizardry in dav1d. Retrieved 2024-05-03 – via www.youtube.com.