ytsurf: 터미널에서 유튜브 영상 시청하기
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
터미널을 주로 사용하는 개발자, 생산성을 극대화하고자 하는 기술 애호가
핵심 요약
- 간편한 터미널 내 유튜브 검색 :
yt-dlp
와fzf
를 활용한 빠른 검색 및 상호작용 인터페이스 제공 - 캐싱 기능으로 반복 검색 최적화 : 10분 간격의 캐싱으로 반복 쿼리 시 응답 시간 단축
- 경량하고 효율적인 디자인 :
chafa
와mpv
를 사용한 터미널 내 썸네일 표시 및 영상 재생
섹션별 세부 요약
1. 문제 해결 목적
- 터미널 작업 중 브라우저로의 전환으로 인한 생산성 저하 방지
- 유튜브 추천 알고리즘과 브라우저 UI의 방해 요소 제거
yt-dlp
와jq
를 통한 빠른 검색 및 결과 파싱
2. 핵심 기능
- 라이트닝 퀵 검색 : 터미널 내
yt-dlp
로 실시간 검색 - 인터랙티브 선택 :
fzf
와chafa
를 활용한 썸네일 기반 선택 인터페이스 - 스마트 캐싱 : 10분 간격의 캐싱으로 반복 검색 시 성능 향상
- 영화 재생 : 선택한 영상은
mpv
로 즉시 재생
3. 기술적 구현
yt-dlp
로 영상 정보 및 메타데이터 수집jq
로 JSON 응답 파싱 및 포맷팅chafa
로 썸네일 URL을 터미널에 표시mpv
로 영상 재생- 파일 타임스탬프 기반의 간단한 캐싱 시스템
4. 설치 및 사용 방법
- AUR 패키지(
ytsurf
) 또는 직접 설치(curl
및chmod
사용) - 명령어 예시:
ytsurf "javascript async await tutorial"
- 무인 모드 실행:
ytsurf
5. 장점
- 경량한 디자인 : 기존 시스템 도구만 사용, 중량 의존성 없음
- 대역폭 효율성 : 보기만 한 결과의 썸네일 다운로드
- 메모리 절약 : 브라우저 탭에 비해 낮은 리소스 사용
6. 향후 개선 계획
- 플레이리스트 지원
- 재생 기록 추적
mpv
커스터마이징- 다른 동영상 플랫폼 연동
결론
yt-dlp
,fzf
,chafa
,mpv
와 같은 기존 도구를 활용한 경량 터미널 인터페이스로, 개발자의 생산성을 극대화함- 오픈소스이며, GitHub(
Stan-breaks/ytsurf
)에서 확인 가능 - 터미널 기반 작업에 적합한 도구로, 유튜브 영상 시청 시 브라우저 전환을 줄이는 실용적인 솔루션