가끔 Youtube의 동영상을 파일로 저장하고 싶을 때가 있다. Youtube에서 영상을 다운로드하거나, MP3와 같은 음악 파일로 저장하는 방법을 설명하고자 한다. 인터넷에 'Youtube 동영상 다운로드'라고 검색을 해보면 많은 프로그램들이 검색되지만, 그중 일부는 프로그램 사용 중 '광고'가 너무 심하게 나오거나 악성코드가 의심이 되기도 한다. 개인적으로는 Youtube 다운로드하다가 랜섬웨어에 감염된 이후로는 프로그램 설치에 신중을 기하고 있다. 그래서 광고도 없고 악성 코드가 없는 방법을 찾아서 확인했고 본 글은 그 결과물이다.
참고로, 설명할 youtube-dl는 Youtube 사이트에서만 제한적으로 동작하는 것이 아니고, 네이버 TV, 카카오 TV처럼 동영상 스트리밍 되는 사이트는 웬만(?)하면 동작한다.
저작권이 있는 파일을 전송, 배포하는 것은 불법입니다. 저작권이 없이 공유가 가능한 콘텐츠에 대해서만 다운로드를 진행해야 한다.
세줄 요약
- Ubuntu 사용자: Video Downloader 설치 (Ubuntu Software center에서 설치)
- Windows 사용자: youtube-dl-gui 설치 : youtube-dl-gui-0.4-win-setup.zip 설치, Tartube 도 추천
- 사용하기 쉽게 다양한 기능 (Playlist 다운로드, 채널 다운로드, 음악 다운로드, 자막 다운로드)한 경우는 4K Video Downloader 추천 (자세한 내용은 링크를 참조해주세요)
1. youtube-dl 사용하기 (command line) : 고급 사용자
youtube-dl 은 https://youtube-dl.org/ 에서 개발하고 있는 오픈소스 프로젝트이다. 리눅스뿐 아니라 윈도즈에서도 설치 가능하다. youtube-dl 은 sudo apt install youtube-dl 명령어로 최신 버전을 설치 가능하다. youtube-dl 설치 시 avconv , ffmpeg. rtmpdump 등 도 transcoding tool, 이 RTSP steaming tool도 같이 설치되고, 개발 시 사용된 Python 라이브러리도 같이 설치된다.
$ sudo apt install youtube-dl
youtube-dl은 command line 프로그램이다. Command line 옵션이 너무 많아서 사용하기 어렵지만, 일반적으로 아래 command 4개 정도만 하면 필요한 동영상은 다운로드 가능하다.
# <your youtube url> 의 영상을 다운로드 (디폴트 설정)
$ youtube-dl <your youtube url>
# <your youtube url> 의 영상을 다운로드 (최고 품질)
$ youtube-dl -f "bestvideo+bestaudio" <your youtube url>
# Youtube 영상을 audio 파일 mp3 로 다운로드
$ youtube-dl -x --audio-format mp3 --audio-quality 0 <your youtube url>
# Youtube playlist을 다운로드
$ youtube-dl -ic -o "%(title)s.%(ext)s" --yes-playlist -x --audio-format mp3 --audio-quality 0 <your youtube playlist url>
Youtube 영상의 URL을 확인하는 방법은 Youtube 사이트에서 영상에 오른쪽 click 후 '동영상 URL 복사'를 통해서 확인이 가능하고, 브라우저 상단 위 URL을 copy&paste 해도 확인이 가능하다.
(7/4일 update) 마우스 오른쪽 메뉴에 동영상의 URL을 알 수 없는 경우에는 해당 web page의 html 파일을 분석을 해야 한다. 네이버 블로그에 올라간 동영상의 URL을 얻는 방법을 https://kibua20.tistory.com/79에 동영상과 함께 설명을 추가하였다.
Youtube 동영상은 MPEG4와 Webm 컨테이너를 사용하고 있고, 여러 해상도를 가지고 있다. 가장 간단한 command로 $ youtube-dl <your youtube url> 로 동영상을 받은 경우 Webm 컨터이너의 높은 해상도
다운로드하는 것을 확인하였다.
Youtube-dl은 command line 버전이라 사용이 쉽지 않다. 이를 보완하기 위해서 gui 버전을 지원한다. (아래 그림)
2. youtube-dl gui : Windows 사용자 GUI 버전
youtube-dl gui 은 youtube-dl을 기반으로 한 front end 프로그램이다. GitHub에서 오픈 소스를 개발하고 있고, Windows 뿐 아니라 Linux에도 지원하지만, 본 게시글에서는 Windows 10 기준으로 설명을 한다.
youtube-dl gui를 설치 프로램 youtube-dl-gui-0.4-win-setup.zip 을 다운로드한다. 압축을 풀어 설치하면 앞서 설명한 ffmepg 등이 같이 설치되고, python의 pyc와 pyd 파일을 같이 설치한다.
youtube-dl gui를 실행하기 전에 Windows 10 에서는 '폴더 액세스 권한'을 추가해야 한다. 프로그램에서 URL을 입력 후 다운로드 진행하면 Permission 에러가 나서 다운로드 파일 저장이 안 되고, '제어된 폴더 액세스 통해 앱 허용' 에 ffmpeg.exe 와 youtube-dl.exe를 추가해야 정상적으로 저장이 된다.
youtube-dl gui의 사용 방법은 쉽니다. 1) 동영상의 URL을 입력하고, 2) Default (Video+Audio) 또는 MP3 (audio only)를 선택하고 3) 다운로드 버튼을 선택하면 다운로드 시작한다. 다운로드 완료 후 Staus 가 Error 가 난다면 위에 폴더 액세스 권한을 추가해야 한다. 만일 폴더 액세스 권한 추가해도 문제가 된다면 보호하지 않은 폴더로 변경하면 문제없이 진행된다. youtube-dl-gui 로 MP3 파일을 다운로드 하는 경우 앨범 차트까지 자동으로 생성됩니다.
3. Video Downloader: 우분투 사용자 GUI 버전
youtube-dl은 command line interface이기 때문에 SW 개발자가 아니면 사용하기 어렵다. 이러한 문제를 해결하는 오픈 소스 프로젝트가 Video Dowonloader이다. Video Dowloader를 요약하면 아래와 같다.
- Ubuntu only, GUI 사용 가능. 무료, 광고 없음
- Convert videos to MP3
- Download single videos or whole playlists
- Automatically selects a video format based on your quality demands
- Based on youtube-dl
Video Downloader는 Ubuntu Software center에서 다운로드 가능하다.
Video Downloader를 설치 후 실행하면 아래와 같이 간단한 GUI를 확인할 수 있다. 1) 동영상의 URL은 앞서 설명한 Youtube 사이트에서 확인한다. 2) MP3로 다운로드하는 경우에는 'Audio 선택'하고, 동영상으로 받는 경우에는 'Video 선택'한다. Video 해상도 또한 설정이 가능하다. 스마트폰에서 볼 영상은 720p 정도만 되면 화질의 열화는 거의 못 느끼고, TV에서 볼 영상이면 1080p 이상을 선택하면 된다.
4. Tartube (윈도우와 우분투 지원)
Youtube-dl의 GUI front end 중에서 최근까지 활발하게 업데이트하고 있는 Tarbube를 설명합니다. Tartube는 홈페이지에 의하면 Youtube에서 각각 영상 뿐 아니라 Play 리스트에 있는 파일도 같이 다운로드 받을 수 있다고 합니다. 실제로 테스트 해보니 에러가 발생합니다.
다운로드는 SourceForge 사이트에서 install-tartube-2.2.007-64bit.exe 받아서 설치할 수 있습니다. 리눅스에서 deb 패키지를 다운로드 받아서 설치 가능합니다. 윈도우 버전의 Tartube은 cygwin기반으로 파이썬으로 작성된 코드를 설치 완료 후 처음 실행 시 youtube-dl과 ffmpeg을 자동으로 설치합니다.
Tartube 실행 상태에서 Classic Mode를 사용하면 youtube-dl-gui와 동일한 UX를 가지고 있습니다. Automatic copy & paste 기능을 활성화하면 유튜브 사이트에서 URL을 복사하면 자동으로 Tartube로 등록되어 편리하게 사용할 수 있습니다.
또한 기존에 youtube-dl-gui에서는 에러가 발생한 동영상도 에러 없이 다운로드가 잘됩니다. 주의해야 할 점은 동영상 URL에 list를 포함하고 있으면 에러가 발생하니 list부분은 삭제하고 다운로드 하시면 잘 동작합니다.
5. Youtube dl DMCA Shutdown
(2020년 10월 25일) 현재 Youtube-dl 이 DMCA (Digital Millennium Copyright Act, DMCA)으로 Git hub가 내려갔습니다. GitHub링크 Git Hub에서는 해당 문제가 해결되기 전까지는 소스 코드를 받을 수 없고, 중국판 Git Hub인 Gitea 에서 미러링하고 있고, 소스 코드와 Release bin은 Youtube-dl 공식 사이트에서 배포하고 있다.
6. youtube-dl is back
Youtube-dl 공식 사이트에 의하면 2020년 11월 17일 DMCA shut down이 풀렸다고 합니다. RIAA 에서 주장한 DRM 우회 기술이 사실 관계와 부합하지 않아서 철회된 것이라 합니다. youtube-dl과 같은 오픈 소스는 계속 유지되어야 합니다.
참고 블로그: github.blog/2020-11-16-standing-up-for-developers-youtube-dl-is-back/
7. Youtube 다운로드하기 가장 쉬운 Tool: 4K Video Downloader
4K Video Downloader는 youtube-dl 기반으로 개발된 Tool은 아니지만, 무료로 사용가능하고 UX가 직관적이라 쉽게 사용할 수 있어 내용을 추가합니다. 세부 내용은 아래 링크를 참조해주세요.
[개발환경/Tips] - 초보자도 쉽게 사용할 수 있는 Youtube 동영상/음악 다운로드 Tool: 4K Video Downloader
주요 기능 요약하면 다음과 같습니다.
- 동영상 URL을 Copy 하고 4K Video Downloader에서 링크 복사(Paste)
- 콘텐츠에 따라서 저해상(144p)에서 고해상도(4K)까지 선택해서 다운로드 가능
- 자막 다운로드 (콘텐츠가 자막을 지원하는 경우임)
<관련 글>
[개발환경 만들기] 13. Youtube 동영상 다운로드 방법
[개발환경 만들기] 11. MediaInfo로 동영상 정보 파악하기
[개발환경 만들기] 10. Ubuntu에서 Microsoft 365 '무료'로 사용하기
[개발환경 만들기][Tips] Ubuntu 20.04 키 모음 잠금 풀기 (부팅 후에 표시하지 않도록 수정하기)
[개발환경 만들기] 8. Ubuntu 테마 설치 (맥분투 만들기)
[개발환경 만들기][Tips] 우분투 단축키 (화면 캡쳐, 화면 녹화)
[개발환경 만들기] 7. Ubuntu에 Microsoft Office 설치하기 #1
[개발환경 만들기] 6. WSL 2.0 설치 방법 및 기능 확인
[개발환경/Tips] - 네이버 동영상 다운로드 방법 (동영상과 설명 포함)
댓글