|
Some checks are pending
Backend tests / test (push) Waiting to run
Second JAV vertical source (origin tube:vjav, gated to JAV tab via JAV_ORIGINS). Browse: SPA has no server-rendered listing, so id-walk over sitemap_vids (newest = highest video id) feeding the rich JSON metadata API (/api/json/video/1/<floor>/<id>/<id>.json): title, duration, post_date, channel->studio, models->performers, categories+tags. Stream: videofile.php returns video_url in two obfuscation layers, Cyrillic homoglyphs (M/C/A/E) over a custom base64 alphabet (comma->slash, tilde->pad, dash->plus). Decoded get_file is absolute (old shared-txxx videos) or relative (new vjav-infra, prepend host); adding f=video.m3u8 yields a portable, time-bound ahcdn HLS (referer=none whitelisted, not IP-bound). Returned as m3u8 + mobile_direct_ok so playback routes it through /proxy/hls: manifest passthrough, segments direct from the phone (verified 206 cross-IP, 0 VPS video bandwidth). Backend-only, no mobile change (JAV tab + jav param already shipped). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| api | ||
| connectors | ||
| enrich | ||
| extractors | ||
| models | ||
| normalize | ||
| resolve | ||
| scheduler | ||
| templates | ||
| __init__.py | ||
| auth.py | ||
| config.py | ||
| db.py | ||
| ingest.py | ||
| main.py | ||