├── .gitattributes ├── .github ├── FUNDING.yml └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .gitlab └── issue_templates │ ├── bug.md │ └── feature_request.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── NEWS ├── README.md ├── buildsystem ├── azure-pipelines.yml ├── base-template.yml ├── build.cake ├── linux-build.yml ├── mac-build.yml ├── run-tests.sh └── windows-build.yml ├── docs ├── android.md ├── best_practices.md ├── getting_started.md ├── home.md ├── how_do_I_do_X.md ├── libvlc_documentation.md ├── libvlc_preview.md ├── linux-setup.md ├── made_with_libvlcsharp.md ├── media_player_element.md ├── migrating_from_Vlc.DotNet.md ├── troubleshooting.md ├── tutorials.md └── versioning.md ├── samples ├── Forms │ ├── LibVLCSharp.Forms.MediaElement │ │ ├── LibVLCSharp.Forms.Sample.MediaElement.Android │ │ │ ├── Assets │ │ │ │ ├── AboutAssets.txt │ │ │ │ ├── FontAwesome5Brands.otf │ │ │ │ ├── FontAwesome5Regular.otf │ │ │ │ └── FontAwesome5Solid.otf │ │ │ ├── LibVLCSharp.Forms.Sample.MediaElement.Android.csproj │ │ │ ├── MainActivity.cs │ │ │ ├── Properties │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── AssemblyInfo.cs │ │ │ └── Resources │ │ │ │ ├── AboutResources.txt │ │ │ │ ├── Resource.designer.cs │ │ │ │ ├── layout │ │ │ │ ├── Tabbar.axml │ │ │ │ └── Toolbar.axml │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── icon.xml │ │ │ │ └── icon_round.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── icon.png │ │ │ │ └── launcher_foreground.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── icon.png │ │ │ │ └── launcher_foreground.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── icon.png │ │ │ │ └── launcher_foreground.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── icon.png │ │ │ │ └── launcher_foreground.png │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── icon.png │ │ │ │ └── launcher_foreground.png │ │ │ │ └── values │ │ │ │ ├── colors.xml │ │ │ │ └── styles.xml │ │ ├── LibVLCSharp.Forms.Sample.MediaElement.iOS │ │ │ ├── AppDelegate.cs │ │ │ ├── Entitlements.plist │ │ │ ├── Info.plist │ │ │ ├── LibVLCSharp.Forms.Sample.MediaElement.iOS.csproj │ │ │ ├── Main.cs │ │ │ ├── Properties │ │ │ │ └── AssemblyInfo.cs │ │ │ └── Resources │ │ │ │ ├── Default-568h@2x.png │ │ │ │ ├── Default-Portrait.png │ │ │ │ ├── Default-Portrait@2x.png │ │ │ │ ├── Default.png │ │ │ │ ├── Default@2x.png │ │ │ │ ├── FontAwesome5Brands.otf │ │ │ │ ├── FontAwesome5Regular.otf │ │ │ │ ├── FontAwesome5Solid.otf │ │ │ │ ├── Icon-60@2x.png │ │ │ │ ├── Icon-60@3x.png │ │ │ │ ├── Icon-76.png │ │ │ │ ├── Icon-76@2x.png │ │ │ │ ├── Icon-Small-40.png │ │ │ │ ├── Icon-Small-40@2x.png │ │ │ │ ├── Icon-Small-40@3x.png │ │ │ │ ├── Icon-Small.png │ │ │ │ ├── Icon-Small@2x.png │ │ │ │ ├── Icon-Small@3x.png │ │ │ │ └── LaunchScreen.storyboard │ │ └── LibVLCSharp.Forms.Sample.MediaElement │ │ │ ├── App.xaml │ │ │ ├── App.xaml.cs │ │ │ ├── LibVLCSharp.Forms.Sample.MediaElement.csproj │ │ │ ├── MainPage.xaml │ │ │ ├── MainPage.xaml.cs │ │ │ └── MainViewModel.cs │ ├── LibVLCSharp.Forms.Sample.Android │ │ ├── LibVLCSharp.Forms.Sample.Android.csproj │ │ ├── MainActivity.cs │ │ ├── Properties │ │ │ ├── AndroidManifest.xml │ │ │ └── AssemblyInfo.cs │ │ └── Resources │ │ │ ├── Resource.designer.cs │ │ │ ├── drawable-hdpi │ │ │ └── icon.png │ │ │ ├── drawable-xhdpi │ │ │ └── icon.png │ │ │ ├── drawable-xxhdpi │ │ │ └── icon.png │ │ │ ├── drawable │ │ │ └── icon.png │ │ │ ├── layout │ │ │ ├── Main.axml │ │ │ ├── Tabbar.axml │ │ │ └── Toolbar.axml │ │ │ ├── mipmap-hdpi │ │ │ └── Icon.png │ │ │ ├── mipmap-mdpi │ │ │ └── Icon.png │ │ │ ├── mipmap-xhdpi │ │ │ └── Icon.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── Icon.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── Icon.png │ │ │ └── values │ │ │ ├── Strings.xml │ │ │ └── styles.xml │ ├── LibVLCSharp.Forms.Sample.GTK │ │ ├── App.config │ │ ├── LibVLCSharp.Forms.Sample.GTK.csproj │ │ ├── OpenTK.dll.config │ │ ├── Program.cs │ │ ├── packages.config │ │ └── webkit-sharp.dll.config │ ├── LibVLCSharp.Forms.Sample.Mac │ │ ├── AppDelegate.cs │ │ ├── Assets.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── AppIcon-128.png │ │ │ │ ├── AppIcon-128@2x.png │ │ │ │ ├── AppIcon-16.png │ │ │ │ ├── AppIcon-16@2x.png │ │ │ │ ├── AppIcon-256.png │ │ │ │ ├── AppIcon-256@2x.png │ │ │ │ ├── AppIcon-32.png │ │ │ │ ├── AppIcon-32@2x.png │ │ │ │ ├── AppIcon-512.png │ │ │ │ ├── AppIcon-512@2x.png │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── Entitlements.plist │ │ ├── Info.plist │ │ ├── LibVLCSharp.Forms.Sample.Mac.csproj │ │ ├── Main.cs │ │ ├── Main.storyboard │ │ ├── ViewController.cs │ │ ├── ViewController.designer.cs │ │ └── packages.config │ ├── LibVLCSharp.Forms.Sample.iOS │ │ ├── AppDelegate.cs │ │ ├── Entitlements.plist │ │ ├── Info.plist │ │ ├── LibVLCSharp.Forms.Sample.iOS.csproj │ │ ├── Main.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── Resources │ │ │ ├── Default-568h@2x.png │ │ │ ├── Default-Portrait.png │ │ │ ├── Default-Portrait@2x.png │ │ │ ├── Default.png │ │ │ ├── Default@2x.png │ │ │ ├── Icon-60@2x.png │ │ │ ├── Icon-60@3x.png │ │ │ ├── Icon-76.png │ │ │ ├── Icon-76@2x.png │ │ │ ├── Icon-Small-40.png │ │ │ ├── Icon-Small-40@2x.png │ │ │ ├── Icon-Small-40@3x.png │ │ │ ├── Icon-Small.png │ │ │ ├── Icon-Small@2x.png │ │ │ ├── Icon-Small@3x.png │ │ │ └── LaunchScreen.storyboard │ ├── LibVLCSharp.Forms.Sample │ │ ├── App.xaml │ │ ├── App.xaml.cs │ │ ├── LibVLCSharp.Forms.Sample.csproj │ │ ├── MainPage.xaml │ │ ├── MainPage.xaml.cs │ │ └── MainViewModel.cs │ └── LibVLCSharp.Forms.WPF.Sample │ │ ├── App.config │ │ ├── App.xaml │ │ ├── App.xaml.cs │ │ ├── LibVLCSharp.Forms.Sample.WPF.csproj │ │ ├── MainWindow.xaml │ │ ├── MainWindow.xaml.cs │ │ ├── OpenTK.dll.config │ │ └── packages.config ├── LibVLCSharp.Android.Sample │ ├── LibVLCSharp.Android.Sample.csproj │ ├── MainActivity.cs │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ └── Resources │ │ ├── Resource.Designer.cs │ │ ├── layout │ │ └── Main.axml │ │ └── values │ │ └── Strings.xml ├── LibVLCSharp.Avalonia.Sample │ ├── App.xaml │ ├── App.xaml.cs │ ├── Assets │ │ └── avalonia-logo.ico │ ├── LibVLCSharp.Avalonia.Sample.csproj │ ├── Program.cs │ ├── README.md │ ├── ViewLocator.cs │ ├── ViewModels │ │ ├── MainWindowViewModel.cs │ │ └── ViewModelBase.cs │ ├── Views │ │ ├── MainWindow.xaml │ │ ├── MainWindow.xaml.cs │ │ ├── VideoPlayer.axaml │ │ └── VideoPlayer.axaml.cs │ ├── app.manifest │ └── nuget.config ├── LibVLCSharp.Eto.Sample │ ├── Info.plist │ ├── LibVLCSharp.Eto.Sample.csproj │ ├── MacIcon.icns │ ├── MainForm.cs │ └── Program.cs ├── LibVLCSharp.FSharp.Sample │ ├── LibVLCSharp.FSharp.Sample.fsproj │ └── Program.fs ├── LibVLCSharp.GTK.Sample │ ├── LibVLCSharp.GTK.Sample.csproj │ └── Program.cs ├── LibVLCSharp.MAUI.Sample │ ├── App.xaml │ ├── App.xaml.cs │ ├── AppShell.xaml │ ├── AppShell.xaml.cs │ ├── LibVLCSharp.MAUI.Sample.csproj │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── MainViewModel.cs │ ├── MauiProgram.cs │ ├── Platforms │ │ ├── Android │ │ │ ├── AndroidManifest.xml │ │ │ ├── MainActivity.cs │ │ │ ├── MainApplication.cs │ │ │ └── Resources │ │ │ │ └── values │ │ │ │ └── colors.xml │ │ ├── MacCatalyst │ │ │ ├── AppDelegate.cs │ │ │ ├── Info.plist │ │ │ └── Program.cs │ │ ├── Tizen │ │ │ ├── Main.cs │ │ │ └── tizen-manifest.xml │ │ ├── Windows │ │ │ ├── App.xaml │ │ │ ├── App.xaml.cs │ │ │ ├── Package.appxmanifest │ │ │ └── app.manifest │ │ └── iOS │ │ │ ├── AppDelegate.cs │ │ │ ├── Info.plist │ │ │ └── Program.cs │ ├── Properties │ │ └── launchSettings.json │ └── Resources │ │ ├── AppIcon │ │ ├── appicon.svg │ │ └── appiconfg.svg │ │ ├── Fonts │ │ ├── OpenSans-Regular.ttf │ │ └── OpenSans-Semibold.ttf │ │ ├── Images │ │ └── dotnet_bot.svg │ │ ├── Raw │ │ └── AboutAssets.txt │ │ ├── Splash │ │ └── splash.svg │ │ └── Styles │ │ ├── Colors.xaml │ │ └── Styles.xaml ├── LibVLCSharp.Mac.Sample │ ├── AppDelegate.cs │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── AppIcon-128.png │ │ │ ├── AppIcon-128@2x.png │ │ │ ├── AppIcon-16.png │ │ │ ├── AppIcon-16@2x.png │ │ │ ├── AppIcon-256.png │ │ │ ├── AppIcon-256@2x.png │ │ │ ├── AppIcon-32.png │ │ │ ├── AppIcon-32@2x.png │ │ │ ├── AppIcon-512.png │ │ │ ├── AppIcon-512@2x.png │ │ │ └── Contents.json │ │ └── Contents.json │ ├── Entitlements.plist │ ├── Info.plist │ ├── LibVLCSharp.Mac.Sample.csproj │ ├── Main.cs │ ├── Main.storyboard │ ├── ViewController.cs │ ├── ViewController.designer.cs │ └── packages.config ├── LibVLCSharp.NetCore.Sample │ ├── App.config │ ├── LibVLCSharp.NetCore.Sample.csproj │ └── Program.cs ├── LibVLCSharp.UWP.Sample │ ├── App.xaml │ ├── App.xaml.cs │ ├── Assets │ │ ├── LockScreenLogo.scale-200.png │ │ ├── SplashScreen.scale-200.png │ │ ├── Square150x150Logo.scale-200.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── StoreLogo.png │ │ └── Wide310x150Logo.scale-200.png │ ├── LibVLCSharp.UWP.Sample.csproj │ ├── LibVLCSharp.UWP.Sample_TemporaryKey.pfx │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── MainViewModel.cs │ ├── Package.appxmanifest │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ └── Default.rd.xml │ └── RelayCommand.cs ├── LibVLCSharp.WPF.Sample │ ├── App.xaml │ ├── App.xaml.cs │ ├── Controls.xaml │ ├── Controls.xaml.cs │ ├── Example1.xaml │ ├── Example1.xaml.cs │ ├── Example2.xaml │ ├── Example2.xaml.cs │ ├── LibVLCSharp.WPF.Sample.csproj │ ├── MainWindow.xaml │ └── MainWindow.xaml.cs ├── LibVLCSharp.WinForms.Sample │ ├── App.Designer.cs │ ├── App.config │ ├── Form1.Designer.cs │ ├── Form1.cs │ ├── LibVLCSharp.WinForms.Sample.csproj │ ├── Program.cs │ ├── Properties │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ └── packages.Designer.cs ├── LibVLCSharp.WinUI.Sample │ ├── App.xaml │ ├── App.xaml.cs │ ├── Assets │ │ ├── LockScreenLogo.scale-200.png │ │ ├── SplashScreen.scale-200.png │ │ ├── Square150x150Logo.scale-200.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── StoreLogo.png │ │ └── Wide310x150Logo.scale-200.png │ ├── LibVLCSharp.WinUI.Sample.csproj │ ├── MainWindow.xaml │ ├── MainWindow.xaml.cs │ ├── Package.appxmanifest │ ├── Properties │ │ └── launchSettings.json │ └── app.manifest ├── LibVLCSharp.Windows.Net40.Sample │ ├── LibVLCSharp.Windows.Net40.Sample.csproj │ ├── Program.cs │ └── app.config ├── LibVLCSharp.iOS.Sample │ ├── AppDelegate.cs │ ├── Entitlements.plist │ ├── Info.plist │ ├── LibVLCSharp.iOS.Sample.csproj │ ├── Main.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── LaunchScreen.xib │ ├── ViewController.cs │ └── packages.config ├── LibVLCSharp.tvOS.Sample │ ├── AppDelegate.cs │ ├── Assets.xcassets │ │ ├── App Icon & Top Shelf Image.brandassets │ │ │ ├── App Icon - Large.imagestack │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ ├── Contents.json │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ ├── App Icon - Small.imagestack │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ ├── Contents.json │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ ├── Top Shelf Image Wide.imageset │ │ │ │ └── Contents.json │ │ │ └── Top Shelf Image.imageset │ │ │ │ └── Contents.json │ │ ├── Contents.json │ │ └── LaunchImages.launchimage │ │ │ └── Contents.json │ ├── Entitlements.plist │ ├── Info.plist │ ├── LibVLCSharp.tvOS.Sample.csproj │ ├── Main.cs │ ├── Main.storyboard │ ├── ViewController.cs │ └── packages.config ├── MAUI │ └── LibVLCSharp.MAUI.Sample.MediaElement │ │ ├── App.xaml │ │ ├── App.xaml.cs │ │ ├── AppShell.xaml │ │ ├── AppShell.xaml.cs │ │ ├── LibVLCSharp.MAUI.Sample.MediaElement.csproj │ │ ├── MainPage.xaml │ │ ├── MainPage.xaml.cs │ │ ├── MainViewModel.cs │ │ ├── MauiProgram.cs │ │ ├── Platforms │ │ ├── Android │ │ │ ├── AndroidManifest.xml │ │ │ ├── MainActivity.cs │ │ │ ├── MainApplication.cs │ │ │ └── Resources │ │ │ │ └── values │ │ │ │ └── colors.xml │ │ ├── MacCatalyst │ │ │ ├── AppDelegate.cs │ │ │ ├── Info.plist │ │ │ └── Program.cs │ │ ├── Windows │ │ │ ├── App.xaml │ │ │ ├── App.xaml.cs │ │ │ ├── Package.appxmanifest │ │ │ └── app.manifest │ │ └── iOS │ │ │ ├── AppDelegate.cs │ │ │ ├── Info.plist │ │ │ └── Program.cs │ │ ├── Properties │ │ └── launchSettings.json │ │ └── Resources │ │ ├── AppIcon │ │ ├── appicon.svg │ │ └── appiconfg.svg │ │ ├── Fonts │ │ ├── OpenSans-Regular.ttf │ │ └── OpenSans-Semibold.ttf │ │ ├── Images │ │ └── dotnet_bot.svg │ │ ├── Raw │ │ └── AboutAssets.txt │ │ ├── Splash │ │ └── splash.svg │ │ └── Styles │ │ ├── Colors.xaml │ │ └── Styles.xaml └── Uno │ └── LibVLCSharp.Uno.WinUI.Sample │ ├── App.xaml │ ├── App.xaml.cs │ ├── Assets │ ├── Fonts │ │ ├── regular.otf │ │ └── solid.otf │ ├── Icons │ │ ├── icon.svg │ │ └── icon_foreground.svg │ ├── SharedAssets.md │ └── Splash │ │ └── splash_screen.svg │ ├── GlobalUsings.cs │ ├── LibVLCSharp.Uno.WinUI.Sample.csproj │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── MainViewModel.cs │ ├── Package.appxmanifest │ ├── Platforms │ ├── Android │ │ ├── AndroidManifest.xml │ │ ├── Assets │ │ │ └── AboutAssets.txt │ │ ├── Main.Android.cs │ │ ├── MainActivity.Android.cs │ │ ├── Resources │ │ │ ├── AboutResources.txt │ │ │ └── values │ │ │ │ ├── Strings.xml │ │ │ │ └── Styles.xml │ │ └── environment.conf │ └── iOS │ │ ├── Entitlements.plist │ │ ├── Info.plist │ │ ├── Main.iOS.cs │ │ ├── Media.xcassets │ │ └── LaunchImages.launchimage │ │ │ └── Contents.json │ │ └── PrivacyInfo.xcprivacy │ ├── Properties │ └── launchSettings.json │ ├── Strings │ └── en │ │ └── Resources.resw │ ├── app.manifest │ └── readme.md └── src ├── .editorconfig ├── Directory.Build.props ├── LibVLCSharp.Android.AWindow ├── Directory.build.props ├── Jars │ └── org.videolan.libvlc.aar ├── LibVLCSharp.Android.AWindow.csproj ├── LibVLCSharp.Android.AWindow.sln ├── Properties │ └── AssemblyInfo.cs ├── README.md ├── Transforms │ ├── EnumFields.xml │ ├── EnumMethods.xml │ └── Metadata.xml └── copy.targets ├── LibVLCSharp.Android.AWindowModern ├── Additions │ └── AboutAdditions.txt ├── Jars │ └── org.videolan.libvlc.aar ├── LibVLCSharp.Android.AWindowModern.csproj ├── README.md └── Transforms │ ├── EnumFields.xml │ ├── EnumMethods.xml │ └── Metadata.xml ├── LibVLCSharp.Avalonia ├── LibVLCSharp.Avalonia.csproj ├── README.md ├── VideoView.cs └── nuget.config ├── LibVLCSharp.Eto ├── LibVLCSharp.Eto.csproj ├── README.md └── VideoView.cs ├── LibVLCSharp.Forms.Platforms.GTK ├── LibVLCSharp.Forms.Platforms.GTK.csproj ├── README.md └── VideoViewRenderer.cs ├── LibVLCSharp.Forms.Platforms.WPF ├── LibVLCSharp.Forms.Platforms.WPF.csproj ├── OpenTK.dll.config ├── Platform.cs ├── PowerManager.cs ├── README.md ├── VideoViewRenderer.cs ├── app.config └── packages.config ├── LibVLCSharp.Forms ├── LibVLCSharp.Forms.csproj ├── Platforms │ ├── Android │ │ ├── OrientationHandler.cs │ │ ├── Platform.cs │ │ ├── PowerManager.cs │ │ ├── SystemUI.cs │ │ └── VideoViewRenderer.cs │ └── Apple │ │ ├── OrientationChangeListener.cs │ │ ├── OrientationHandler.cs │ │ ├── Platform.cs │ │ ├── PowerManager.cs │ │ └── VideoViewRenderer.cs ├── README.md └── Shared │ ├── Converters │ ├── BufferingProgressToBoolConverter.cs │ └── ObjectToBoolConverter.cs │ ├── Dispatcher.cs │ ├── DisplayInformation.cs │ ├── DisplayRequest.cs │ ├── Effects │ └── ClickEffect.cs │ ├── IOrientationHandler.cs │ ├── IPowerManager.cs │ ├── ISystemUI.cs │ ├── LibVLCSharpFormsRenderer.cs │ ├── LifecycleMessage.cs │ ├── MediaPlayerElement.xaml │ ├── MediaPlayerElement.xaml.cs │ ├── PlaybackControls.xaml │ ├── PlaybackControls.xaml.cs │ ├── Resources │ ├── Strings.Designer.cs │ ├── Strings.fr.resx │ └── Strings.resx │ ├── SwipeToUnLockView.cs │ ├── Themes │ ├── Generic.xaml │ └── Generic.xaml.cs │ ├── TrackViewModel.cs │ ├── VideoView.cs │ └── VisualTreeHelper.cs ├── LibVLCSharp.GTK ├── LibVLCSharp.GTK.csproj ├── README.md └── VideoView.cs ├── LibVLCSharp.MAUI ├── AppHostBuilderExtensions.cs ├── Converters │ ├── BufferingProgressToBoolConverter.cs │ └── ObjectToBoolConverter.cs ├── Dispatcher.cs ├── DisplayInformation.cs ├── DisplayRequest.cs ├── Effects │ └── ClickEffect.cs ├── Handlers │ └── VideoViewHandler.cs ├── IOrientationHandler.cs ├── IPowerManager.cs ├── ISystemUI.cs ├── LibVLCSharp.MAUI.csproj ├── MediaPlayerElement.xaml ├── MediaPlayerElement.xaml.cs ├── PlaybackControls.xaml ├── PlaybackControls.xaml.cs ├── Properties │ └── AssemblyInfo.cs ├── README.md ├── Resources │ ├── FontAwesomeCodes.cs │ ├── Fonts │ │ ├── FontAwesome5Brands.otf │ │ └── FontAwesome5Solid.otf │ ├── Strings.Designer.cs │ ├── Strings.fr.resx │ └── Strings.resx ├── SwipeToUnLockView.cs ├── Themes │ ├── Generic.xaml │ └── Generic.xaml.cs ├── TrackViewModel.cs ├── VideoView.cs ├── VideoViewHandler.cs └── VisualTreeHelper.cs ├── LibVLCSharp.Mac.slnx ├── LibVLCSharp.Tests ├── BaseSetup.cs ├── CoreLoadingTests.cs ├── DialogTests.cs ├── EqualizerTests.cs ├── EventManagerTests.cs ├── LibVLCAPICoverage.cs ├── LibVLCSharp.Tests.csproj ├── LibVLCTests.cs ├── MediaDiscovererTests.cs ├── MediaListTests.cs ├── MediaPlayerTests.cs ├── MediaTests.cs ├── Program.cs ├── RendererDiscovererTests.cs ├── motörhead.mp3 └── sample.mp3 ├── LibVLCSharp.Uno ├── ActionCommand.cs ├── AvailabilityCommand.cs ├── DispatcherAdapter.cs ├── DisplayInformation.cs ├── DisplayRequestAdapter.cs ├── FontAwesome.cs ├── IVideoView.cs ├── InitializedEventArgs.cs ├── LibVLCSharp.Uno.csproj ├── MediaPlayerElement.cs ├── PlaybackControls.Android.iOS.cs ├── PlaybackControls.UWP.cs ├── PlaybackControlsBase.cs ├── README.md ├── Strings │ ├── en-US │ │ └── Resources.resw │ └── fr-FR │ │ └── Resources.resw ├── SuspensionHelper.cs ├── Themes │ ├── Generic.xaml │ ├── MediaPlayerElement.xaml │ ├── PlaybackControls.xaml │ └── VideoView.Android.iOS.xaml ├── TracksMenu.cs ├── VideoView.Android.cs ├── VideoView.UWP.cs ├── VideoView.iOS.cs ├── VideoViewWrapper.Android.iOS.cs └── filtered.layout.resfiles ├── LibVLCSharp.WPF ├── ForegroundWindow.cs ├── LibVLCSharp.WPF.csproj ├── Properties │ └── AssemblyInfo.cs ├── README.md ├── Themes │ └── Generic.xaml ├── User32Wrapper.cs ├── VideoHwndHost.cs └── VideoView.cs ├── LibVLCSharp.Win32.slnx ├── LibVLCSharp.WinForms ├── LibVLCSharp.WinForms.csproj ├── README.md └── VideoView.cs ├── LibVLCSharp.slnx ├── LibVLCSharp ├── LibVLCSharp.csproj ├── Platforms │ ├── Android │ │ ├── LayoutChangeListener.cs │ │ └── VideoView.cs │ ├── Apple │ │ └── VideoView.cs │ └── Windows │ │ ├── InitializedEventArgs.cs │ │ ├── VideoView.cs │ │ ├── VideoViewBase.cs │ │ └── VideoViewOfTInitializedEventArgs.cs ├── Properties │ └── AssemblyInfo.cs ├── README.md ├── Shared │ ├── Core │ │ ├── Constants.cs │ │ ├── Core.Android.cs │ │ ├── Core.Apple.cs │ │ ├── Core.Desktop.cs │ │ ├── Core.UWP.cs │ │ └── Core.cs │ ├── Dialog.cs │ ├── Equalizer.cs │ ├── Events │ │ ├── EventManager.cs │ │ ├── MediaDiscovererEventManager.cs │ │ ├── MediaEventManager.cs │ │ ├── MediaListEventManager.cs │ │ ├── MediaPlayerChangedEventArgs.cs │ │ ├── MediaPlayerChangingEventArgs.cs │ │ ├── MediaPlayerEventManager.cs │ │ └── RendererDiscovererEventManager.cs │ ├── Helpers │ │ ├── MarshalExtensions.cs │ │ ├── MarshalUtils.cs │ │ └── PlatformHelper.cs │ ├── IVideoControl.cs │ ├── IVideoView.cs │ ├── Internal.cs │ ├── LibVLC.cs │ ├── LibVLCEvents.cs │ ├── Media.cs │ ├── MediaConfiguration.cs │ ├── MediaDiscoverer.cs │ ├── MediaInput.cs │ ├── MediaList.cs │ ├── MediaPlayer.cs │ ├── MediaPlayerElement │ │ ├── AspectRatio.cs │ │ ├── AspectRatioManager.cs │ │ ├── AudioTracksManager.cs │ │ ├── AutoHideNotifier.cs │ │ ├── BufferingProgressNotifier.cs │ │ ├── CastRenderersDiscoverer.cs │ │ ├── DeviceAwakeningManager.cs │ │ ├── FontAwesomeIcons.cs │ │ ├── IDispatcher.cs │ │ ├── IDisplayInformation.cs │ │ ├── IDisplayRequest.cs │ │ ├── MediaPlayerElementManager.cs │ │ ├── MediaPlayerElementManagerBase.cs │ │ ├── MediaPosition.cs │ │ ├── SeekBarManager.cs │ │ ├── StateManager.cs │ │ ├── SubtitlesTracksManager.cs │ │ ├── TimeSpanExtensions.cs │ │ ├── TracksManager.cs │ │ ├── VideoTracksManager.cs │ │ └── VolumeManager.cs │ ├── RendererDiscoverer.cs │ ├── StreamMediaInput.cs │ ├── Structures │ │ ├── AudioOutputDescription.cs │ │ ├── AudioOutputDevice.cs │ │ ├── ChapterDescription.cs │ │ ├── MediaDiscovererDescription.cs │ │ ├── MediaSlave.cs │ │ ├── MediaStats.cs │ │ ├── MediaTrack.cs │ │ ├── MediaTrackData.cs │ │ ├── ModuleDescription.cs │ │ ├── RendererDescription.cs │ │ ├── TrackDescription.cs │ │ └── VideoViewpoint.cs │ └── VLCException.cs └── Themes │ └── Generic.xaml ├── assets ├── banner.png ├── banner.svg ├── icon.png ├── icon.svg └── media-element.jpg └── global.json /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | custom: https://videolabs.io/store/libvlcsharp -------------------------------------------------------------------------------- /.gitlab/issue_templates/feature_request.md: -------------------------------------------------------------------------------- 1 | 13 | 14 | ### Problem to solve 15 | 16 | 17 | 18 | ### Intended users 19 | 20 | 21 | 22 | ### Proposal 23 | 24 | 25 | 26 | 27 | ### Documentation 28 | 29 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | Please follow the VideoLAN Code of Conduct: https://wiki.videolan.org/Code_of_Conduct/ -------------------------------------------------------------------------------- /buildsystem/base-template.yml: -------------------------------------------------------------------------------- 1 | steps: 2 | - task: UseDotNet@2 3 | displayName: 'Use .NET Core SDK' 4 | inputs: 5 | packageType: sdk 6 | version: 9.0.201 7 | 8 | - bash: | 9 | dotnet workload install android 10 | dotnet workload install ios 11 | dotnet workload install macos 12 | dotnet workload install tvos 13 | dotnet workload install maui-android 14 | dotnet workload install maui-ios 15 | displayName: 'Install mobile workloads' 16 | condition: ne( variables['Agent.OS'], 'Linux' ) 17 | 18 | - task: DotNetCoreCLI@2 19 | displayName: 'Install Cake' 20 | inputs: 21 | command: custom 22 | custom: 'tool' 23 | arguments: 'install cake.tool --global' 24 | -------------------------------------------------------------------------------- /buildsystem/linux-build.yml: -------------------------------------------------------------------------------- 1 | steps: 2 | - template: base-template.yml 3 | 4 | - task: DotNetCoreCLI@2 5 | displayName: 'dotnet build' 6 | inputs: 7 | projects: src/LibVLCSharp/LibVLCSharp.csproj 8 | arguments: '-c Release' -------------------------------------------------------------------------------- /buildsystem/mac-build.yml: -------------------------------------------------------------------------------- 1 | steps: 2 | - template: base-template.yml 3 | 4 | - script: dotnet build src/LibVLCSharp.Mac.slnx -c Release 5 | displayName: 'Build solution' -------------------------------------------------------------------------------- /buildsystem/run-tests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | dotnet run --project LibVLCSharp.Tests/LibVLCSharp.Tests.csproj -------------------------------------------------------------------------------- /docs/android.md: -------------------------------------------------------------------------------- 1 | # Android 2 | 3 | This page is about the Android specifics in LibVLCSharp and LibVLC. 4 | 5 | ## How do I use R8? 6 | 7 | - Create a new file in your Xamarin.Android app root named "r8.cfg". 8 | - In this file properties, set the Build Action to "ProguardConfiguration". 9 | 10 | In this file, add the following lines: 11 | 12 | ``` 13 | -keep class org.videolan.** { *; } 14 | -dontwarn org.videolan.** 15 | ``` 16 | 17 | https://code.videolan.org/videolan/LibVLCSharp/issues/255#note_55737 -------------------------------------------------------------------------------- /docs/libvlc_documentation.md: -------------------------------------------------------------------------------- 1 | # LibVLC Documentation 2 | 3 | [Back](home.md) 4 | 5 | - [LibVLC on NuGet](#libvlc-on-nuget) 6 | - [LibVLC versions and differences](#libvlc-versioning) 7 | 8 | LibVLCSharp is based on LibVLC, so most of the LibVLC API documentation is very relevant to your experience using LibVLCSharp. 9 | 10 | You can find it here [LibVLC Doc](https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc.html). It currently tracks VLC master (4.0). The search box at the top right allows you to search for LibVLC C API functions and get doc on it. You can also check out documentation from the LibVLC header files directly from the [VLC source code](https://code.videolan.org/videolan/vlc/tree/master/include/vlc). 11 | 12 | ## LibVLC on NuGet 13 | 14 | LibVLC is being distributed on NuGet from the [VideoLAN account](https://www.nuget.org/profiles/videolan). 15 | 16 | The packaging files and more packages details can be found at https://code.videolan.org/videolan/libvlc-nuget 17 | 18 | ## LibVLC Versioning 19 | 20 | Check out our [versioning docs](versioning.md). -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories) and given a Build Action of "AndroidAsset". 3 | 4 | These files will be deployed with you package and will be accessible using Android's 5 | AssetManager, like this: 6 | 7 | public class ReadAsset : Activity 8 | { 9 | protected override void OnCreate (Bundle bundle) 10 | { 11 | base.OnCreate (bundle); 12 | 13 | InputStream input = Assets.Open ("my_asset.txt"); 14 | } 15 | } 16 | 17 | Additionally, some Android functions will automatically load asset files: 18 | 19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); 20 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Assets/FontAwesome5Brands.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Assets/FontAwesome5Brands.otf -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Assets/FontAwesome5Regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Assets/FontAwesome5Regular.otf -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Assets/FontAwesome5Solid.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Assets/FontAwesome5Solid.otf -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-anydpi-v26/icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-anydpi-v26/icon_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-hdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-hdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-hdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-mdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-mdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-mdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xhdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxhdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxxhdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFFFFF 4 | #3F51B5 5 | #303F9F 6 | #FF4081 7 | 8 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Main.cs: -------------------------------------------------------------------------------- 1 | using UIKit; 2 | 3 | namespace LibVLCSharp.Forms.Sample.MediaElement.iOS 4 | { 5 | public class Application 6 | { 7 | // This is the main entry point of the application. 8 | static void Main(string[] args) 9 | { 10 | // if you want to use a different Application Delegate class from "AppDelegate" 11 | // you can specify it here. 12 | UIApplication.Main(args, null, "AppDelegate"); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default-568h@2x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default-Portrait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default-Portrait.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default-Portrait@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default-Portrait@2x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Default@2x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/FontAwesome5Brands.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/FontAwesome5Brands.otf -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/FontAwesome5Regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/FontAwesome5Regular.otf -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/FontAwesome5Solid.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/FontAwesome5Solid.otf -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-60@2x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-60@3x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-76.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-76@2x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small-40.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small-40@2x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small-40@3x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small@2x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement.iOS/Resources/Icon-Small@3x.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement/App.xaml: -------------------------------------------------------------------------------- 1 |  2 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement/MainPage.xaml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.MediaElement/LibVLCSharp.Forms.Sample.MediaElement/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using Xamarin.Forms; 2 | 3 | namespace LibVLCSharp.Forms.Sample.MediaPlayerElement 4 | { 5 | /// 6 | /// Represents the main page. 7 | /// 8 | public partial class MainPage : ContentPage 9 | { 10 | /// 11 | /// Initializes a new instance of class. 12 | /// 13 | public MainPage() 14 | { 15 | InitializeComponent(); 16 | } 17 | 18 | void OnAppearing(object sender, System.EventArgs e) 19 | { 20 | base.OnAppearing(); 21 | ((MainViewModel)BindingContext).OnAppearing(); 22 | } 23 | 24 | void OnDisappearing(object sender, System.EventArgs e) 25 | { 26 | base.OnDisappearing(); 27 | ((MainViewModel)BindingContext).OnDisappearing(); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.Sample.Android/MainActivity.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.Content.PM; 3 | using Android.OS; 4 | using LibVLCSharp.Forms.Shared; 5 | 6 | namespace LibVLCSharp.Forms.Sample.Droid 7 | { 8 | [Activity(Label = "LibVLCSharp.Forms.Sample", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 9 | public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity 10 | { 11 | protected override void OnCreate(Bundle bundle) 12 | { 13 | TabLayoutResource = Resource.Layout.Tabbar; 14 | ToolbarResource = Resource.Layout.Toolbar; 15 | 16 | base.OnCreate(bundle); 17 | 18 | LibVLCSharpFormsRenderer.Init(); 19 | global::Xamarin.Forms.Forms.Init(this, bundle); 20 | LoadApplication(new App()); 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.Sample.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable-xhdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable-xxhdpi/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/videolan/libvlcsharp/4c9f89d1a6e3aa130a1fa950245de285287c91cb/samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/drawable/icon.png -------------------------------------------------------------------------------- /samples/Forms/LibVLCSharp.Forms.Sample.Android/Resources/layout/Main.axml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /samples/LibVLCSharp.WPF.Sample/Example1.xaml: -------------------------------------------------------------------------------- 1 |  10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /samples/LibVLCSharp.WPF.Sample/Example1.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows; 3 | 4 | namespace LibVLCSharp.WPF.Sample 5 | { 6 | public partial class Example1 : Window 7 | { 8 | readonly Controls _controls; 9 | 10 | public Example1() 11 | { 12 | InitializeComponent(); 13 | 14 | _controls = new Controls(this); 15 | VideoView.Content = _controls; 16 | } 17 | 18 | protected override void OnClosed(EventArgs e) 19 | { 20 | VideoView.Dispose(); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /samples/LibVLCSharp.WPF.Sample/Example2.xaml: -------------------------------------------------------------------------------- 1 |  10 | 11 | 12 | 13 |