auge-543
指定されたURLから動画のダウンロードはできたのですが、音声変換も同時に行いたいのですが、可能ですか?
melian
youtube-dl -x ... と同様の結果を得たいのであれば可能なはずです(youtube_dl ライブラリの API を調べることになります)
調べてみたのですが、、youtube_dl のソースコードを読む方が確実かと思ったのでそうしてみました。
sh
1$ youtube-dl 'https://www.youtube.com/watch?v=xxxxx' -x --audio-format wav -o 'xxxxx.wav'
以下は実装例です。ダウンロードの対象は(ブラウザでアクセスしてみると判るかと思いますが)、youtube_dl の動作確認のために用意された動画です。
python
1import youtube_dl
2
3# youtube_dl test video
4test_video = 'https://www.youtube.com/watch?v=BaW_jenozKc'
5
6# output audio file
7output_file = 'xxxxx.wav'
8audio_format = 'wav'
9
10# download option
11download_opts = {
12 # --audio-format
13 'audioformat': audio_format,
14 # -x or --extract-audio
15 'postprocessors': [{
16 'key': 'FFmpegExtractAudio',
17 'preferredcodec': audio_format,
18 }],
19 # -o or --output TEMPLATE
20 'outtmpl': output_file.rsplit('.', 1)[0],
21}
22
23with youtube_dl.YoutubeDL(download_opts) as ydl:
24 ydl.download([test_video])
sh
1$ file xxxxx.wav
2xxxxx.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, stereo 44100 Hz