Youtube의 영상을 다운로드 하기 위해 다운로더다 뭐다 검색하면 10중 8~9는 잘 되지 않거나 돈을 내야 한다..

 

그러다가 오픈소스인 youtube-dl을 알게 되었고, 사용해 봤더니 잘된다.

 

심지어 웹 기반도 아니고.. command-line program이다.

 

https://ytdl-org.github.io/youtube-dl/index.html

 

GUI 프로그램도 있는데, 사용해본 결과 잘 되는것 같으나 잘 되지 않는다.

 

예를들어 난 1080p로 다운받고 싶은데, 그렇게 하는 설정이 없다거나..

 

그래서 이리저리 해본 끝에 적절한 세팅을 찾게 되었다.

 

준비물 : 다운로드 받을 유튜브 영상의 주소

 

 

이 영상의 주소는 https://www.youtube.com/watch?v=mF9YL8Msc0M 이다.

 

그럼 일단 명령 프롬프트를 켜고, 프로그램을 실행시켜 -F 옵션으로 다운받을 수 있는 파일의 목록을 읽는다.

 

youtube-dl -F https://www.youtube.com/watch?v=mF9YL8Msc0M

 

그럼 이렇게 다운받을 수 있는 목록이 나온다.

 

1080p를 다운받고자 한다면 resolution을 봐서, 1920x1080 인것을 골라야 한다.

그중 mp4확장자, 즉 format code가 137인 줄을 보자.

 

137          mp4        1920x1080  DASH video 3014k , mp4_dash container, avc1.640028, 30fps, video only

 

잘 보면,  video only, 즉 소리가 없는! 영상만 있는 파일이다.

 

다른 목록을 보면, video only 말고 audio only 말고 유일한건 360p이기 때문에

 

아무옵션 없이 다운받는다면 저 360p가 다운되게 된다.

 

따라서 우리는 video only 137에 audio only 140을 둘 다 다운로드 받아,

 

두개를 합쳐 소리가 있는 영상을 만들어야 한다.

 

audio only 중 251이 48000hz로 뭔가 더 좋아보이는데 저건 나중에 합칠때 뭐가 잘 안되더라..

 

소리와 영상을 합치는 거는 ffmpeg를 사용해야 한다.

 

윈도우 용 빌드 : https://ffmpeg.zeranoe.com/builds/ 

 

저기서 다운받은 ffmpeg.exe를 youtube-dl.exe와 같은 폴더에 넣어두고

 

이제 다시 youtube-dl로 영상파일, 소리파일을 다운받아 합치는 명령옵션을 넣은 채로 실행시킨다.

 

youtube-dl -f 137+140 https://www.youtube.com/watch?v=mF9YL8Msc0M

 

잘 보면 format 137과 140을 다운받고, 합치겠단 말이다.

그럼 이렇게 mp4 영상파일과 m4a 소리파일을 다운로드 해서, ffmpeg를 자기가 실행시켜 두 파일을 합친다.

 

그럼 이렇게 영상과 소리가 합쳐진 하나의 1080p 파일이 만들어진다.

 

 

3줄요약

1. youtube-dl.exe / ffmpeg.exe 를 같은 폴더에 다운받는다.

2. 명령프롬프트로 그 폴더에 들어가 youtube-dl -F "유튜브영상주소" 로 다운받을 포멧을 결정한다.

3. youtube-dl -f "영상포멧번호"+"소리포멧번호" "유튜브영상주소" 로 다운!

Posted by 딕스트라
,