테크레시피

유튜브 영상 다운로드 가능한 오픈소스 도구 개발한 이유

유튜브 같은 동영상 사이트에서 동영상을 내려 받거나 오디오를 추출할 수 있게 해주는 유튜브-dl(youtube-dl)은 오픈소스 개발 프로그램으로 깃허브 프로젝트를 호스팅하고 있었다. 하지만 디지털 밀레니얼 저작권법 DMCA 위반이라며 전미레코드협회 RIAA가 요청을 하면서 유튜브-dl 저장소가 깃허브에서 통째로 삭제되며 논란을 일으킨 바 있다. 이런 가운데 유튜브-dl 창조자인 리카르도 가르시아(Ricardo García)가 유튜브-dl 을 개발한 경위에 대해 자신의 블로그에 설명해 눈길을 끈다.

2000년대 초반 가르시아는 스페인 아빌레스 시에서 5∼10km 가량 떨어진 마을에 살았다. 아빌레스 시내는 인터넷 인프라가 잘 갖춰져 있고 광회선과 ADSL 인터넷을 쓸 수 있었다. 하지만 그가 살던 마을은 인프라가 빈약했다. 더구나 마을에서 구리 도난 사건이 다수 일어나 전화 회사 회선은 빈약한 저품질 상태를 개선하지 않고 방치했다. 결과적으로 가르시아는 통신 속도가 초당 몇KB에 불과한 전화선 연결로 인터넷 사용을 했던 것.

그러던 중 2006년 경부터 쉽게 동영상을 온라인으로 볼 수 있는 유튜브가 인기를 누리게 됐다. 하지만 가르시아의 인터넷 접속 환경에선 10MB 가량 짧은 동영상도 다운로드까지 40분 가량이 소요되기 때문에 스트리밍은 아예 불가능했다.

따라서 그는 유튜브에 올라온 동영상을 로컬에 저장할 방법을 검토하게 됐다는 것. 당시부터 이미 유튜브에서 동영상을 내려 받는 방법은 있었지만 가르시아의 환경에선 모두 작동하지 않았기 때문에 직접 도루 개발을 생각하게 됐다고 한다. 이게 유튜브-dl이 태어난 계기라는 설명이다.

유튜브-dl을 개발할 때 그는 사용자 편의를 최우선으로 삼았다. 유튜브-dl 코드는 이에 따라 표준 라이브러리가 풍부한 파이썬으로 작성햇고 명령 줄 프로그래밍을 해 플랫폼에서 독립적인 도구가 되도록 했다.

유튜브-dl은 유튜브 뿐 아니라 비메오와 페이스북, 라이브릭(LiveLeak), 데일리모션 등 여러 사이트를 지원한다. 물론 초기 버전은 유튜브만 지원하는 간단한 프로그램이엇다. 소스코드 라인 수는 223줄이었지만 실제 코드 행은 143행, 댓글 44줄, 공백 36행이었다. 명칭을 봐도 유튜브-dl로 프로그램 목적을 단적으로 알기 쉽게 표현했다.

가르시아는 개발 이후 몇 년간 리눅스 환경에서 사용하고 있었지만 누군가에게 도움이 될 수 잇다고 보고 2006년 8월 프로그램을 무료 소프트웨어 라이선스로 공개했다. 당시에는 아직 깃허브가 존재하지 않아 그는 인터넷 서비스 제공 업체와 계약할 때 할당된 홈페이지 웹공간에 유튜브-dl 코드를 공개했다.

유튜브-dl 인기는 점점 높아졌고 사용자로부터 감사 이메일이 쏟아졌다. 또 다른 사이트에도 대응해달라는 목소리가 늘자 2008년 프로그램을 처음부터 다시 했고 프로젝트 호스팅 업체도 자가 부담으로 웹공간에 버전 관리 시스템에 머큐리얼(Mercurial)을 이용하는 비트버킷(Bitbucket)으로 전환했다. 또 2010년 11월에는 버전 관리 시스템으로 깃(Git)으로 전환해 깃허브로 바꿨다.

유튜브가 HTML5를 정식 채택하기 전부터 가르시아는 유튜브-dl을 HTML5에 대응할 수 있게 노력을 기울이기도 했다. 하지만 2011년 후반부터 다른 소프트웨어 개발에 집중했고 몇 개월간 유튜브-dl 프로젝트에 관여할 수 없게 되면서 그는 유튜브-dl 관리자를 그만두기로 결심하고 다른 개발팀에 메인테이너 권한을 이행했다. 이에 따라 그는 지금은 유튜브-dl 개발에 관여하지 않는다.

가르시아는 도구로서 유튜브-dl의 목적은 14년 역사 중 거의 변함이 없다는 걸 전하고 싶다면서 유튜브-dl은 인터넷 접속 환경에 덜 축복 받은 곳에서도 리뷰와 보고서, 팟캐스트, 강의 등을 오프라인으로 액세스하는데 유용하다고 강조했다. 관련 내용은 이곳에서 확인할 수 있다.

추천기사