프로젝트 소개
bili-subtitle은 Bilibili 비디오 페이지에서 CC 및 AI 자막을 자동으로 추출하는 단일 파일 userscript입니다. 다중 전략 폴백(fallback) 메커니즘을 채택하여, 우선 WBI 서명 API를 시도하고 실패 시 신버전 Protobuf 인터페이스를 사용하며, 마지막으로 플레이어에 이미 로드된 리소스를 캡처합니다. 모든 자막 트랙은 비디오 컨텍스트(bvid:cid)에 바인딩되고 신뢰도 순으로 정렬되어, 올바른 소속의 자막만 표시되도록 보장합니다. 스크립트는 Cookie를 읽지 않고, 오디오/비디오를 다운로드하지 않으며, ASR을 호출하지 않고, 어떠한 데이터 업로드나 분석도 수행하지 않습니다. 순수 텍스트 복사, 타임라인 포함 텍스트, 그리고 TXT, SRT, JSON 내보내기를 지원합니다. 설치가 간단하여 Tampermonkey 또는 Violentmonkey만 있으면 되며, '자막' 버튼을 클릭하여 추출을 실행할 수 있습니다. 패널에서는 각 전략의 실행 상태와 최종 선택된 전략을 포함한 상세 진단 정보를 제공합니다. 설계 목표는 제로 설정, 높은 탄력성, 작은 크기로, Bilibili 인터페이스의 빈번한 변경에 대응하기 위해 만들어졌습니다. 프로젝트는 72개의 유닛 테스트를 통해 WBI 서명 알고리즘, 비디오 간 자막 오류 방지 메커니즘 및 실제 브라우저 추출 능력을 검증했습니다. 애니메이션 페이지, 모바일 기기 또는 국제 사이트는 지원하지 않습니다. 문제 해결 가이드는 403/404, 빈 트랙, 미로그인 등 일반적인 문제를 다룹니다. 개발 의존성은 최소화되었으며, 빌드와 테스트가 분리되어 구조가 명확합니다. 여러 오픈소스 프로젝트의 기술적 영감을 받았으나 코드는 독립적으로 구현되었습니다. 비공식 프로젝트이며, 현재 사용자가 접근 가능한 자막 내용만 처리합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.