본문으로 건너뛰기

트렌딩 - GitHub 인기 레포 & HuggingFace 모델

guillevc/yubal

Python0 / 0

YouTube Music 음원을 다운로드해 태그·가사·플레이리스트까지 정리하고 자동 동기화하는 self-hosted 도구입니다.

TL;DR

yubal은 YouTube Music 링크를 받아 음원, 메타데이터, 표지, 가사를 정리된 라이브러리로 저장하는 standalone self-hosted 도구입니다. Docker 기반 Web UI에서 트랙·앨범·플레이리스트를 처리하고, 구독한 플레이리스트는 Cron 일정에 따라 동기화하며 중복 트랙은 한 번만 저장합니다. opus, mp3, m4a 출력과 ReplayGain, `.lrc` 가사, 재시도, 취소, CLI, browser extension을 제공해 다운로드 이후의 관리까지 이어집니다. Navidrome과 Jellyfin 연동에는 적합하지만 Gonic에서는 M3U 플레이리스트가 지원되지 않고, 비공개·연령 제한 콘텐츠에는 cookies 설정과 계정 위험을 감수해야 하므로 Docker 기반 개인 음악 서버를 직접 운영하려는 경우에 특히 적합합니다.

핵심 포인트

  • standalone self-hosted 도구로서 YouTube Music URL을 입력하면 음원을 다운로드하고 앨범·아티스트 폴더, 표지 이미지, 메타데이터가 포함된 라이브러리로 정리합니다. Web UI는 실시간 진행률과 작업 큐를 제공하며 모바일 화면에서도 사용할 수 있습니다. Docker Compose로 ghcr.io/guillevc/yubal 이미지를 실행한 뒤 http://localhost:8000에 접속하는 방식이라 homelab 환경에 적합합니다.
  • 플레이리스트를 구독하면 Cron 일정에 따라 새 트랙을 자동으로 동기화하고, 동일한 트랙은 여러 플레이리스트에서 한 번만 저장한 뒤 M3U 파일에서 재사용합니다. 기본 출력 형식은 opus이며 mp3와 m4a도 선택할 수 있고, 직접 다운로드가 불가능하면 transcoding을 수행합니다. 실패 시 자동 재시도와 작업 취소를 지원하고, `.lrc` 가사와 ReplayGain 태그도 생성합니다.
  • Navidrome, Jellyfin, Gonic 같은 media server를 염두에 둔 파일 구조와 태그를 사용해 다운로드 이후의 재생 환경까지 연결합니다. Navidrome은 추가 설정 없이 아티스트 연결과 플레이리스트를 사용할 수 있고, Jellyfin은 비표준 아티스트 태그 옵션을 켜야 합니다. Gonic은 다중 아티스트 환경 변수 설정이 필요하며 M3U 플레이리스트는 지원하지 않습니다.
  • Firefox와 Chrome용 browser extension이 포함되어 YouTube 또는 YouTube Music 페이지를 벗어나지 않고 트랙 다운로드와 플레이리스트 구독을 실행합니다. 터미널에서 다운로드와 메타데이터 조회를 처리하는 CLI도 함께 제공합니다. 다만 age-restricted 콘텐츠, private playlist, Liked Music, Premium quality에는 cookies가 필요하고, README는 cookies 사용이 계정 위험과 stricter rate limiting을 유발할 수 있다고 경고합니다.

이미지 분석

yubal browser extension이 YouTube Music 트랙 정보를 표시하고 Download 버튼으로 음원 저장을 실행하는 화면입니다.
화면에는 yubal 확장 기능의 트랙 뷰가 나타나며 곡명, 아티스트, 앨범 이미지와 Download 동작이 한 패널에 배치되어 있습니다. 하단의 Connected 상태와 v0.1.0 표시는 확장 기능이 yubal 인스턴스와 연결된 상태에서 작업을 전달하는 구조임을 뒷받침합니다.
yubal browser extension이 YouTube Music 플레이리스트의 제목과 64개 트랙 수를 표시하고 Download와 Subscribe를 제공하는 화면입니다.
플레이리스트 뷰에서는 Fall Asleep 플레이리스트와 YouTube Music의 64 tracks 정보가 표시되며 전체 다운로드와 구독을 পৃথ개 실행할 수 있습니다. Subscribe 버튼은 README의 scheduled sync 기능과 연결되어, 브라우저에서 플레이리스트를 등록한 뒤 이후 변경분을 자동 동기화하는 사용 흐름을 뒷받침합니다.

1.5k

STARS

57

FORKS

+204

TRENDING

0

조회수

watchers 1.5kopen issues 37MIT License

관련 토론

아직 관련 토론이 없습니다.

댓글

댓글을 작성하려면 로그인이 필요합니다.