Repository navigation
Support Bilibili subtitles (including AI-generated Chinese captions) in browser-only mode #533
Description
Problem
In the Chrome extension, YouTube summarization works in Direct AI + Browser media mode, but Bilibili video summarization repeatedly fails even when the Bilibili player can display AI-generated Chinese subtitles.
The AI provider connection works through a local OpenAI-compatible endpoint (CLIProxyAPI). The failure appears to occur during content acquisition, before a usable video transcript is available; this is an observation, not a confirmed root cause.
Observed behavior
- Open a Bilibili video whose player offers AI-generated Chinese subtitles.
- Use the extension with AI connection set to Direct and media runtime set to Browser (no Summarize daemon).
- Request a video summary.
- The extension reports:
独立模式下无法转录此媒体:The active media source is not fetchable outside the page。请在“运行环境”中选择“守护进程”以支持更多媒体格式。
Browser capture still produces six slide images, but no transcript or OCR text is available. Summarizing page text only does not provide the video's spoken content.
Relevant diagnostic fields from the extension logs:
extractor.try: extractor=url-daemon matched=false
extractor.route.fail: reason=no-extractor-result
slides:payload:applied: slides=6 sourceKind=browser-capture slideRuntime=browser transcriptAvailable=false ocrAvailable=false
slides:text:rebuilt: slides=6 descriptions=6 summaries=0 titles=0 transcriptAvailable=false ocrAvailable=false textMode=transcript source=none
YouTube summaries work in the same setup; a timestamped transcript is available on the tested YouTube page. The exact successful extraction route was not independently verified.
Requested improvement
- Add or improve Bilibili-specific retrieval of existing subtitles, including AI-generated Chinese captions, preferably within the active browser session and without requiring audio retranscription.
- Preserve timestamps and select the current video part where applicable.
- Prefer retrieved subtitle text for summaries and follow-up chat; use audio transcription only as a fallback.
- Distinguish unavailable/unreadable subtitles from inaccessible media sources in diagnostics, and clarify when the limitation is browser-only support versus a login/permission requirement.
- Clearly indicate when only title/description/page text is available so it cannot be mistaken for a full video summary.
Scope and missing reproduction details
This request concerns Bilibili browser-mode support, not a claim that all Chinese websites fail. Daemon mode has not been tested. Exact extension/Chrome versions and a public Bilibili reproduction URL have not yet been recorded, so this is submitted as a feature/support request rather than a fully isolated regression report.
If existing Bilibili subtitle support requires a particular setting or permission, documentation of that setup would also help.
Activity
clawsweeper commentedon Oct 20, 2026
Codex review: this still needs some work.
Summary
This issue remains necessary because main lacks Bilibili browser-caption retrieval, and an open implementation already owns the work.
Reproducibility: Current source establishes the missing Bilibili caption route and matching generic-media error; the discussion supplies a captioned fixture and reported retrieval, but this review performed no live browser reproduction.
Root-cause cluster
Relationship:
canonicalCanonical: #533
Summary: This issue owns the browser-caption request, with an open implementation candidate and separate CLI and YouTube-chat work.
Members:
fixed_by_candidate: feat(extension): read Bilibili captions from the active tab #542 - Proposes active-tab Bilibili caption retrieval and summary/chat integration but remains unmerged.adjacent_distinct: feat: support explicit Bilibili CLI transcripts #541 - Adds CLI audio download/transcription rather than browser-session caption retrieval.adjacent_distinct: Direct + Browser mode: YouTube follow-up chat falls back to missing daemon despite an existing summary #537 - Addresses YouTube follow-up chat falling back to an absent daemon.Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything.
Maintainer decision needed
Next step
Review #542 and decide its routing, language defaults, and initial inventory coverage before resolving this issue.
Review details
Best possible solution:
Provide session-local caption-first extraction with part identity, timestamps, provenance, and clear in-product Page recovery when captions are unavailable.
Do we have a high-confidence way to reproduce the issue?
Current source establishes the missing Bilibili caption route and matching generic-media error; the discussion supplies a captioned fixture and reported retrieval, but this review performed no live browser reproduction.
Is this the best way to solve the issue?
Retrieving existing captions inside the active session directly addresses the request, and the existing browser candidate fits the preparation pipeline; the CLI workaround does not fulfill browser-only support.
AGENTS.md: found and applied where relevant.
Remaining risk / open question:
Codex review notes: model internal, reasoning medium; reviewed against 72d28de39fa5.
Label changes
Label changes:
No label changes.
Label justifications:
P2: This is a concrete site-specific capability request with an existing implementation candidate and no established urgent regression.impact:ux-friction: Captioned videos encounter generic media errors or page-only content, and Page selection cannot supply their spoken content.Evidence reviewed
What I checked:
apps/chrome-extension/src/lib/media-extraction-plan.ts:20, 72d28de39fa5)apps/chrome-extension/src/entrypoints/background/browser-local-transcript.ts:44, 72d28de39fa5)tests/chrome.media-extraction-plan.test.ts:5, 72d28de39fa5)Likely related people:
apps/chrome-extension/src/lib/media-extraction-plan.ts)How this review workflow works
@clawsweeper re-reviewcomments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.@clawsweeper re-reviewor@clawsweeper re-runon an open PR or issue to request a fresh review only.@clawsweeper reviewto request a fresh review only.@clawsweeper explainto ask for more context, or@clawsweeper stopto stop active automation.Reviewed October 27, 2026, 10:34 AM ET / 14:34 UTC.
55 remaining items