본문 바로가기
my_lesson/_Windows

Windows - Utube downloader youtube-dl manual(사용법)

by boolean 2016. 8. 7.
728x90

Windows - Utube downloader youtube-dl manual(사용법)


이동-->  Linux - Utube downloader youtube-dl manual(사용법)






https://twitter.com/wikibooks/status/578750650172866560

How to select video quality from youtube-dl
; http://katselphrime.com/2015/03/20/how-to-select-video-quality-from-youtube-dl/


오호~~~ 명령행으로 제작된 프로그램이 공개되어 있었던 것입니다. ^^ 위의 소개 글에 보면, 1080p 동영상을 youtube-dl.exe로 다운로드 받는 방법이 나오는데요. 아쉽게도 리눅스 화면으로 설명하고 있는데, 저는 윈도우 환경으로 설명해 볼까 합니다.

1. 우선, youtube-dl.exe는 다음의 사이트에서 단독 exe 파일로 다운로드 받을 수 있습니다.

Windows 용 youtube-dl.exe 실행 파일 ; https://yt-dl.org/latest/youtube-dl.exe


2. 동영상 코덱 다운로드

여기 http://ffmpeg.zeranoe.com/builds/ 가서. 윈도우 버전별로 해서 Static 받으면 됩니다.

압축푼 파일명 > bin > ffmpeg.exe와, ffplay.exe , ffbrobe.exe  이 세 파일을 복사해서

youtube-dl.exe 파일이 있는 동일한 폴더에 붙여넣기한다.


default using

$ youtube-dl YouTube-(or-other-website)-video-link



option using : -x(--extract-audio) audio-format mp3 -Utube dl mp3 download

$ youtube-dl -x --audio-format mp3 YouTube-(or-other-website)-video-link



기본적인 동영상을 다운로드하는 것이라면 위의 프로그램만 다운로드 받아도 됩니다. 하지만, 고화질의 동영상을 다운로드 받고 싶다면 avconv 도구도 다운로드 받아야 합니다. 이는 다음의 배포 사이트에서 구할 수 있습니다.

/windows/release-gpl/
; http://builds.libav.org/windows/release-gpl/

32비트용 avconv
; http://builds.libav.org/windows/release-gpl/libav-11.3-win32.7z

64비트용 avconv
; http://builds.libav.org/windows/release-gpl/libav-11.3-win64.7z


위의 파일 중에 하나를 다운로드 받아서 압축을 풀면 \win64\usr\bin 폴더에 avconv.exe 파일이 있습니다. 따라서, 이전에 다운로드 받은 youtube-dl.exe 파일을 \win64\usr\bin 폴더에 복사해 주고 거기서 실행해 주면 됩니다.

Windows cmd 모드 어디서나 사용하고 싶다면 환경변수:Windows - 환경변수[PATH] 설정하기 를 등록해서 사용하면 된다.


예를 들기 위해 "이승철의 My Love 뮤직비디오"를 다운로드 해볼까요? ^^

이승철 (Lee Seung Chul) - My Love MV
; https://www.youtube.com/watch?v=hXiCB6SZp4U


대개의 경우, 검색을 통해 동영상을 보게 될텐데요. 이런 경우 웹 브라우저의 주소 창에 이렇게 "hXiCB6SZp4U"라는 기준값을 얻어낼 수 있습니다.



바로 그 값을 youtube-dl.exe의 실행시 "-F" 옵션(대소문자 구분)과 함께 실행해 주면 다음과 같이 오디오/비디오에 대한 포맷 목록을 얻을 수 있습니다. ("-F" 옵션없이 실행하면 곧바로 동영상을 다운로드 받을 수 있습니다.)

E:\libav-11.3-win64\win64\usr\bin>youtube-dl hXiCB6SZp4U -F
[youtube] hXiCB6SZp4U: Downloading webpage
[youtube] hXiCB6SZp4U: Extracting video information
[youtube] hXiCB6SZp4U: Downloading DASH manifest
[info] Available formats for hXiCB6SZp4U:
format code  extension  resolution note
140          m4a        audio only DASH audio  128k , m4a_dash container, aac  @128k (44100Hz), 6.78MiB
171          webm       audio only DASH audio  160k , audio@128k (44100Hz), 6.95MiB
141          m4a        audio only DASH audio  256k , m4a_dash container, aac  @256k (44100Hz), 13.61MiB
160          mp4        256x144    DASH video  119k , 15fps, video only, 5.99MiB
278          webm       256x144    DASH video  192k , webm container, VP9, 1fps, video only, 4.24MiB
242          webm       426x240    DASH video  217k , 1fps, video only, 8.12MiB
133          mp4        426x240    DASH video  249k , 30fps, video only, 13.06MiB
243          webm       640x360    DASH video  402k , 1fps, video only, 14.80MiB
134          mp4        640x360    DASH video  606k , 30fps, video only, 16.74MiB
244          webm       854x480    DASH video  816k , 1fps, video only, 27.79MiB
135          mp4        854x480    DASH video 1110k , 30fps, video only, 33.74MiB
247          webm       1280x720   DASH video 1515k , 1fps, video only, 53.07MiB
136          mp4        1280x720   DASH video 2214k , 30fps, video only, 64.77MiB
248          webm       1920x1080  DASH video 2546k , 1fps, video only, 96.68MiB
137          mp4        1920x1080  DASH video 4158k , 30fps, video only, 134.01MiB
17           3gp        176x144
36           3gp        320x240
5            flv        400x240
43           webm       640x360
18           mp4        640x360
22           mp4        1280x720   (best)


이중에서 extension 컬럼의 값이 "m4a"라고 되어 있는 것은 Audio 포맷이고, "webm", "mp4" 등으로 되어 있는 것은 Video 포맷입니다. 따라서, 지원되는 포맷 중에서 가장 높은 값만을 조합해서 동영상을 다운로드 받을 수 있습니다.

예를 들어, 위의 출력에서는 141번에 해당하는 m4a 포맷이 가장 좋은 품질의 Audio 포맷이고, 동영상은 137번에 해당하는 1920x1080 포맷이 가장 좋습니다. 따라서 이 2가지 포맷을 조합해서 한 개의 동영상 파일로 "-f" 옵션(대소문자 구분)을 이용해 다운로드 할 수 있습니다.

E:\libav-11.3-win64\win64\usr\bin>youtube-dl hXiCB6SZp4U -f 137+141
[youtube] hXiCB6SZp4U: Downloading webpage
[youtube] hXiCB6SZp4U: Extracting video information
[youtube] hXiCB6SZp4U: Downloading DASH manifest
[download] Destination: 이승철 (Lee Seung Chul) - My Love MV-hXiCB6SZp4U.f137.mp4
[download] 100% of 134.01MiB in 00:12
[download] Destination: 이승철 (Lee Seung Chul) - My Love MV-hXiCB6SZp4U.f141.m4a
[download] 100% of 13.61MiB in 00:01
[ffmpeg] Merging formats into "이승철 (Lee Seung Chul) - My Love MV-hXiCB6SZp4U.mp4"


그럼, 해당 폴더에 "이승철 (Lee Seung Chul) - My Love MV-hXiCB6SZp4U.mp4" 파일로 저장되는 것을 확인할 수 있습니다. 오호~~~ 멋지군요. ^^




참고로, avconv.exe 파일이 없는 상태에서 "-f" 옵션으로 2개의 오디오/비디오 포맷을 합치려고 실행하면 다음과 같은 경고 메시지가 발생합니다.

E:\libav-11.3-win64\win64\usr\bin>youtube-dl hXiCB6SZp4U -f 137+141
[youtube] hXiCB6SZp4U: Downloading webpage
[youtube] hXiCB6SZp4U: Extracting video information
[youtube] hXiCB6SZp4U: Downloading DASH manifest
WARNING: You have requested multiple formats but ffmpeg or avconv are not installed. The formats won't be merged'
[download] Destination: 이승철 (Lee Seung Chul) - My Love MV-hXiCB6SZp4U.f137.mp4
[download] 100% of 134.01MiB in 00:13
[download] Destination: 이승철 (Lee Seung Chul) - My Love MV-hXiCB6SZp4U.f141.m4a
[download] 100% of 13.61MiB in 00:01


보시면, mp4파일과 m4a파일로 나뉘어진 체로 저장이 되는데요. 따라서 유튜브 동영상을 음성 파일과 영상 파일로 나누고 싶다면 avconv.exe 없이 실행해 주시면 됩니다.

댓글