![]() |
VOOZH | about |
dotnet add package LibVLCSharp.Avalonia --version 3.10.0
NuGet\Install-Package LibVLCSharp.Avalonia -Version 3.10.0
<PackageReference Include="LibVLCSharp.Avalonia" Version="3.10.0" />
<PackageVersion Include="LibVLCSharp.Avalonia" Version="3.10.0" />Directory.Packages.props
<PackageReference Include="LibVLCSharp.Avalonia" />Project file
paket add LibVLCSharp.Avalonia --version 3.10.0
#r "nuget: LibVLCSharp.Avalonia, 3.10.0"
#:package LibVLCSharp.Avalonia@3.10.0
#addin nuget:?package=LibVLCSharp.Avalonia&version=3.10.0Install as a Cake Addin
#tool nuget:?package=LibVLCSharp.Avalonia&version=3.10.0Install as a Cake Tool
<h3 align="center"> <img src="src/assets/banner.png"/> </h3>
๐ Join the chat at https://discord.gg/3h3K3JF
๐ LibVLCSharp API Docs
LibVLCSharp is a cross-platform audio and video API for .NET platforms based on VideoLAN's LibVLC Library. It provides a comprehensive multimedia API that can be used across mobile, server and desktop to render video and output audio as well as encode and stream.
The official repository URL for this repo is https://code.videolan.org/videolan/LibVLCSharp.
Check out libvlc-nuget to get a basic understanding of how libvlc works, what it can offer and how to install it with NuGet.
Some of the features include:
Most things you can achieve with the regular VLC desktop app, you can also achieve using libvlc.
Full featured video control for Xamarin.Forms available in LibVLCSharp.Forms (iOS/Android) and Uno platform (iOS/Android/UWP).
<h3 align="center"> <img src="src/assets/media-element.jpg"/> </h3>
Mono, .NET Framework and .NET Core runtimes are supported.
LibVLC is the actual VLC engine written mostly in C/C++ and compiled for your target platform. More information here.
| Platform | LibVLC Package | NuGet | Minimum OS Version |
|---|---|---|---|
| Windows | VideoLAN.LibVLC.Windows | ๐ LibVLCWindowsBadge |
Windows XP |
| UWP | VideoLAN.LibVLC.UWP | ๐ LibVLCWin10Badge |
Windows 10 |
| Mac | VideoLAN.LibVLC.Mac | ๐ LibVLCMacBadge |
macOS 10.7 |
| Android | VideoLAN.LibVLC.Android | ๐ LibVLCAndroidBadge |
Android 2.3 |
| iOS | VideoLAN.LibVLC.iOS | ๐ LibVLCiOSBadge |
iOS 8.4 |
| tvOS | VideoLAN.LibVLC.tvOS | ๐ LibVLCtvOSBadge |
tvOS 10.2 |
| Linux | N/A | N/A |
dotnet add package VideoLAN.LibVLC.[Windows|UWP|Android|iOS|Mac|tvOS]
LibVLCSharp is the .NET wrapper that consumes LibVLC and allows you to interact with native code from C#/F#.
| Platform | LibVLCSharp Package | NuGet |
|---|---|---|
| .NET Standard | ๐ LibVLCSharpBadge |
|
| Xamarin.Android | ๐ LibVLCSharpBadge |
|
| Xamarin.iOS | ๐ LibVLCSharpBadge |
|
| Xamarin.tvOS | ๐ LibVLCSharpBadge |
|
| Xamarin.Mac | ๐ LibVLCSharpBadge |
|
| UWP | ๐ LibVLCSharpUWPBadge |
|
| WinUI | ๐ LibVLCSharpWinUIBadge |
|
| Xamarin.Forms | ๐ LibVLCSharpFormsBadge |
|
| MAUI | ๐ LibVLCSharpMAUIBadge |
|
| WPF | ๐ LibVLCSharpWPFBadge |
|
| Xamarin.Forms.WPF | ๐ LibVLCSharpFormsWPFBadge |
|
| GTK | ๐ LibVLCSharpGTKBadge |
|
| Xamarin.Forms.GTK | ๐ LibVLCSharpFormsGTKBadge |
|
| Windows Forms | ๐ LibVLCSharpWinFormsBadge |
|
| Uno Platform | ๐ LibVLCSharpUnoBadge |
|
| Avalonia | ๐ LibVLCSharpAvaloniaBadge |
|
| Eto.Forms | ๐ LibVLCSharpEtoBadge |
|
| Unity3D - Windows | VLC for Unity (Windows) | ๐ VLCUnityBadge |
| Unity3D - UWP | VLC for Unity (UWP) | ๐ VLCUnityBadge |
| Unity3D - Android | VLC for Unity (Android) | ๐ VLCUnityBadge |
| Unity3D - iOS | VLC for Unity (iOS) | ๐ VLCUnityBadge |
| Unity3D - macOS | VLC for Unity (macOS) | ๐ VLCUnityBadge |
LibVLCSharp 4 preview and LibVLC 4 nightly builds are distributed using https://feedz.io/ for now. To pull pre-release versions into your project, use the following NuGet.config file:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="videolan-preview" value="https://f.feedz.io/videolan/preview/nuget/index.json" />
</packageSources>
</configuration>
See the docs for .
Follow the . Make sure you read it since it contains platform-specific caveats
Our is part of this repository and we also have an API docs website.
Feel free to browse it and if you see something missing, you can improve it by sending a PR.
It includes helpful documents such as:
This document details how to use LibVLCSharp in a correct way, notably taking into consideration the native interop part.
This is a Q&A document which I compiled from all the questions I got asked regarding LibVLC and LibVLCSharp. Continuously updated.
When you encounter an issue with LibVLC/LibVLCSharp, identifying the cause is not always straightforward. This document gives you clues on how to go about it.
This page focuses on the core native library and contains information regarding advanced libvlc configuration and its versioning strategy by VideoLAN.
This page indexes all available tutorial materials about LibVLCSharp. There are currently videos, talks, blogposts and code samples.
Here we list several interesting projects made by the community using LibVLCSharp. Feel free to send a PR to yours!
In September 2022, the first book ever about LibVLC, the VideoLAN community and LibVLCSharp was released!
The Good Parts of LibVLC contains everything you need to know about VLC, LibVLC and how to use it from .NET with LibVLCSharp.
For more advanced samples, have a look at libvlcsharp-samples with apps such as:
Feel free to suggest and contribute new samples.
using var libvlc = new LibVLC(enableDebugLogs: true);
using var media = new Media(libvlc, new Uri(@"C:\tmp\big_buck_bunny.mp4"));
using var mediaplayer = new MediaPlayer(media);
mediaplayer.Play();
Console.ReadKey();
LibVLC.cs: Main object pointing to a native libvlc instance in native code.MediaPlayer.cs: Manages playback, offers event listeners and more. Accessible from VideoView with data-binding support.Media.cs: Class representing and providing information about a media such as a video or audio file or stream.VideoView.cs: Custom native view which holds a MediaPlayer object.MediaDiscoverer.cs: This object should be used to find media on NAS and any SMB/UPnP-enabled device on your local network.RendererDiscoverer.cs: Use this to find and use a Chromecast or other distant renderers.Dialog.cs: Dialogs can be raised from the libvlc engine in some cases. Register callbacks with this object.The and packages features a MediaPlayerElement control, similar to the ones provided by the .NET Framework on WPF and UWP. It currently supports iOS, Android and UWP (Uno only).
If you have a request or question regarding the roadmap, feel free to open an issue (using an issue template) or PR.
As this is a libvlc binding, we try to follow the libvlc versioning scheme as much as possible. The versioning strategy is explained in the document.
Check out the file for details about each release.
Pull requests are more than welcome! If you do submit one, please make sure to read the first, and use our pull request template.
You can look through issues we currently have on the VideoLAN Gitlab. Please pick one of our GitLab issue templates so we can assist you better.
There are up for grabs tickets as well if you would like to start contributing.
You have encountered an issue and wish to report it to the VLC dev team?
You can create one on our Gitlab (using an issue template) for .NET related questions/problems.
For LibVLC/VLC specific issues, usually native code, please go to the bug tracker of the VLC project.
Before creating an issue or ticket, please double check for duplicates!
We are on ๐ Join the chat at https://discord.gg/3h3K3JF
We regularly monitor the libvlcsharp tag on ๐ stackoverflow
If you have any question or if you're not sure it's actually an issue, please visit our forum.
If you would like VLC developers to provide you with:
Feel free to contact us.
Please read and follow the VideoLAN CoC license.
LibVLCSharp is released under the LGPLv2.1 and is also available under a commercial license.
Note: the .NET4.0 LibVLCSharp build references a nuget package that may indicate its license as the .NET Library license but it's actually opensource under MIT.
<br/> <div align="center"> <a href="https://code.videolan.org/videolan/LibVLCSharp"><img src="src/assets/icon.png"/></a> </div>
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 netcoreapp2.0 was computed. netcoreapp2.1 netcoreapp2.1 was computed. netcoreapp2.2 netcoreapp2.2 was computed. netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 netstandard2.0 is compatible. netstandard2.1 netstandard2.1 was computed. |
| .NET Framework | net461 net461 was computed. net462 net462 was computed. net463 net463 was computed. net47 net47 was computed. net471 net471 was computed. net472 net472 was computed. net48 net48 was computed. net481 net481 was computed. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen40 tizen40 was computed. tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
Showing the top 5 NuGet packages that depend on LibVLCSharp.Avalonia:
| Package | Downloads |
|---|---|
|
Dove.Avalonia.Extensions.Media
Media Controls Extensions for Avalonia.if you need `VideoView` or `PlayerView`,you should install libVLC in your project before init!!! [Windows](https://www.nuget.org/packages/VideoLAN.LibVLC.Windows/) or [MAC](https://www.nuget.org/packages/VideoLAN.LibVLC.Mac/).in Windows,you need add app.manifest and supportOS,you can copy from readme.md the use.if you need `AudioControl`,should download bass Libraries(.dll/.so/.dylib/.a) are separate for x86, x64, ARM by yourself. you can find out from https://github.com/ManagedBass/ManagedBass |
|
|
VlcVideoPlayer.Avalonia
A self-contained VLC-based video player control for Avalonia UI. Includes embedded VLC libraries - no external VLC installation required. |
|
|
HeBianGu.AvaloniaUI.VlcPlayer
Package Description |
|
|
OrbitVideoControl
LibVlc-based video control for Avalonia |
|
|
AetherMedia.Desktop
Package Description |
Showing the top 4 popular GitHub repositories that depend on LibVLCSharp.Avalonia:
| Repository | Stars |
|---|---|
| LANCommander/LANCommander | |
|
BroderQi/Storyboard
้ขๅๅไฝ่
ไธๅถไฝๅข้็ๆฌๅฐๅ้ๅทฅไฝๅฐ๏ผไป่ง้ขๅฏผๅ
ฅใๆฝๅธงใAI ๅๆใๅพๅ/่ง้ข็ๆ๏ผๅฐๆน้ไปปๅกไธๆ็ๅๆ๏ผไธๆก้พ่ทฏๅฎๆๅ้่ตไบง็ฎก็ไธ่พๅบใ
|
|
|
SvenGDK/PS-Multi-Tools
Backup manager with utilities for PS1, PS2, PSX (DVR), PS3, PS4, PS5, PSP & PS Vita, containing downloads for homebrew, firmwares, payloads & more.
|
|
|
aesalazar/AsteroidsWasm
Collection of applications based on a single C# .NET Standard project running in: Blazor Client (WebAssembly), Blazor Server, Electron, WPF, WinForms, Maui, WinUI3
|
| Version | Downloads | Last Updated |
|---|---|---|
| 3.10.0 | 50 | 6/17/2026 |
| 3.9.7.1 | 3,789 | 4/21/2026 |
| 3.9.7 | 890 | 4/16/2026 |
| 3.9.6 | 3,524 | 2/25/2026 |
| 3.9.5 | 10,009 | 12/3/2025 |
| 3.9.4 | 4,970 | 8/4/2025 |
| 3.9.3 | 26,144 | 4/15/2025 |
| 3.9.2 | 12,091 | 1/22/2025 |
| 3.9.1 | 3,376 | 11/13/2024 |
| 3.9.0 | 5,527 | 8/13/2024 |
| 3.8.5 | 5,374 | 5/23/2024 |
| 3.8.4 | 678 | 5/15/2024 |
| 3.8.3 | 481 | 5/13/2024 |
| 3.8.2 | 8,237 | 11/7/2023 |
| 3.8.1 | 2,906 | 10/17/2023 |
| 3.8.0 | 1,316 | 9/26/2023 |
| 3.7.0 | 14,817 | 4/4/2023 |
| 3.6.8 | 1,874 | 3/15/2023 |
| 3.6.7 | 13,226 | 10/3/2022 |
| 3.6.6 | 21,084 | 3/23/2022 |