From 208a8c784ffc1d95d0553d099fa6a93a1454717f Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 3 Nov 2021 16:40:32 +0700 Subject: [PATCH 01/13] android: move packaging to dedicated folder --- Android/README.md | 40 +++++++++++++++++++ .../VideoLAN.LibVLC.Android.nuspec | 22 +++++----- .../VideoLAN.LibVLC.Android.targets | 0 .../package-nuget-android.sh | 0 4 files changed, 52 insertions(+), 10 deletions(-) create mode 100644 Android/README.md rename VideoLAN.LibVLC.Android.nuspec => Android/VideoLAN.LibVLC.Android.nuspec (54%) rename {build => Android}/VideoLAN.LibVLC.Android.targets (100%) rename package-nuget-android.sh => Android/package-nuget-android.sh (100%) diff --git a/Android/README.md b/Android/README.md new file mode 100644 index 0000000..1bcd7a9 --- /dev/null +++ b/Android/README.md @@ -0,0 +1,40 @@ +# LibVLC for Android + +As it is native code, you will need to use a wrapper library such as [LibVLCSharp](https://code.videolan.org/videolan/LibVLCSharp) to use it from .NET. + +## What is libvlc? + +`libvlc` is the multimedia framework powering the VLC applications. It is fully opensource, so other apps use it too. + +**API documentation**: https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc.html + +it contains all modules, data structures and functions documentation to understand how to use the `libvlc` C API. + +The **source** is in the main VLC repository: https://github.com/videolan/vlc + +`libvlc` is *modularized* into hundreds of plugins, which may be loaded at runtime. This architecture provides great flexibility to developers (both VLC devs and devs consuming the library). The unified, complete and (somewhat) high level `libvlc` C API allows a wide range of operations, such as: +- Play every media file formats, every codec and every streaming protocols +- Run on every platform, from desktop (Windows, Linux, Mac) to mobile (Android, iOS) and TVs +- Hardware and efficient decoding on every platform, up to 8K +- Network browsing for distant filesystems (SMB, FTP, SFTP, NFS...) and servers (UPnP, DLNA) +- Playback of Audio CD, DVD and Bluray with menu navigation +- Support for HDR, including tonemapping for SDR streams +- Audio passthrough with SPDIF and HDMI, including for Audio HD codecs, like DD+, TrueHD or DTS-HD +- Support for video and audio filters +- Support for 360 video and 3D audio playback, including Ambisonics +- Able to cast and stream to distant renderers, like Chromecast and UPnP renderers. + +Full list of the new 3.0 features can be found here: https://www.videolan.org/vlc/releases/3.0.0.html +```cmd +dotnet add package VideoLAN.LibVLC.Android +``` + +[![NuGet Stats](https://img.shields.io/nuget/v/VideoLAN.LibVLC.Android.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Android) +[![NuGet Stats](https://img.shields.io/nuget/dt/VideoLAN.LibVLC.Android.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Android) + +## Supported CPU architectures: + +- armeabi-v7a +- arm64-v8a +- x86 +- x86_64 \ No newline at end of file diff --git a/VideoLAN.LibVLC.Android.nuspec b/Android/VideoLAN.LibVLC.Android.nuspec similarity index 54% rename from VideoLAN.LibVLC.Android.nuspec rename to Android/VideoLAN.LibVLC.Android.nuspec index efefc15..053e144 100644 --- a/VideoLAN.LibVLC.Android.nuspec +++ b/Android/VideoLAN.LibVLC.Android.nuspec @@ -14,18 +14,20 @@ As it is native code, you will need to use a wrapper library such as LibVLCSharp https://code.videolan.org/videolan/libvlc-nuget LGPL-2.1-or-later icon.png + README.md https://code.videolan.org/videolan/vlc/blob/master/NEWS - - - - - - - - - - + + + + + + + + + + + \ No newline at end of file diff --git a/build/VideoLAN.LibVLC.Android.targets b/Android/VideoLAN.LibVLC.Android.targets similarity index 100% rename from build/VideoLAN.LibVLC.Android.targets rename to Android/VideoLAN.LibVLC.Android.targets diff --git a/package-nuget-android.sh b/Android/package-nuget-android.sh similarity index 100% rename from package-nuget-android.sh rename to Android/package-nuget-android.sh From fba4eeb625fcdff5a509c187435fb7d44df8d97c Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Tue, 9 Nov 2021 14:38:01 +0700 Subject: [PATCH 02/13] iOS: move to dedicated folder --- iOS/README.md | 41 +++++++++++++++++++ .../VideoLAN.LibVLC.iOS.nuspec | 9 ++-- {build => iOS}/VideoLAN.LibVLC.iOS.targets | 0 .../package-nuget-ios.sh | 0 4 files changed, 46 insertions(+), 4 deletions(-) create mode 100644 iOS/README.md rename VideoLAN.LibVLC.iOS.nuspec => iOS/VideoLAN.LibVLC.iOS.nuspec (72%) rename {build => iOS}/VideoLAN.LibVLC.iOS.targets (100%) rename package-nuget-ios.sh => iOS/package-nuget-ios.sh (100%) diff --git a/iOS/README.md b/iOS/README.md new file mode 100644 index 0000000..a9019ea --- /dev/null +++ b/iOS/README.md @@ -0,0 +1,41 @@ +# LibVLC for iOS + +As it is native code, you will need to use a wrapper library such as [LibVLCSharp](https://code.videolan.org/videolan/LibVLCSharp) to use it from .NET. + +## What is libvlc? + +`libvlc` is the multimedia framework powering the VLC applications. It is fully opensource, so other apps use it too. + +**API documentation**: https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc.html + +it contains all modules, data structures and functions documentation to understand how to use the `libvlc` C API. + +The **source** is in the main VLC repository: https://github.com/videolan/vlc + +`libvlc` is *modularized* into hundreds of plugins, which may be loaded at runtime. This architecture provides great flexibility to developers (both VLC devs and devs consuming the library). The unified, complete and (somewhat) high level `libvlc` C API allows a wide range of operations, such as: +- Play every media file formats, every codec and every streaming protocols +- Run on every platform, from desktop (Windows, Linux, Mac) to mobile (Android, iOS) and TVs +- Hardware and efficient decoding on every platform, up to 8K +- Network browsing for distant filesystems (SMB, FTP, SFTP, NFS...) and servers (UPnP, DLNA) +- Playback of Audio CD, DVD and Bluray with menu navigation +- Support for HDR, including tonemapping for SDR streams +- Audio passthrough with SPDIF and HDMI, including for Audio HD codecs, like DD+, TrueHD or DTS-HD +- Support for video and audio filters +- Support for 360 video and 3D audio playback, including Ambisonics +- Able to cast and stream to distant renderers, like Chromecast and UPnP renderers. + +Full list of the new 3.0 features can be found here: https://www.videolan.org/vlc/releases/3.0.0.html + +```cmd +dotnet add package VideoLAN.LibVLC.iOS +``` + +[![NuGet Stats](https://img.shields.io/nuget/v/VideoLAN.LibVLC.iOS.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.iOS) +[![NuGet Stats](https://img.shields.io/nuget/dt/VideoLAN.LibVLC.iOS.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.iOS) + +## Supported CPU architectures + +- i386 +- x86_64 +- ARMv7 +- ARM64 diff --git a/VideoLAN.LibVLC.iOS.nuspec b/iOS/VideoLAN.LibVLC.iOS.nuspec similarity index 72% rename from VideoLAN.LibVLC.iOS.nuspec rename to iOS/VideoLAN.LibVLC.iOS.nuspec index 0353615..ce313ff 100644 --- a/VideoLAN.LibVLC.iOS.nuspec +++ b/iOS/VideoLAN.LibVLC.iOS.nuspec @@ -17,9 +17,10 @@ As it is native code, you will need to use a wrapper library such as LibVLCSharp https://code.videolan.org/videolan/vlc/blob/master/NEWS - - - - + + + + + \ No newline at end of file diff --git a/build/VideoLAN.LibVLC.iOS.targets b/iOS/VideoLAN.LibVLC.iOS.targets similarity index 100% rename from build/VideoLAN.LibVLC.iOS.targets rename to iOS/VideoLAN.LibVLC.iOS.targets diff --git a/package-nuget-ios.sh b/iOS/package-nuget-ios.sh similarity index 100% rename from package-nuget-ios.sh rename to iOS/package-nuget-ios.sh From 589e9e0cc66e647a5ab4a043e693b29b162bdbc3 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Tue, 9 Nov 2021 14:53:35 +0700 Subject: [PATCH 03/13] UWP: move to dedicated folder --- UWP/README.md | 41 +++++++++++++++++++ .../VideoLAN.LibVLC.UWP.nuspec | 11 ++--- {build => UWP}/VideoLAN.LibVLC.UWP.targets | 18 ++++---- package-nuget-winrt.sh | 6 --- 4 files changed, 56 insertions(+), 20 deletions(-) create mode 100644 UWP/README.md rename VideoLAN.LibVLC.UWP.nuspec => UWP/VideoLAN.LibVLC.UWP.nuspec (76%) rename {build => UWP}/VideoLAN.LibVLC.UWP.targets (82%) delete mode 100644 package-nuget-winrt.sh diff --git a/UWP/README.md b/UWP/README.md new file mode 100644 index 0000000..e12b6e5 --- /dev/null +++ b/UWP/README.md @@ -0,0 +1,41 @@ +# LibVLC for UWP + +As it is native code, you will need to use a wrapper library such as [LibVLCSharp](https://code.videolan.org/videolan/LibVLCSharp) to use it from .NET. + +## What is libvlc? + +`libvlc` is the multimedia framework powering the VLC applications. It is fully opensource, so other apps use it too. + +**API documentation**: https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc.html + +it contains all modules, data structures and functions documentation to understand how to use the `libvlc` C API. + +The **source** is in the main VLC repository: https://github.com/videolan/vlc + +`libvlc` is *modularized* into hundreds of plugins, which may be loaded at runtime. This architecture provides great flexibility to developers (both VLC devs and devs consuming the library). The unified, complete and (somewhat) high level `libvlc` C API allows a wide range of operations, such as: + +- Play every media file formats, every codec and every streaming protocols +- Run on every platform, from desktop (Windows, Linux, Mac) to mobile (Android, iOS) and TVs +- Hardware and efficient decoding on every platform, up to 8K +- Network browsing for distant filesystems (SMB, FTP, SFTP, NFS...) and servers (UPnP, DLNA) +- Playback of Audio CD, DVD and Bluray with menu navigation +- Support for HDR, including tonemapping for SDR streams +- Audio passthrough with SPDIF and HDMI, including for Audio HD codecs, like DD+, TrueHD or DTS-HD +- Support for video and audio filters +- Support for 360 video and 3D audio playback, including Ambisonics +- Able to cast and stream to distant renderers, like Chromecast and UPnP renderers. + +Full list of the new 3.0 features can be found here: https://www.videolan.org/vlc/releases/3.0.0.html + +```cmd +dotnet add package VideoLAN.LibVLC.UWP +``` + +[![NuGet Stats](https://img.shields.io/nuget/v/VideoLAN.LibVLC.UWP.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.UWP) +[![NuGet Stats](https://img.shields.io/nuget/dt/VideoLAN.LibVLC.UWP.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.UWP) + +## Supported CPU architectures + +- i386 +- x86_64 +- ARMv7 diff --git a/VideoLAN.LibVLC.UWP.nuspec b/UWP/VideoLAN.LibVLC.UWP.nuspec similarity index 76% rename from VideoLAN.LibVLC.UWP.nuspec rename to UWP/VideoLAN.LibVLC.UWP.nuspec index eb1c465..e6e695e 100644 --- a/VideoLAN.LibVLC.UWP.nuspec +++ b/UWP/VideoLAN.LibVLC.UWP.nuspec @@ -20,10 +20,11 @@ Use this LibVLC build for Windows Universal projects (UAP) on Windows 10 Desktop - - - - - + + + + + + \ No newline at end of file diff --git a/build/VideoLAN.LibVLC.UWP.targets b/UWP/VideoLAN.LibVLC.UWP.targets similarity index 82% rename from build/VideoLAN.LibVLC.UWP.targets rename to UWP/VideoLAN.LibVLC.UWP.targets index 9ee8f71..767aa55 100644 --- a/build/VideoLAN.LibVLC.UWP.targets +++ b/UWP/VideoLAN.LibVLC.UWP.targets @@ -31,13 +31,13 @@ - - + - $([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\build\win10-x64\, %(FullPath))) + $([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\runtimes\win10-x64\native\, %(FullPath))) PreserveNewest @@ -45,12 +45,12 @@ - - + + - $([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\build\win10-x86\, %(FullPath))) + $([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\runtimes\win10-x86\native\, %(FullPath))) PreserveNewest @@ -58,12 +58,12 @@ - - + + - $([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\build\win10-arm\, %(FullPath))) + $([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\runtimes\win10-arm\native\, %(FullPath))) PreserveNewest diff --git a/package-nuget-winrt.sh b/package-nuget-winrt.sh deleted file mode 100644 index 6c54e1d..0000000 --- a/package-nuget-winrt.sh +++ /dev/null @@ -1,6 +0,0 @@ -#! /bin/bash - -version=$1 -packageName="VideoLAN.LibVLC.UWP" - -mono nuget.exe pack "$packageName".nuspec -Version "$version" \ No newline at end of file From a3d4d72827e27f3f2f432e3bdb07a7cca5429287 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:00:05 +0700 Subject: [PATCH 04/13] move to macOS folder --- macOS/README.md | 39 ++++++++++++++++++++ {build => macOS}/VideoLAN.LibVLC.Mac.targets | 0 2 files changed, 39 insertions(+) create mode 100644 macOS/README.md rename {build => macOS}/VideoLAN.LibVLC.Mac.targets (100%) diff --git a/macOS/README.md b/macOS/README.md new file mode 100644 index 0000000..5d3713c --- /dev/null +++ b/macOS/README.md @@ -0,0 +1,39 @@ +# LibVLC for macOS + +As it is native code, you will need to use a wrapper library such as [LibVLCSharp](https://code.videolan.org/videolan/LibVLCSharp) to use it from .NET. + +## What is libvlc? + +`libvlc` is the multimedia framework powering the VLC applications. It is fully opensource, so other apps use it too. + +**API documentation**: https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc.html + +it contains all modules, data structures and functions documentation to understand how to use the `libvlc` C API. + +The **source** is in the main VLC repository: https://github.com/videolan/vlc + +`libvlc` is *modularized* into hundreds of plugins, which may be loaded at runtime. This architecture provides great flexibility to developers (both VLC devs and devs consuming the library). The unified, complete and (somewhat) high level `libvlc` C API allows a wide range of operations, such as: + +- Play every media file formats, every codec and every streaming protocols +- Run on every platform, from desktop (Windows, Linux, Mac) to mobile (Android, iOS) and TVs +- Hardware and efficient decoding on every platform, up to 8K +- Network browsing for distant filesystems (SMB, FTP, SFTP, NFS...) and servers (UPnP, DLNA) +- Playback of Audio CD, DVD and Bluray with menu navigation +- Support for HDR, including tonemapping for SDR streams +- Audio passthrough with SPDIF and HDMI, including for Audio HD codecs, like DD+, TrueHD or DTS-HD +- Support for video and audio filters +- Support for 360 video and 3D audio playback, including Ambisonics +- Able to cast and stream to distant renderers, like Chromecast and UPnP renderers. + +Full list of the new 3.0 features can be found here: https://www.videolan.org/vlc/releases/3.0.0.html + +```cmd +dotnet add package VideoLAN.LibVLC.Mac +``` + +[![NuGet Stats](https://img.shields.io/nuget/v/VideoLAN.LibVLC.Mac.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Mac) +[![NuGet Stats](https://img.shields.io/nuget/dt/VideoLAN.LibVLC.Mac.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Mac) + +## Supported CPU architectures + +- x86_64 diff --git a/build/VideoLAN.LibVLC.Mac.targets b/macOS/VideoLAN.LibVLC.Mac.targets similarity index 100% rename from build/VideoLAN.LibVLC.Mac.targets rename to macOS/VideoLAN.LibVLC.Mac.targets From d38f66e098c9d3c8ef76824236d4ba709e40f65e Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:02:14 +0700 Subject: [PATCH 05/13] move to tvOS folder --- tvOS/README.md | 40 ++++++++++++++++++++ {build => tvOS}/VideoLAN.LibVLC.tvOS.targets | 0 2 files changed, 40 insertions(+) create mode 100644 tvOS/README.md rename {build => tvOS}/VideoLAN.LibVLC.tvOS.targets (100%) diff --git a/tvOS/README.md b/tvOS/README.md new file mode 100644 index 0000000..22ad802 --- /dev/null +++ b/tvOS/README.md @@ -0,0 +1,40 @@ +# LibVLC for tvOS + +As it is native code, you will need to use a wrapper library such as [LibVLCSharp](https://code.videolan.org/videolan/LibVLCSharp) to use it from .NET. + +## What is libvlc? + +`libvlc` is the multimedia framework powering the VLC applications. It is fully opensource, so other apps use it too. + +**API documentation**: https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc.html + +it contains all modules, data structures and functions documentation to understand how to use the `libvlc` C API. + +The **source** is in the main VLC repository: https://github.com/videolan/vlc + +`libvlc` is *modularized* into hundreds of plugins, which may be loaded at runtime. This architecture provides great flexibility to developers (both VLC devs and devs consuming the library). The unified, complete and (somewhat) high level `libvlc` C API allows a wide range of operations, such as: + +- Play every media file formats, every codec and every streaming protocols +- Run on every platform, from desktop (Windows, Linux, Mac) to mobile (Android, iOS) and TVs +- Hardware and efficient decoding on every platform, up to 8K +- Network browsing for distant filesystems (SMB, FTP, SFTP, NFS...) and servers (UPnP, DLNA) +- Playback of Audio CD, DVD and Bluray with menu navigation +- Support for HDR, including tonemapping for SDR streams +- Audio passthrough with SPDIF and HDMI, including for Audio HD codecs, like DD+, TrueHD or DTS-HD +- Support for video and audio filters +- Support for 360 video and 3D audio playback, including Ambisonics +- Able to cast and stream to distant renderers, like Chromecast and UPnP renderers. + +Full list of the new 3.0 features can be found here: https://www.videolan.org/vlc/releases/3.0.0.html + +```cmd +dotnet add package VideoLAN.LibVLC.tvOS +``` + +[![NuGet Stats](https://img.shields.io/nuget/v/VideoLAN.LibVLC.tvOS.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.tvOS) +[![NuGet Stats](https://img.shields.io/nuget/dt/VideoLAN.LibVLC.tvOS.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.tvOS) + +## Supported CPU architectures + +- x86_64 +- ARM64 diff --git a/build/VideoLAN.LibVLC.tvOS.targets b/tvOS/VideoLAN.LibVLC.tvOS.targets similarity index 100% rename from build/VideoLAN.LibVLC.tvOS.targets rename to tvOS/VideoLAN.LibVLC.tvOS.targets From dbdf92c3e8abe89904717995c8d68a940ba56dd6 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:12:54 +0700 Subject: [PATCH 06/13] move windows to dedicated folder --- Windows/README.md | 40 +++++++++++++++++++ .../VideoLAN.LibVLC.Windows.nuspec | 6 +-- .../VideoLAN.LibVLC.Windows.targets | 12 +++--- .../package-nuget-win.sh | 16 ++++---- 4 files changed, 57 insertions(+), 17 deletions(-) create mode 100644 Windows/README.md rename VideoLAN.LibVLC.Windows.nuspec => Windows/VideoLAN.LibVLC.Windows.nuspec (82%) rename {build => Windows}/VideoLAN.LibVLC.Windows.targets (84%) rename package-nuget-win.sh => Windows/package-nuget-win.sh (76%) diff --git a/Windows/README.md b/Windows/README.md new file mode 100644 index 0000000..749bd95 --- /dev/null +++ b/Windows/README.md @@ -0,0 +1,40 @@ +# LibVLC for Windows + +As it is native code, you will need to use a wrapper library such as [LibVLCSharp](https://code.videolan.org/videolan/LibVLCSharp) to use it from .NET. + +## What is libvlc? + +`libvlc` is the multimedia framework powering the VLC applications. It is fully opensource, so other apps use it too. + +**API documentation**: https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc.html + +it contains all modules, data structures and functions documentation to understand how to use the `libvlc` C API. + +The **source** is in the main VLC repository: https://github.com/videolan/vlc + +`libvlc` is *modularized* into hundreds of plugins, which may be loaded at runtime. This architecture provides great flexibility to developers (both VLC devs and devs consuming the library). The unified, complete and (somewhat) high level `libvlc` C API allows a wide range of operations, such as: + +- Play every media file formats, every codec and every streaming protocols +- Run on every platform, from desktop (Windows, Linux, Mac) to mobile (Android, iOS) and TVs +- Hardware and efficient decoding on every platform, up to 8K +- Network browsing for distant filesystems (SMB, FTP, SFTP, NFS...) and servers (UPnP, DLNA) +- Playback of Audio CD, DVD and Bluray with menu navigation +- Support for HDR, including tonemapping for SDR streams +- Audio passthrough with SPDIF and HDMI, including for Audio HD codecs, like DD+, TrueHD or DTS-HD +- Support for video and audio filters +- Support for 360 video and 3D audio playback, including Ambisonics +- Able to cast and stream to distant renderers, like Chromecast and UPnP renderers. + +Full list of the new 3.0 features can be found here: https://www.videolan.org/vlc/releases/3.0.0.html + +```cmd +dotnet add package VideoLAN.LibVLC.Windows +``` + +[![NuGet Stats](https://img.shields.io/nuget/v/VideoLAN.LibVLC.Windows.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Windows) +[![NuGet Stats](https://img.shields.io/nuget/dt/VideoLAN.LibVLC.Windows.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Windows) + +## Supported CPU architectures + +- x64 +- x86 diff --git a/VideoLAN.LibVLC.Windows.nuspec b/Windows/VideoLAN.LibVLC.Windows.nuspec similarity index 82% rename from VideoLAN.LibVLC.Windows.nuspec rename to Windows/VideoLAN.LibVLC.Windows.nuspec index 76d7418..1138cc3 100644 --- a/VideoLAN.LibVLC.Windows.nuspec +++ b/Windows/VideoLAN.LibVLC.Windows.nuspec @@ -17,9 +17,9 @@ As it is native code, you will need to use a wrapper library such as LibVLCSharp https://code.videolan.org/videolan/vlc/blob/master/NEWS - - - + + + \ No newline at end of file diff --git a/build/VideoLAN.LibVLC.Windows.targets b/Windows/VideoLAN.LibVLC.Windows.targets similarity index 84% rename from build/VideoLAN.LibVLC.Windows.targets rename to Windows/VideoLAN.LibVLC.Windows.targets index 46a87e2..5b83726 100644 --- a/build/VideoLAN.LibVLC.Windows.targets +++ b/Windows/VideoLAN.LibVLC.Windows.targets @@ -25,12 +25,12 @@ - - + + - $(VlcWindowsX64TargetDir)\$([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\build\x64\, %(FullPath))) + $(VlcWindowsX64TargetDir)\$([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\x64\, %(FullPath))) PreserveNewest @@ -38,12 +38,12 @@ - - + + - $(VlcWindowsX86TargetDir)\$([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\build\x86\, %(FullPath))) + $(VlcWindowsX86TargetDir)\$([MSBuild]::MakeRelative($(MSBuildThisFileDirectory)..\x86\, %(FullPath))) PreserveNewest diff --git a/package-nuget-win.sh b/Windows/package-nuget-win.sh similarity index 76% rename from package-nuget-win.sh rename to Windows/package-nuget-win.sh index ce8549b..0a83af9 100644 --- a/package-nuget-win.sh +++ b/Windows/package-nuget-win.sh @@ -19,16 +19,16 @@ echo "unzipping vlc..." 7z x x64.7z -o./x64 echo "copying x86 dlls, libs and headers files..." -mkdir -p build/win7-x86/native/ -cp -R ./x86/vlc-$version/{libvlc.dll,libvlccore.dll,hrtfs,locale,lua,plugins} build/win7-x86/native/ -cp ./x86/vlc-$version/sdk/lib/{libvlc.lib,libvlccore.lib,vlc.lib,vlccore.lib} build/win7-x86/native/ -cp -R ./x86/vlc-$version/sdk/include build/win7-x86/native/ +mkdir -p win7-x86/native/ +cp -R ./x86/vlc-$version/{libvlc.dll,libvlccore.dll,hrtfs,locale,lua,plugins} win7-x86/native/ +cp ./x86/vlc-$version/sdk/lib/{libvlc.lib,libvlccore.lib,vlc.lib,vlccore.lib} win7-x86/native/ +cp -R ./x86/vlc-$version/sdk/include win7-x86/native/ echo "copying x64 dlls, libs and headers files..." -mkdir -p build/win7-x64/native/ -cp -R ./x64/vlc-$version/{libvlc.dll,libvlccore.dll,hrtfs,locale,lua,plugins} build/win7-x64/native/ -cp ./x64/vlc-$version/sdk/lib/{libvlc.lib,libvlccore.lib,vlc.lib,vlccore.lib} build/win7-x64/native/ -cp -R ./x64/vlc-$version/sdk/include build/win7-x64/native/ +mkdir -p win7-x64/native/ +cp -R ./x64/vlc-$version/{libvlc.dll,libvlccore.dll,hrtfs,locale,lua,plugins} win7-x64/native/ +cp ./x64/vlc-$version/sdk/lib/{libvlc.lib,libvlccore.lib,vlc.lib,vlccore.lib} win7-x64/native/ +cp -R ./x64/vlc-$version/sdk/include win7-x64/native/ echo "cleaning up..." rm ./x86.7z From 2637e593d8b70590009bf53e2638f9558b4957e8 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:13:20 +0700 Subject: [PATCH 07/13] move things around --- Android/README.md | 6 ++++-- .../VideoLAN.LibVLC.Mac.nuspec | 0 package-nuget-mac.sh | 3 --- package-nuget-tvos.sh | 3 --- .../VideoLAN.LibVLC.tvOS.nuspec | 6 +++--- 5 files changed, 7 insertions(+), 11 deletions(-) rename VideoLAN.LibVLC.Mac.nuspec => macOS/VideoLAN.LibVLC.Mac.nuspec (100%) delete mode 100755 package-nuget-mac.sh delete mode 100755 package-nuget-tvos.sh rename VideoLAN.LibVLC.tvOS.nuspec => tvOS/VideoLAN.LibVLC.tvOS.nuspec (77%) diff --git a/Android/README.md b/Android/README.md index 1bcd7a9..7366ae5 100644 --- a/Android/README.md +++ b/Android/README.md @@ -13,6 +13,7 @@ it contains all modules, data structures and functions documentation to understa The **source** is in the main VLC repository: https://github.com/videolan/vlc `libvlc` is *modularized* into hundreds of plugins, which may be loaded at runtime. This architecture provides great flexibility to developers (both VLC devs and devs consuming the library). The unified, complete and (somewhat) high level `libvlc` C API allows a wide range of operations, such as: + - Play every media file formats, every codec and every streaming protocols - Run on every platform, from desktop (Windows, Linux, Mac) to mobile (Android, iOS) and TVs - Hardware and efficient decoding on every platform, up to 8K @@ -25,6 +26,7 @@ The **source** is in the main VLC repository: https://github.com/videolan/vlc - Able to cast and stream to distant renderers, like Chromecast and UPnP renderers. Full list of the new 3.0 features can be found here: https://www.videolan.org/vlc/releases/3.0.0.html + ```cmd dotnet add package VideoLAN.LibVLC.Android ``` @@ -32,9 +34,9 @@ dotnet add package VideoLAN.LibVLC.Android [![NuGet Stats](https://img.shields.io/nuget/v/VideoLAN.LibVLC.Android.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Android) [![NuGet Stats](https://img.shields.io/nuget/dt/VideoLAN.LibVLC.Android.svg)](https://www.nuget.org/packages/VideoLAN.LibVLC.Android) -## Supported CPU architectures: +## Supported CPU architectures - armeabi-v7a - arm64-v8a - x86 -- x86_64 \ No newline at end of file +- x86_64 diff --git a/VideoLAN.LibVLC.Mac.nuspec b/macOS/VideoLAN.LibVLC.Mac.nuspec similarity index 100% rename from VideoLAN.LibVLC.Mac.nuspec rename to macOS/VideoLAN.LibVLC.Mac.nuspec diff --git a/package-nuget-mac.sh b/package-nuget-mac.sh deleted file mode 100755 index 5393a93..0000000 --- a/package-nuget-mac.sh +++ /dev/null @@ -1,3 +0,0 @@ -#! /bin/bash -#./compile -nuget pack "VideoLAN.LibVLC.Mac.nuspec" -Version "$version" \ No newline at end of file diff --git a/package-nuget-tvos.sh b/package-nuget-tvos.sh deleted file mode 100755 index 585d8a1..0000000 --- a/package-nuget-tvos.sh +++ /dev/null @@ -1,3 +0,0 @@ -#! /bin/bash - -nuget pack "VideoLAN.LibVLC.tvOS.nuspec" -Version "$version" \ No newline at end of file diff --git a/VideoLAN.LibVLC.tvOS.nuspec b/tvOS/VideoLAN.LibVLC.tvOS.nuspec similarity index 77% rename from VideoLAN.LibVLC.tvOS.nuspec rename to tvOS/VideoLAN.LibVLC.tvOS.nuspec index da488e6..204ea80 100644 --- a/VideoLAN.LibVLC.tvOS.nuspec +++ b/tvOS/VideoLAN.LibVLC.tvOS.nuspec @@ -17,9 +17,9 @@ As it is native code, you will need to use a wrapper library such as LibVLCSharp https://code.videolan.org/videolan/vlc/blob/master/NEWS - - - + + + \ No newline at end of file From 759b206fe8ed273cf2619d08a4b39086ab6f2683 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:17:57 +0700 Subject: [PATCH 08/13] fix CIs --- .github/workflows/ci.yml | 52 ++++++++++++++++++++-------------------- buildsystem/build.cake | 4 ++-- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 576947f..9ec0838 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,17 +33,17 @@ jobs: patchBinary cd ios-arm64_i386_x86_64-simulator/MobileVLCKit.framework patchBinary - mkdir -p $GITHUB_WORKSPACE/build/ios-device - mkdir -p $GITHUB_WORKSPACE/build/ios-simulator - mv ios-arm64_armv7_armv7s/DynamicMobileVLCKit.framework $GITHUB_WORKSPACE/build/ios-device - mv ios-arm64_i386_x86_64-simulator/DynamicMobileVLCKit.framework $GITHUB_WORKSPACE/build/ios-simulator + mkdir -p $GITHUB_WORKSPACE/iOS/ios-device + mkdir -p $GITHUB_WORKSPACE/iOS/ios-simulator + mv ios-arm64_armv7_armv7s/DynamicMobileVLCKit.framework $GITHUB_WORKSPACE/iOS/ios-device + mv ios-arm64_i386_x86_64-simulator/DynamicMobileVLCKit.framework $GITHUB_WORKSPACE/iOS/ios-simulator - name: Setup NuGet uses: nuget/setup-nuget@v1 with: nuget-version: '5.x' - name: Create LibVLC iOS NuGet package run: | - nuget pack VideoLAN.LibVLC.iOS.nuspec + nuget pack iOS/VideoLAN.LibVLC.iOS.nuspec - name: Upload build uses: actions/upload-artifact@v2 with: @@ -103,9 +103,9 @@ jobs: - name: Create NuGet folders shell: bash run: | - mkdir -p build/win10-arm/native - mkdir -p build/win10-x64/native - mkdir -p build/win10-x86/native + mkdir -p UWP/win10-arm/native + mkdir -p UWP/win10-x64/native + mkdir -p UWP/win10-x86/native - name: Download and extract UWP builds env: VLC_VERSION: 3.0.16 @@ -124,26 +124,26 @@ jobs: 7z x x64.zip -ox64 -y 7z x x64/vlc/win64-uwp/vlc-$VLC_VERSION-win64.7z -ox64/vlc/win64-uwp -y - mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/lua build/win10-arm/native - mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/plugins build/win10-arm/native - mv libvlc-uwp-access-build-arm/libaccess_winrt_plugin.dll build/win10-arm/native/plugins/access - mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/sdk build/win10-arm/native - mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/libvlc.dll build/win10-arm/native - mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/libvlccore.dll build/win10-arm/native + mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/lua UWP/win10-arm/native + mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/plugins UWP/win10-arm/native + mv libvlc-uwp-access-build-arm/libaccess_winrt_plugin.dll UWP/win10-arm/native/plugins/access + mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/sdk UWP/win10-arm/native + mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/libvlc.dll UWP/win10-arm/native + mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/libvlccore.dll UWP/win10-arm/native - mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/lua build/win10-x86/native - mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/plugins build/win10-x86/native - mv libvlc-uwp-access-build-x86/libaccess_winrt_plugin.dll build/win10-x86/native/plugins/access - mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/sdk build/win10-x86/native - mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/libvlc.dll build/win10-x86/native - mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/libvlccore.dll build/win10-x86/native + mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/lua UWP/win10-x86/native + mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/plugins UWP/win10-x86/native + mv libvlc-uwp-access-build-x86/libaccess_winrt_plugin.dll UWP/win10-x86/native/plugins/access + mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/sdk UWP/win10-x86/native + mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/libvlc.dll UWP/win10-x86/native + mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/libvlccore.dll UWP/win10-x86/native - mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/lua build/win10-x64/native - mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/plugins build/win10-x64/native - mv libvlc-uwp-access-build-x64/libaccess_winrt_plugin.dll build/win10-x64/native/plugins/access - mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/sdk build/win10-x64/native - mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/libvlc.dll build/win10-x64/native - mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/libvlccore.dll build/win10-x64/native + mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/lua UWP/win10-x64/native + mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/plugins UWP/win10-x64/native + mv libvlc-uwp-access-build-x64/libaccess_winrt_plugin.dll UWP/win10-x64/native/plugins/access + mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/sdk UWP/win10-x64/native + mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/libvlc.dll UWP/win10-x64/native + mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/libvlccore.dll UWP/win10-x64/native - name: Package NuGet shell: bash run: | diff --git a/buildsystem/build.cake b/buildsystem/build.cake index 0e22820..cbaaad3 100644 --- a/buildsystem/build.cake +++ b/buildsystem/build.cake @@ -14,8 +14,8 @@ var configuration = Argument("configuration", "Release"); var nightlyVersion = "vlc-4.0.0-dev"; var artifactsLocation = Directory("../artifacts"); -var packageLocationX64 = Directory("../build/win7-x64/native"); -var packageLocationX86 = Directory("../build/win7-x86/native"); +var packageLocationX64 = Directory("../Windows/win7-x64/native"); +var packageLocationX86 = Directory("../Windows/win7-x86/native"); string todayPartialLink = null; const string ext = ".7z"; From 58f8be3dfcdb65cea683d118cadb5128fbb003e7 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:27:32 +0700 Subject: [PATCH 09/13] fix uwp nuspec path --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9ec0838..6ccd8c5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -147,7 +147,7 @@ jobs: - name: Package NuGet shell: bash run: | - mono nuget.exe pack VideoLAN.LibVLC.UWP.nuspec + mono nuget.exe pack UWP/VideoLAN.LibVLC.UWP.nuspec - name: Upload NuGet package uses: actions/upload-artifact@v2 with: From 4823c39623c741280c09a024ff8ce16bf99efa28 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:31:22 +0700 Subject: [PATCH 10/13] fix build cake nuget pack path --- buildsystem/build.cake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildsystem/build.cake b/buildsystem/build.cake index cbaaad3..b815847 100644 --- a/buildsystem/build.cake +++ b/buildsystem/build.cake @@ -234,7 +234,7 @@ void CreateNuGetPackage() PrepareForPackaging(); Console.WriteLine("Version for package: " + packageVersionWin64); - NuGetPack("../VideoLAN.LibVLC.Windows.nuspec", new NuGetPackSettings + NuGetPack($"../Windows/{WindowsPackageName}", new NuGetPackSettings { // package version URLs differ from the same nightly build depending on the arch. // using the number from win64 From f70c38eb153db78790f5f0dac02245c331fd5ec0 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 13:55:36 +0700 Subject: [PATCH 11/13] missing ext --- buildsystem/build.cake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildsystem/build.cake b/buildsystem/build.cake index b815847..a628b9f 100644 --- a/buildsystem/build.cake +++ b/buildsystem/build.cake @@ -234,7 +234,7 @@ void CreateNuGetPackage() PrepareForPackaging(); Console.WriteLine("Version for package: " + packageVersionWin64); - NuGetPack($"../Windows/{WindowsPackageName}", new NuGetPackSettings + NuGetPack($"../Windows/{WindowsPackageName}.nuspec", new NuGetPackSettings { // package version URLs differ from the same nightly build depending on the arch. // using the number from win64 From 629789e9657ff8e31244d6e301082006cf933107 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Wed, 10 Nov 2021 14:00:03 +0700 Subject: [PATCH 12/13] fix includes --- Windows/VideoLAN.LibVLC.Windows.nuspec | 3 ++- macOS/VideoLAN.LibVLC.Mac.nuspec | 7 ++++--- tvOS/VideoLAN.LibVLC.tvOS.nuspec | 3 ++- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Windows/VideoLAN.LibVLC.Windows.nuspec b/Windows/VideoLAN.LibVLC.Windows.nuspec index 1138cc3..6f6ba24 100644 --- a/Windows/VideoLAN.LibVLC.Windows.nuspec +++ b/Windows/VideoLAN.LibVLC.Windows.nuspec @@ -20,6 +20,7 @@ As it is native code, you will need to use a wrapper library such as LibVLCSharp - + + \ No newline at end of file diff --git a/macOS/VideoLAN.LibVLC.Mac.nuspec b/macOS/VideoLAN.LibVLC.Mac.nuspec index 644264c..7dfa8cc 100644 --- a/macOS/VideoLAN.LibVLC.Mac.nuspec +++ b/macOS/VideoLAN.LibVLC.Mac.nuspec @@ -17,8 +17,9 @@ As it is native code, you will need to use a wrapper library such as LibVLCSharp https://code.videolan.org/videolan/vlc/blob/master/NEWS - - - + + + + \ No newline at end of file diff --git a/tvOS/VideoLAN.LibVLC.tvOS.nuspec b/tvOS/VideoLAN.LibVLC.tvOS.nuspec index 204ea80..82e0884 100644 --- a/tvOS/VideoLAN.LibVLC.tvOS.nuspec +++ b/tvOS/VideoLAN.LibVLC.tvOS.nuspec @@ -20,6 +20,7 @@ As it is native code, you will need to use a wrapper library such as LibVLCSharp - + + \ No newline at end of file From b766e2cb6ed44cd19a2ce6bd0b14ac98644435a7 Mon Sep 17 00:00:00 2001 From: Martin Finkel Date: Mon, 29 Nov 2021 16:43:46 +0700 Subject: [PATCH 13/13] uwp note --- Windows/README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Windows/README.md b/Windows/README.md index 749bd95..01d0171 100644 --- a/Windows/README.md +++ b/Windows/README.md @@ -2,6 +2,8 @@ As it is native code, you will need to use a wrapper library such as [LibVLCSharp](https://code.videolan.org/videolan/LibVLCSharp) to use it from .NET. +_note: If you are looking to target modern Windows (UWP, Xbox, etc.), the NuGet you want is [VideoLAN.LibVLC.UWP](https://www.nuget.org/packages/VideoLAN.LibVLC.UWP) instead._ + ## What is libvlc? `libvlc` is the multimedia framework powering the VLC applications. It is fully opensource, so other apps use it too. @@ -38,3 +40,4 @@ dotnet add package VideoLAN.LibVLC.Windows - x64 - x86 +- ARM32