Numeric captions disappear from transcripts and embed subtitles
Maintainer thường phản hồi trong vòng 1 ngày
@AksharP5 đang làm issue này rồi.
Từ ngày 23/10/2026.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- bun, react, typescript
- Lĩnh vực
- frontend, testing-qa
Hướng nghiên cứu
Read the parser in apps/web/app/s/[videoId]/_components/utils/transcript-utils.ts and the parser in apps/web/app/s/[videoId]/_components/tabs/Transcript.tsx; the reproduction command in the issue exercises the production edit helper and embed parser. Check how numeric cue identifiers are distinguished from caption text, then rerun the reproduction and confirm numeric captions remain in the parsed entries. Two open pull requests already address this issue.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
Caption text containing only digits disappears from the web Transcript tab and embed subtitles. An owner can save a correction such as 0 or 007 successfully, then lose that row when the saved transcript reloads. The text is still present in the stored VTT.
Both transcript parsers treat every numeric line as a cue identifier, including a numeric payload after a timing line. The embed player then regenerates its subtitle track from the incomplete parsed entries.
Expected: numeric text remains visible and is preserved in exported and embedded subtitles.
Reproduction
- Open a Cap you own with a completed transcript.
- Change a caption's text to
007and save. - Reload the transcript. The row disappears even though the edit was saved.
The same behavior is reproducible without auth or storage by running the production edit helper and the parser used by the embed player from the repository root:
bun -e 'import { parseVTT } from "./apps/web/app/s/[videoId]/_components/utils/transcript-utils"; import { updateVttEntryText } from "./apps/web/lib/transcript-vtt"; const original = "WEBVTT\n\n1\n00:00:00.000 --> 00:00:01.000\nZero.\n\n"; const saved = updateVttEntryText(original, 1, "0"); console.log({ saved: saved.updated, entries: parseVTT(saved.content) });'
Actual: { saved: true, entries: [] }.
The proposed fix retains { id: 1, timestamp: "00:00", startTime: 0, text: "0" }. A three-cue recording generated by the production caption formatter likewise loses its standalone 2026 cue on main and keeps it with the fix.
Additional Context
- Baseline main:
1965b31796db6da107a8f859ff34397468ae9512. - Linux x86-64, Bun 1.4.1, React 19.2.4. Actual baseline/patched Transcript components were exercised in Chromium with auth/storage hooks replaced by local fixtures. The numeric row is absent before, visible after, and clicking it seeks to the correct 1.5-second position.
- This verifies real parsing, rendering, edit-helper output and subtitle regeneration. It does not claim an authenticated backend write or a newly collected speech-recognition response; the timed-word fixture is synthetic.
- Related open #2416 and #2417 consolidate these parsers but retain the numeric-ID rule. The current #2417 parser at
8341885995171e9e191d88d47ea2ba01d73be7ddwas also executed and still drops a plain numeric cue. This fix may need its condition carried into the shared parser if that refactor lands first.
Affected sources: Transcript parser, embed utility parser.
- Ngôn ngữ chính
- Rust
- Star
- 23.4k
- Fork
- 2.1k
- Merge trung bình
- 1 ngày 20 giờ
- Pull request đã merge (30 ngày)
- 348
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của CapSoftware/Cap
-
Web player intercepts ⌘⇧M and blocks Chrome profile-menu shortcutCó thể đã có người làm @AatmanAJ đã nhận 8 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 80/100
CapSoftware/Cap#2596 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
CapSoftware/Cap#2384 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Dashboard pagination causes full page reloads on self-hosted CapCó thể đã có người làm @Dewin đã nhận 36 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
CapSoftware/Cap#2305 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
CapSoftware/Cap#1714 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Camera-only SDK recordings cannot be saved after their source endsCó thể đã có người làm @AksharP5 đã nhận hôm nay. Đang mở
Độ khó 4/5 1-2 ngày Mức phù hợp với người mới 35/100
CapSoftware/Cap#2970 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của CapSoftware/Cap
Issue tương tự
-
bug: workspace access hint suggests a --subject command that fails for hyphen-leading OIDC subjectsĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
type: bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
`last_error_thread_local_then_global` fails when it runs beside the `lumen_event_detail` testĐang mởA-FFI C-Testing D-Straightforward S-Ready
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 1 ngày
-
docs priority:P3 size:XS
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Appimage ConventionsĐang mởenhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày