프로젝트 소개

Gondola는 오래된 노트북, Raspberry Pi, Orange Pi PC, Mac Mini와 같은 저사양 하드웨어에서 실행되도록 설계된 자체 호스팅 미디어 서버입니다. 실시간 트랜스코딩 대신 FFmpeg를 사용하여 미디어를 HLS 세그먼트로 사전 처리한 다음 Nginx 또는 간단한 Go 파일 서버와 같은 웹 서버를 통해 결과를 제공합니다. 이 접근 방식은 CPU와 발열을 낮게 유지하고, 팬리스 작동을 가능하게 하며, 각 짧은 세그먼트가 별도의 파일이므로 재생 시 탐색이 가능합니다. 작업 흐름: 사용자는 소스 파일(예: VOB 립)을 감시 중인 New/Movies 또는 New/TV 폴더에 넣습니다. Gondola는 lsof로 열린 파일 핸들을 확인하여 업로드 완료를 감지한 다음 미디어를 변환하고, 파일 이름 규칙을 기반으로 TMDB에서 메타데이터를 조회하며, 변환 후 소스 파일을 제거합니다. 파일 이름에는 디인터레이싱, 스케일링, 크롭, 레터박스 처리와 같은 옵션을 인코딩할 수 있습니다. TV 에피소드는 SxxEyy 패턴으로 일치시키거나 에피소드 이름에서 추측할 수 있으며, 불확실한 일치 항목에 대해서는 확인 단계가 있습니다. README에는 Orange Pi PC, Ubuntu 노트북, Mac Mini에서의 설치가 문서화되어 있으며, systemd 또는 launchd를 사용한 서비스 설정, Nginx 구성, 외장 드라이브 마운트, Go 툴체인 설정이 포함됩니다. 저전력 보드에서는 트랜스코딩이 느리므로, 의도된 사용 사례는 자주 시청하는 디스크, 특히 어린이 영화를 백업하는 것입니다. 구성은 TOML을 사용하여 ~/.gondola에 있으며, 데이터 루트 옵션과 HLS 변환을 건너뛰는 디버그 플래그가 있습니다.