This is the NuGet package library that retrieves subtitles from a given YouTube video, inspired by @devhims' YouTube Caption Extractor.
- If you use this library on your Blazor WebAssembly project, you might encounter the CORS error. The only workaround is to use a facade API to retrieve the subtitles.
-
Install the NuGet package to your project.
-
Add the namespace to your code.
using Aliencube.YouTubeSubtitlesExtractor;
-
Get the YouTube video URL.
var youtubeUrl = "https://www.youtube.com/watch?v=i8tMiWHK05M";
-
Create an instance of
YouTubeVideo
class.var http = new HttpClient(); var youtube = new YouTubeVideo(http);
-
Extract subtitles from the given YouTube video URL. There are a few options to extract subtitles.
// Extract a single subtitle from the given YouTube video URL. // - defaults to English (en) var subtitle = await youtube.ExtractSubtitleAsync(youtubeUrl); // Extract a single subtitle from the given YouTube video URL with the specified language code. // eg) Korean (ko) var subtitle = await youtube.ExtractSubtitleAsync(youtubeUrl, "ko"); // Extract list of subtitles from the given VideoOptions instance. // eg) English and Korean (ko) var options = new VideoOptions { Url = youtubeUrl, LanguageCodes = { "en", "ko" } }; var subtitles = await youtube.ExtractSubtitlesAsync(options);
Please leave any issues or feedbacks on the GitHub Issue page.
- Extract YouTube video details including title, description and available subtitle languages.
- List of available subtitle languages.
- Icons made by Freepik from flaticon.com.