NuGet NuGet license Join the chat at https://discord.gg/SERVhPp
libvideo (aka VideoLibrary) is a modern .NET library for downloading YouTube videos. It is portable to most platforms and is very lightweight.
You can grab a copy of the library on NuGet by running:
Install-Package VideoLibrary
Alternatively, you can try building the repo if you like your assemblies extra-fresh.
| Platform / Application | Minimum Supported Version | Notes |
|---|---|---|
| .NET / .NET Core | .NET Core 2.0+ / .NET 5+ | Fully supports .NET Standard 2.0 libraries. |
| .NET Framework | 4.6.1+ | Supports .NET Standard 2.0 (does NOT support 2.1). |
| Mono | 5.4+ | Official support for .NET Standard 2.0. |
| Unity | 2018.1+ | Requires scripting runtime set to .NET 4.x Equivalent. |
| Xamarin.iOS | 10.14+ | Supports .NET Standard 2.0 libraries. |
| Xamarin.Android | 8.0+ | Supports .NET Standard 2.0 libraries. |
| Xamarin.Mac | 3.8+ | Supports .NET Standard 2.0 libraries. |
| Universal Windows Platform (UWP) | 10.0.16299+ | Supported starting from this Windows 10 version. |
Here's a small sample to help you get familiar with libvideo:
using VideoLibrary; void SaveVideoToDisk(string link) { var youTube = YouTube.Default; // starting point for YouTube actions var video = youTube.GetVideo(link); // gets a Video object with info about the video File.WriteAllBytes(@"C:\" + video.FullName, video.GetBytes()); }
Or, if you use Visual Basic:
Imports VideoLibrary Sub SaveVideoToDisk(ByVal link As String) Dim video = YouTube.Default.GetVideo(link) File.WriteAllBytes("C:\" & video.FullName, video.GetBytes()) End Sub
If you'd like to check out some more of our features, take a look at our docs. You can also refer to our example application (named Valks, yes, I know, it's a silly name) if you're looking for a more comprehensive sample.
libvideo is licensed under the BSD 2-clause license.