diff --git a/Cargo.toml b/Cargo.toml index eb94fb692..b8bdeb60e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -135,6 +135,7 @@ driver = [ "url", "xsalsa20poly1305", ] +youtube-dlc = [] rustls = ["async-tungstenite/tokio-rustls"] native = ["async-tungstenite/tokio-native-tls"] serenity-rustls = ["serenity/rustls_backend", "rustls", "gateway", "serenity-deps"] diff --git a/src/input/ytdl_src.rs b/src/input/ytdl_src.rs index 1de388005..90cce9080 100644 --- a/src/input/ytdl_src.rs +++ b/src/input/ytdl_src.rs @@ -14,6 +14,12 @@ use std::{ use tokio::task; use tracing::trace; +const YOUTUBE_DL_COMMAND: &str = if cfg!(feature = "youtube-dlc") { + "youtube-dlc" +} else { + "youtube-dl" +}; + /// Creates a streamed audio source with `youtube-dl` and `ffmpeg`. pub async fn ytdl(uri: &str) -> Result { _ytdl(uri, &[]).await @@ -45,7 +51,7 @@ pub(crate) async fn _ytdl(uri: &str, pre_args: &[&str]) -> Result { "-", ]; - let mut youtube_dl = Command::new("youtube-dl") + let mut youtube_dl = Command::new(YOUTUBE_DL_COMMAND) .args(&ytdl_args) .stdin(Stdio::null()) .stderr(Stdio::piped())