youtube-dl-rs

Crates.io

NOTE: The name for this library is a bit misleading, it currently does not support youtube-dl as its development seems to be very slow recently, it does support yt-dlp, which has diverged from youtube-dl in some ways, but sees a lot more development.

Runs yt-dlp and parses its JSON output. Example:

```rust use youtube_dl::YoutubeDl;

let output = YoutubeDl::new("https://www.youtube.com/watch?v=VFbhKZFzbzk") .sockettimeout("15") .run() .unwrap(); let title = output.intosingle_video().unwrap().title; println!("Video title: {}", title); ```

Or, if you want to it to run asynchronously (enable the feature tokio):

rust let output = YoutubeDl::new("https://www.youtube.com/watch?v=VFbhKZFzbzk") .socket_timeout("15") .run_async() .await?; let title = output.into_single_video().unwrap().title; println!("Video title: {}", title); Ok(())

Feature flags