added support for yt-dlp and youtube-dlc

This commit is contained in:
Nils Pukropp committed 2021-10-23 04:33:51 +02:00
1 parent 716153853b
commit 116f5ae314
2 files changed
+14 -2

No files matched your search

+5 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "ytd-rs"
version = "0.1.4"
version = "0.1.5"
authors = ["Nils Pukropp <nils.pukropp@outlook.de>"]
edition = "2018"
license-file ="LICENSE"
@@ -9,6 +9,10 @@ homepage = "https://github.com/Nirusu99/ytd-rs"
repository = "https://github.com/Nirusu99/ytd-rs"
readme = "README.md"
[features]
yt-dlp = []
youtube-dlc = []
[dependencies]
regex = "1.5"
+9 -1
View File
@@ -41,6 +41,14 @@ use std::{path::Path, process::Command};
type Result<T> = std::result::Result<T, YoutubeDLError>;
const YOUTUBE_DL_COMMAND: &str = if cfg!(feature = "youtube-dlc") {
"youtube-dlc"
} else if cfg!(feature = "yt-dlp") {
"yt-dlp"
} else {
"youtube-dl"
};
/// A structure that represents an argument of a youtube-dl command.
///
/// There are two different kinds of Arg:
@@ -246,7 +254,7 @@ impl YoutubeDL {
}
fn spawn_youtube_dl(&self) -> Result<Output> {
let mut cmd = Command::new("youtube-dl");
let mut cmd = Command::new(YOUTUBE_DL_COMMAND);
cmd.current_dir(&self.path)
.env("LC_ALL", "en_US.UTF-8")
.stdout(Stdio::piped())