ffmpeg의 bin폴더내의 3개 파일(ffmpeg.exe, ffplay.exe, ffprobe.exe)이 파이썬 메인 파일과 같은 폴더에 있다고 가정한다.

 

 

 

- 유뷰브 주소가 'https://youtu.be/gRyJZYOEQ9Y'인 동영상 다운 받으려면 아래와 같이 입력한다

'youtube-dl ytsearch:YgtL4S7Hrwo'

(venv10) E:\youtube_download>youtube-dl YgtL4S7Hrwo
[youtube] YgtL4S7Hrwo: Downloading webpage
[download] Destination: Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.f247.webm
[download] 100% of 113.05MiB in 00:08
[download] Destination: Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.f251.webm
[download] 100% of 35.72MiB in 00:02
[ffmpeg] Merging formats into "Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.webm"
Deleting original file Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.f247.webm (pass -k to keep)
Deleting original file Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.f251.webm (pass -k to keep)

- 유뷰브 주소가 'https://youtu.be/gRyJZYOEQ9Y'인 동영상의 다운 가능한 video와 audio 포맷 정보 보려면 아래와 같이 입력한다

'youtube-dl ytsearch:YgtL4S7Hrwo --list-formats'

(venv10) E:\youtube_download>youtube-dl YgtL4S7Hrwo --list-formats
[youtube] YgtL4S7Hrwo: Downloading webpage
[info] Available formats for YgtL4S7Hrwo:
format code  extension  resolution note
249          webm       audio only tiny   51k , opus @ 50k (48000Hz), 15.13MiB
250          webm       audio only tiny   72k , opus @ 70k (48000Hz), 19.61MiB
140          m4a        audio only tiny  129k , m4a_dash container, mp4a.40.2@128k (44100Hz), 38.38MiB
251          webm       audio only tiny  130k , opus @160k (48000Hz), 35.72MiB
160          mp4        256x144    144p   34k , avc1.4d400c, 30fps, video only, 4.08MiB
278          webm       256x144    144p   54k , webm container, vp9, 30fps, video only, 9.75MiB
133          mp4        426x240    240p   56k , avc1.4d4015, 30fps, video only, 7.01MiB
242          webm       426x240    240p   85k , vp9, 30fps, video only, 13.77MiB
134          mp4        640x360    360p  114k , avc1.4d401e, 30fps, video only, 13.50MiB
243          webm       640x360    360p  156k , vp9, 30fps, video only, 24.85MiB
135          mp4        854x480    480p  202k , avc1.4d401f, 30fps, video only, 24.01MiB
244          webm       854x480    480p  292k , vp9, 30fps, video only, 38.34MiB
136          mp4        1280x720   720p  410k , avc1.4d401f, 30fps, video only, 45.66MiB
247          webm       1280x720   720p  868k , vp9, 30fps, video only, 113.05MiB
22           mp4        1280x720   720p  277k , avc1.64001F, 30fps, mp4a.40.2@192k (44100Hz)
18           mp4        640x360    360p  310k , avc1.42001E, 30fps, mp4a.40.2@ 96k (44100Hz), 93.77MiB (best)

- 위 리스트 중 249 포맷 코드 다운 받으려면 아래와 같이

(venv10) E:\youtube_download>youtube-dl YgtL4S7Hrwo -f 249
[youtube] YgtL4S7Hrwo: Downloading webpage
[download] Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.webm has already been downloaded
[download] 100% of 148.77MiB

- '-f worst'를 쓰면 가장 안좋은 품질이 다운된다는데, 좋은 품질이 다운된다. 어떻게 된거지?

(venv10) E:\youtube_download>youtube-dl YgtL4S7Hrwo -f worst
[youtube] YgtL4S7Hrwo: Downloading webpage
[download] Destination: Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.mp4
[download] 100% of 83.80MiB in 00:05

- 'youtube-dl -x --audio-format mp3 YgtL4S7Hrwo'이라고 하면 mp3가 다운되는데, 오디오 품질은 가변(various) 품질이다. 

(venv10) E:\youtube_download>youtube-dl -x --audio-format mp3 YgtL4S7Hrwo
[youtube] YgtL4S7Hrwo: Downloading webpage
[download] Destination: Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.webm
[download] 100% of 35.72MiB in 00:02
[ffmpeg] Destination: Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.mp3
Deleting original file Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.webm (pass -k to keep)

- 특정 오디오 품질로 하려면, 예를 들어 64kbps로 하려면 '--audio-quality 64k'를 넣어준다

(venv10) E:\youtube_download>youtube-dl -x --audio-format mp3 --audio-quality 64k YgtL4S7Hrwo
[youtube] YgtL4S7Hrwo: Downloading webpage
[download] Destination: Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.webm
[download] 100% of 35.72MiB in 00:02
[ffmpeg] Destination: Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.mp3
Deleting original file Guido van Rossum - Python Language - PyCon 2016-YgtL4S7Hrwo.webm (pass -k to keep)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

참고: spapas.github.io/2018/03/06/easy-youtube-mp3-downloading/

 

 

 
 
 
 
 
 
 
 
 
Posted by uniqueone
,