Je souhaite utiliser un sélecteur de format du type -f bestvideo+
best audio whose extension is compatible with the video extension
afin qu’ils n’aient pas besoin d’être multiplexé dans un mkv (WARNING: Requested formats are incompatible for merge and will be merged into mkv.
).
Note: Je connais -f best
et je ne le veux pas. Je veux les meilleures qualités audio et vidéo possibles tout en veillant à ce qu'elles soient compatibles. Comment faire ça?
Vous pouvez télécharger la meilleure vidéo et audio en utilisant:
youtube-dl -f bestvideo+bestaudio "link to youtube video"
Si cela vous donne une erreur, essayez plutôt ceci:
youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --merge-output-format mp4 "link to youtube video"
Ici, vous téléchargez séparément les meilleures vidéos et audio, puis vous fusionnez en un fichier, dans ce cas, le fichier mp4. Vous pouvez également modifier le format de sortie de la vidéo fusionnée.
Bonne chance!
vieille question, mais première réponse sur google, donc:
en définissant la fonction suivante, cela a fonctionné pour moi (également possible de le placer dans ~/.bashrc
):
youtube-dl_video_and_audio_best_no_mkv_merge () {
video_type=$(youtube-dl -F "$@" | grep "video only" | awk '{print $2}' | tail -n 1)
case $video_type in
mp4)
youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]' "$@";;
webm)
youtube-dl -f 'bestvideo[ext=webm]+bestaudio[ext=webm]' "$@";;
*)
echo "new best videoformat detected, please check it out! -> aborted";;
esac
}
maintenant vous pouvez télécharger avec
youtube-dl_video_and_audio_best_no_mkv_merge "https://www.youtube.com/watch?v=*******" "https://https://www.youtube.com/watch?v=********"
source: propre création