GNU/Linux >> Linux の 問題 >  >> Linux

Youtube-dlとFFmpegでYoutubeビデオの一部をダウンロードする

ビデオのダウンロードとエンコードに使用できるプログラムは多数ありますが、私は Youtube-dlを使用することを好みます。 およびFFmpeg 。これらの2つのユーティリティは、オンラインからビデオをダウンロードし、ダウンロードしたビデオをエンコード、デコード、トランスコード、トリミング、および多重化するのに十分です。今日は、LinuxでYoutube-dlとFFmpegを使用してYouTubeビデオの一部をダウンロードする方法を説明します。

このヒントを知る前に、私は通常、最初にYoutube-dlを使用してビデオ全体をダウンロードし、次に以下に示すようにFFmpegを使用して希望の長さにトリミングします。

ビデオをダウンロードするには、次のようにします。

$ youtube-dl <youtube-link>

次に、コマンドを使用してFFmpegで好みに応じて、ビデオクリップの開始時刻と終了時刻を使用してダウンロードしたビデオをトリミングします。

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

これは私がビデオの一部だけを取得するために行っていたことです。それでもこの方法に従ってビデオをダウンロードしてトリミングする場合は、気にしないでください。フルビデオではなく、YouTubeビデオの一部をダウンロードするためのより良い方法を少し知っています。続きを読む!

Youtube-dlとFFmpegを使用してYoutubeビデオの一部をダウンロード

まず、Youtube-dlスクリプトを使用してYouTube動画の特定の部分をダウンロードする方法を説明します。

このガイドでは、このビデオを使用します OSTechNixの公式YouTubeチャンネルから ブログ。このビデオの長さは2:43分で、基本的にLinuxでフルスクリーンモードでWebブラウザを起動する方法を示しています。

LinuxマシンにYoutube-dlをまだインストールしていない場合は、最初の段落に添付されているリンクを参照してください。

Youtube-dlには--postprocessor-argsがあります YouTubeビデオの特定の部分を他のいくつかのWebサイトからダウンロードするためのパラメータ。

Youtube-dlで動画の一部をダウンロードするには、次のコマンドを実行します:

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

ここでは、--ss 00:01:00 ビデオの開始時間であり、-to 00:02:00 終了時間です。したがって、上記のコマンドは1分でエンコードを開始し、2分で終了します。

-tを使用することもできます 合計時間を指定するフラグ。

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

これにより、1分でエンコードが開始され、次の50秒しかかかりません。

Youtube-dlは動画全体をダウンロードすることに注意してください それを処理する前に。ビデオを指定された長さにトリミングした後、元のビデオを削除し、ビデオの一部のみを保持します。両方を保持したい場合は、-kを渡すだけです。 フラグ。

ビデオ全体をダウンロードせず、その一部のみをダウンロードしたい場合は、ffmpegとyoutube-dlを組み合わせて、以下のようにyoutubeビデオの特定の部分をダウンロードできます。

$ 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"

ここでは、-f bestを使用しました 最高品質のオーディオとビデオをダウンロードするためのフラグ。

上記のコマンドは、Youtube-dlスクリプトを使用して指定されたYoutubeビデオをダウンロードし、1分から開始して2分で終了するようにトリミングします。

これは、同じ仕事をする別のバージョンのコマンドです。

$ 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

このコマンドは上記のコマンドと同じように動作しますが、出力ビデオを「kiosk.mp4」として保存します。

更新:

読者の1人が以下にコメントしているように、上記のヒントが何らかの理由で機能しない場合は、秒の後に小数点を追加してください。 「-ss 00:01:00.00 -to 00:02:00.00 "-ss 00:01:00 -to 00:02:00の代わりに" 「しかし、私はこれを個人的にテストしていません。しかし、読者はそれが機能すると主張しています。

これがお役に立てば幸いです。

参照

kapil 99による注目の画像 Pixabayから 。


Linux
  1. YouTube-DLを使用してYouTubeビデオからMP3トラックをダウンロードする方法

  2. Ffmpegでビデオのサイズを小さくするにはどうすればよいですか?

  3. トリミングとサイズ変更によってビデオを固定画面サイズに変換しますか?

  1. FFmpegでビデオをWhatsAppビデオフォーマットに変換する

  2. ffmpeg img to video =パスを持つファイルが見つかりませんでした

  3. Zsh は、youtube-dl でビデオをダウンロードしようとすると、一致するものが見つからないと言います

  1. youtube-dlを使用してLinuxコマンドラインでYouTubeビデオをダウンロードする

  2. LvmとDm-cryptでトリミングしますか?

  3. エラー:ビデオをダウンロードできませんか?