FrameFlux.Avalonia.Linux
0.1.1
dotnet add package FrameFlux.Avalonia.Linux --version 0.1.1
NuGet\Install-Package FrameFlux.Avalonia.Linux -Version 0.1.1
<PackageReference Include="FrameFlux.Avalonia.Linux" Version="0.1.1" />
<PackageVersion Include="FrameFlux.Avalonia.Linux" Version="0.1.1" />
<PackageReference Include="FrameFlux.Avalonia.Linux" />
paket add FrameFlux.Avalonia.Linux --version 0.1.1
#r "nuget: FrameFlux.Avalonia.Linux, 0.1.1"
#:package FrameFlux.Avalonia.Linux@0.1.1
#addin nuget:?package=FrameFlux.Avalonia.Linux&version=0.1.1
#tool nuget:?package=FrameFlux.Avalonia.Linux&version=0.1.1
FrameFlux.Avalonia.Linux
This package adds the Linux GPU presentation backend for
FrameFlux.Avalonia.MediaView. Register it while configuring Avalonia:
AppBuilder.Configure<App>()
.UsePlatformDetect()
.UseFrameFluxLinux();
GpuComposition renders inside Avalonia's composition tree, so overlays remain
supported. NativeSurface uses a real X11 child window and independent EGL
window surface on X11 and XWayland. With FrameFlux.FFmpeg.NativeAssets.Linux,
HardwarePreferred and Automatic decoding keep VAAPI frames on the GPU,
export them as DRM PRIME DMA-BUF objects, and import NV12 or P010 planes through
EGLImage. Both presentation paths avoid hardware-frame readback, BGRA
conversion, and per-frame texture upload.
Avalonia 12 does not expose a wl_subsurface host through NativeControlHost.
Consequently, a pure Wayland backend can use GpuComposition, while
NativeSurface currently requires X11/XWayland and fails explicitly if its
parent is not an XID.
Zero-copy presentation requires EGL_EXT_image_dma_buf_import; non-linear
buffers also require EGL_EXT_image_dma_buf_import_modifiers. Both packed
NV12/P010 layers and separate luma/chroma DRM layers are supported. Unsupported
drivers and layouts trigger the existing presentation-failure policy and
restart playback through the software renderer.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
-
net8.0
- Avalonia (>= 12.1.1)
- Avalonia.X11 (>= 12.1.1)
- FrameFlux.Avalonia (= 0.1.1)
- FrameFlux.Presentation (= 0.1.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.