타임머신 강제 활성화 기능 추가 및 README 작성
- timemachine.js: live-detail 응답을 fetch 후킹으로 가로채 timeMachineActive 를 true 로 만들고, live-playback-json 의 DVR 매니페스트로 livePlaybackJson 을 교체해 되감기 UI 와 실제 seek 동작을 살린다. 스트리머가 타임머신을 꺼둔 라이브에서도 동작. - manifest.json: timemachine.js 를 content_scripts 에 추가하고 버전을 1.1.0 으로 올림. name/description 을 다기능에 맞게 갱신. - popup.html: 타임머신 강제 활성화 상태 표시 항목 추가. - README.md: 기능 설명, 설치 방법, 동작 확인 로그, 면책 명시.
This commit is contained in:
70
README.md
Normal file
70
README.md
Normal file
@@ -0,0 +1,70 @@
|
||||
# Chzzk Bypass
|
||||
|
||||
치지직(CHZZK) 시청 환경을 개선하는 Chrome / Edge / Whale 용 확장 프로그램 (Manifest V3).
|
||||
|
||||
## 기능
|
||||
|
||||
### 1. 그리드 우회 (1080p 시청)
|
||||
|
||||
`navigator.userAgent`, `navigator.platform`, `navigator.userAgentData` 를 Mac 으로
|
||||
위장해, 치지직이 윈도우에서 1080p 시청 시 요구하는 그리드(Grid) 설치 없이 1080p
|
||||
화질을 시청할 수 있게 합니다.
|
||||
|
||||
구현: `content.js`
|
||||
|
||||
### 2. 타임머신 강제 활성화 (되감기 UI)
|
||||
|
||||
스트리머가 타임머신을 끄고 방송 중이어도 플레이어에 되감기 (seek) 바 UI 를
|
||||
띄웁니다. 가능하면 DVR 가능한 HLS 매니페스트까지 함께 갈아끼워 실제 되감기
|
||||
동작도 살립니다.
|
||||
|
||||
동작 방식:
|
||||
|
||||
1. `api.chzzk.naver.com/service/vN/channels/{id}/live-detail` 응답을 `fetch`
|
||||
후킹으로 가로챕니다.
|
||||
2. `content.timeMachineActive` 플래그를 강제로 `true` 로 만듭니다 → 플레이어
|
||||
UI 가 되감기 바를 노출합니다.
|
||||
3. 같은 채널의 `…/channels/{id}/live-playback-json` 을 호출해 DVR 매니페스트
|
||||
문자열을 받아 `content.livePlaybackJson` 을 교체합니다 → 매니페스트가 실제
|
||||
seek 을 지원하게 됩니다.
|
||||
|
||||
이는 [Choonholic/ChzzkDownloader](https://github.com/Choonholic/ChzzkDownloader)
|
||||
의 `--stream force-timemachine` 옵션이 사용하는 것과 같은 엔드포인트입니다.
|
||||
관련 글: [blog.choonholic.com/archives/3216](https://blog.choonholic.com/archives/3216)
|
||||
|
||||
구현: `timemachine.js`
|
||||
|
||||
> 주의: 타임머신 매니페스트가 보유한 되감기 가능 길이는 CDN 측 윈도우에
|
||||
> 의존하므로, 강제로 활성화했다 하더라도 무한정 과거로 되감을 수 있는 것은
|
||||
> 아닙니다.
|
||||
|
||||
## 설치
|
||||
|
||||
1. 이 저장소를 `git clone` 또는 ZIP 다운로드해 임의의 폴더에 둡니다.
|
||||
2. Chrome 계열 브라우저에서 `chrome://extensions` 접속.
|
||||
3. 우상단 **개발자 모드** 활성화.
|
||||
4. **압축해제된 확장 프로그램을 로드합니다** 클릭 → 위 폴더 선택.
|
||||
5. 치지직(`https://chzzk.naver.com`) 새로고침.
|
||||
|
||||
## 파일 구조
|
||||
|
||||
```
|
||||
manifest.json 확장 정의 (MV3)
|
||||
content.js 그리드 우회 (UA / platform / UA-CH 위장)
|
||||
timemachine.js 타임머신 강제 활성화 (fetch 후킹)
|
||||
popup.html/css/js 툴바 팝업
|
||||
icons/ 확장 아이콘
|
||||
```
|
||||
|
||||
## 동작 확인
|
||||
|
||||
브라우저 devtools 콘솔에서 다음 로그를 확인할 수 있습니다.
|
||||
|
||||
- `[chzzk-bypass:timemachine] fetch hook installed` — 후킹 성공
|
||||
- `[chzzk-bypass:timemachine] forcing timeMachine ON for <channelId>` — 패치 적용
|
||||
- `[chzzk-bypass:timemachine] livePlaybackJson swapped for DVR manifest` — 매니페스트 교체 성공
|
||||
|
||||
## 면책
|
||||
|
||||
본 확장은 학습 및 개인 사용 목적의 우회 도구입니다. 사용에 따른 모든 책임은
|
||||
사용자에게 있으며, 치지직 약관 및 관련 법령을 준수하여 사용하시기 바랍니다.
|
||||
Reference in New Issue
Block a user