GNU/Linux >> Tutoriels Linux >  >> Linux

Téléchargez une partie de la vidéo Youtube avec Youtube-dl et FFmpeg

Même s'il existe une multitude de programmes disponibles pour télécharger et encoder des vidéos, je préfère utiliser Youtube-dl et FFmpeg . Ces deux utilitaires sont juste suffisants pour télécharger des vidéos en ligne et encoder, décoder, transcoder, recadrer et multiplexer les vidéos téléchargées. Aujourd'hui, nous allons voir comment télécharger une portion de vidéo YouTube avec Youtube-dl et FFmpeg sous Linux.

Avant de connaître cette astuce, je téléchargeais d'abord l'intégralité de la vidéo à l'aide de Youtube-dl, puis je la réduisais à la durée souhaitée à l'aide de FFmpeg, comme indiqué ci-dessous.

Pour télécharger une vidéo, je ferais :

$ youtube-dl <youtube-link>

Et puis coupez la vidéo téléchargée en utilisant l'heure de début et de fin du clip vidéo selon mon goût avec FFmpeg en utilisant la commande :

$ ffmpeg -i input_video.mp4 -ss 00:01:00 -to 00:03:00 -c copy output_video.mp4

C'est ce que je faisais pour obtenir seulement une partie de la vidéo. Si vous suivez toujours cette méthode pour télécharger et découper des vidéos, ne vous inquiétez pas. Je connais un peu mieux un moyen de télécharger des parties de la vidéo youtube au lieu de la vidéo complète. Continuez à lire !

Téléchargez une partie de la vidéo Youtube avec Youtube-dl et FFmpeg

Tout d'abord, nous verrons comment télécharger une partie spécifique d'une vidéo youtube à l'aide du script Youtube-dl.

Pour les besoins de ce guide, j'utiliserai cette vidéo de la chaîne YouTube officielle de notre OSTechNix Blog. Cette vidéo dure 2:43 minutes et montre essentiellement comment lancer des navigateurs Web en mode plein écran sous Linux.

Si vous n'avez pas encore installé Youtube-dl sur votre machine Linux, reportez-vous aux liens joints dans le premier paragraphe.

Youtube-dl a le --postprocessor-args paramètre pour télécharger une partie spécifique d'une vidéo youtube ou des vidéos de plusieurs autres sites Web.

Pour télécharger une partie d'une vidéo avec Youtube-dl, exécutez :

$ youtube-dl --postprocessor-args "-ss 00:01:00 -to 00:02:00" "https://www.youtube.com/watch?v=dc7I-i7sPrg"

Ici, --ss 00:01:00 est l'heure de début de la vidéo et -to 00:02:00 est le temps de fin. Ainsi, la commande ci-dessus commencera à encoder à 1 minute et se terminera à 2 minutes.

Vous pouvez également utiliser -t drapeau pour spécifier la durée totale.

$ youtube-dl --postprocessor-args "-ss 00:01:00 -t 00:00:50" "https://www.youtube.com/watch?v=dc7I-i7sPrg"

L'encodage commencera à 1 minute et ne prendra que les 50 secondes suivantes.

Veuillez noter que Youtube-dl va télécharger la vidéo entière avant de le traiter. Après avoir coupé la vidéo à la longueur donnée, il supprimera la vidéo d'origine et ne conservera que la partie de la vidéo. Si vous souhaitez conserver les deux, passez simplement le -k drapeau.

Si vous ne souhaitez pas télécharger la vidéo entière mais seulement une partie, vous pouvez combiner ffmpeg et youtube-dl pour télécharger une partie spécifique de la vidéo youtube comme ci-dessous :

$ youtube-dl --external-downloader ffmpeg --external-downloader-args "-ss 00:01:00.00 -to 00:02:00.00" -f best "https://www.youtube.com/watch?v=dc7I-i7sPrg"

Ici, nous avons utilisé -f best drapeau pour télécharger la meilleure qualité audio et vidéo.

La commande ci-dessus téléchargera la vidéo Youtube donnée avec le script Youtube-dl, puis la découpera à partir de 1 minute et se terminera à 2 minutes.

Voici une autre version de la commande qui fait le même travail.

$ ffmpeg -ss 00:01:00 -to 00:02:00 -i "$(youtube-dl -f best --get-url 'https://www.youtube.com/watch?v=dc7I-i7sPrg')" -c:v copy -c:a copy kiosk.mp4

Cette commande fait la même chose que la commande ci-dessus mais enregistre la vidéo de sortie sous "kiosk.mp4".

Mise à jour :

Comme l'un de nos lecteurs l'a commenté ci-dessous, si l'astuce ci-dessus ne fonctionne pas pour une raison quelconque, il suffit d'ajouter une décimale après quelques secondes comme "-ss 00:01:00.00 -to 00:02:00.00 " au lieu de "-ss 00:01:00 -to 00:02:00 ". Je n'ai pas personnellement testé cela. Cependant, le lecteur affirme que cela fonctionne.

J'espère que cela vous aidera.

Référence

Image sélectionnée par kapil 99 de Pixabay .


Linux
  1. Comment télécharger des pistes MP3 à partir d'une vidéo YouTube à l'aide de YouTube-DL

  2. Comment réduire la taille d'une vidéo avec Ffmpeg ?

  3. Convertir une vidéo en une taille d'écran fixe en recadrant et en redimensionnant ?

  4. ffmpeg img to video =Impossible de trouver un fichier avec le chemin

  5. Zsh dit qu'aucune correspondance n'a été trouvée lors de la tentative de téléchargement de vidéo avec youtube-dl

Télécharger des fichiers avec Wget sur le shell Linux - Explication et exemples

Correction de l'erreur "Impossible de télécharger les données vidéo :erreur HTTP 403 :interdit"

Comment télécharger des vidéos YouTube sur Linux

Les commandes FFmpeg les plus utiles pour la conversion audio et vidéo

Charger et télécharger

Comment installer AlmaLinux 8.3 en 3 étapes (avec astuces et vidéo)