CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever 1.0.242.1054

dotnet add package CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever --version 1.0.242.1054
                    
NuGet\Install-Package CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever -Version 1.0.242.1054
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever" Version="1.0.242.1054" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever" Version="1.0.242.1054" />
                    
Directory.Packages.props
<PackageReference Include="CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever --version 1.0.242.1054
                    
#r "nuget: CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever, 1.0.242.1054"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever@1.0.242.1054
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever&version=1.0.242.1054
                    
Install as a Cake Addin
#tool nuget:?package=CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever&version=1.0.242.1054
                    
Install as a Cake Tool

CodeBrix.VideoPlayback.Dav1d

AV1 video decoding for CodeBrix.VideoPlayback, through a binding over dav1d — the reference software AV1 decoder — with self-built native libraries for seven platforms.

dotnet add package CodeBrix.VideoPlayback.Dav1d.BsdLicenseForever
using CodeBrix.VideoPlayback;
using CodeBrix.VideoPlayback.Dav1d;

CodeBrixVideoPlaybackDav1d.Register();      // once, at start-up

VideoPlaybackSession session = new VideoPlaybackSession();
session.Open("clip.webm");
session.Play();

That is the whole of the integration. CodeBrix.VideoPlayback ships no video decoder of its own — a decoder brings a licence and a set of native binaries that not every application wants — so an application that plays AV1 references this package and makes one call. Nothing else in the application ever names a decoder type.

What is in the box

  • AV1 decoding for WebM, Matroska and the bespoke .cbv container, wherever CodeBrix.VideoPlayback can read them.
  • Native dav1d for seven platforms, built from the dav1d source vendored in this repository: Windows x64 and ARM64, macOS Intel and Apple Silicon, and Linux x64, ARM64 and RISC-V 64. They are found automatically, whether an application publishes for one runtime or for none.
  • A zero-copy frame path. dav1d decodes straight into the playback session's own frame-buffer pool: no copy between the decoder's output and a graphics upload, and no buffer allocation at all once playback is warm. dav1d's allocator contract and the pool's contract are the same contract, so nothing is ever reformatted.
  • A sequence-header probeDav1dDecoderFactory.TryProbe — that describes a stream's dimensions, layout, bit depth and colour before a single frame is decoded, so a host can size its surface first.
  • 8, 10 and 12-bit content, 4:2:0, 4:2:2, 4:4:4 and monochrome, with film grain, HDR metadata and pixel aspect ratio carried through to the frame.

What it does not do

No hardware decoding — dav1d is a software decoder. No other codec: AV1 and nothing else. No encoding. No drawing: frames come out as planar YUV with their colour metadata attached, and an application also needs a presenterCodeBrix.VideoPlayback.Skia for a SkiaSharp application, or the CodeBrix.Platform video player element — to put them on a screen. Files with Opus audio also need CodeBrix.Audio.Opus; Vorbis needs nothing extra.

Correctness

The binding decodes six conformance streams — 8-bit and 10-bit, 4:2:0 and 4:4:4, two encoders, an odd frame size, film grain on and off — and the MD5 of its output matches, byte for byte, what dav1d's own command-line decoder produces. Those hashes were established by three independent decoders. The streams and the hashes live in the repository and are read from there; nothing is downloaded, at build time or test time.

Documentation

  • AGENT-README.txt — the full consumer guide: the API, the options, worked examples, and the pitfalls.
  • MAINTAINER-README.txt — the binding's design and how to work on this repository.
  • EXTRAS-README.txt — the native build tooling, the conformance streams and the test assets.

Licence

BSD 2-Clause — dav1d's own licence. See LICENSE and THIRD-PARTY-NOTICES.txt.

Copyright (c) 2026 Jeremy Ellis and contributors.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.242.1054 0 8/30/2026
1.0.242.429 31 8/30/2026
1.0.241.1363 46 8/29/2026