프로젝트 소개

HandBrake Web는 헤드レス 장치에서 HandBrake를 사용하기 위한 웹 기반 인터페이스를 제공합니다. 공식 HandBrake 프로젝트와 독립적이며, 내부적으로 HandBrakeCLI를 사용합니다. 이 애플리케이션은 두 가지 구성 요소를 가집니다. 서버는 웹 클라이언트를 제공하고 워커를 조정하며, README는 저전력 장치에도 충분히 가벼운 것으로 설명되어 있습니다. 워커는 서버에서 작업을 수신하고 HandBrakeCLI를 사용하여 실제 미디어 트랜스코딩을 수행합니다. 이는 CPU 집약적이므로 한 기계에 워커 하나를 권장합니다. 여러 워커가 같은 서버에 연결하여 공유 분산 큐를 처리할 수 있습니다. 배포는 Docker 및 Docker Compose를 기준으로 설명되어 있으며, 별도의 서버 및 워커 컨테이너 이미지를 가집니다. 미디어 볼륨은 컨테이너 간 일관된 경로를 사용해야 합니다. 구성에는 워커 ID, 서버 URL, 서버 포트가 포함되며, 하드웨어 액세스를 위한 추가 설정은 프로젝트 위키에 설명되어 있습니다. 현재 기능에는 브라우저 인터페이스, 순서대로 정렬된 작업 큐 관리, 디렉토리 내 비디오를 위한 대량 작업 생성, 업로드된 HandBrake 프리셋 관리, 설정된 기준으로 자동으로 작업을 생성하는 디렉토리 감시자, 그리고 여러 노드에 걸쳐 분산 인코딩이 포함됩니다. 프리셋은 현재 HandBrake 데스크탑 애플리케이션에서 생성되며, JSON 파일로 내보낸 후 웹 인터페이스를 통해 업로드됩니다. 하드웨어 가속 인코딩은 Intel QSV 및 NVIDIA NVENC에 대해 설명되어 있습니다. AMD VCN 지원, 브라우저 내 프리셋 생성, 브라우저 파일 업로드, 필수 사용자 로그인 세션은 계획되었지만 구현되지 않은 상태로 나와 있습니다. 이 프로젝트는 활발한 개발 중으로 설명되어 있습니다. 별도로 최소 HandBrakeCLI 컨테이너 이미지가 직접 명령행 사용을 위해 게시되어 있습니다.