0

シェルスクリプトを学びたいので、youtube-dlを使ってYouTube動画をダウンロードし、ffmpegを使ってmp3に変換しようとしています。

youtube-dl http://youtube.com/watch?v=... その後 、手動で実行しffmpeg -i downloadedFile -ab 256000 -ar 44100 audioFile.mp3ます。

スクリプトに 2 つの引数を渡す必要があることはわかっています。1 つはビデオの URL 用、もう 1 つはオーディオ ファイル用です。URL のビデオ ID を grep し、それを使用して mp3 に変換するために使用するファイルを知ることができますか? (youtube-dl は ID で名前が付けられたビデオを保存するため)

誰かが私に役立つ記事やドキュメントを勧めてくれますか?

4

1 に答える 1

1

--outputyoutube-dlのパラメーターを使用して、任意のテンプレートを作成できます。さらに、youtube-dl はすでに mp3 に変換できます。試す

#!/bin/sh
youtube-dl -o '%(title)s.%(ext)s' -x --audio-format mp3 -- "$1"
  • -oまたは--output出力名を定義します。%(title)sビデオのタイトル%(ext)s、拡張子、%(id)sビデオ IDなど、さまざまなテンプレートを使用できます。, which will result in an「audio.%(ext)s audio.mp3 」ファイルなどの静的ファイル名を使用することもできます。
  • -xまたは--extract-audioyoutube-dl にビデオをオーディオ ファイルに変換するようにアドバイスします (パスしない限り、後でビデオ ファイルを削除します-k)。ただし、ソリューションとは対照的に、youtube-dlは既にmp3になっているオーディオストリームを再コード化しません.256kなどの比較的高いビットレートでも、mp3をデコードして後で再エンコードすると品質が低下します.
  • 特定のビットレートが必要な場合は、--audio-qualityパラメーターを使用します--audio-quality 256k
  • この--audio-formatパラメーターは、youtube-dl にオーディオを指定された形式に変換するように指示します。を使用bestすると、どのような形式であっても、常に元のオーディオを取得できます (品質を失うことはありません)。
  • "$1"シェル スクリプトの最初のパラメータです。URL 全体、動画 ID、またはいくつかのショートカット ( ytsearch:pythonYouTube で「python」を検索して最初の動画を選択するなど) を渡すことができます。
于 2013-05-08T07:27:45.930 に答える