Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Macos: Recording pipeline repeatedly stalls for 5–22 s (whole process), causing ~10% video loss and multi-second audio gaps

Aperta
#2,366 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
32/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Attiva
Stack tecnologico
macos, rust, tauri

Direzione di ricerca

Start with the attached cap-desktop.log and correlate the process-wide silent windows with video, microphone, and system-audio events. Trace the recording pipeline and shared runtime for the suspected blocking I/O and investigate the VideoToolbox, warning, and upload-state observations separately. Done means reproducing or isolating the stall cause and defining scoped fixes with tests or log evidence for the affected behaviors.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug
Description

38.5-minute recording (14:01:52 → 14:40:24 UTC). During it, the pipeline froze 16 times:

  • Video: 16 Wall-clock-confirmed forward jump events, total_forward_skew_secs="222.033" (~10% of the recording missing)
  • Mic: 6 silence insertions, total_silence_ms=64429
  • System audio: 172 silence insertions, total_silence_ms=69615, plus dropping frames due to full channel

Evidence that the whole process stalls, not just capture
The periodic memory snapshot normally fires at :25 every minute. During the stalls it fires late:

  • 14:06:32 (+6.4 s), 14:19:37 (+12 s), 14:21:42 (+16.5 s), 14:28:32 (+6.5 s)

There are also windows with no log lines at all from any thread:

  • 14:13:57.7 → 14:14:22.2 (24.5 s)
  • 14:15:57.4 → 14:16:20.1 (22.6 s)
  • 14:19:15.3 → 14:19:37.9 (22.6 s)
  • 14:21:17.9 → 14:21:42.4 (24.5 s)
  • 14:28:07.8 → 14:28:32.4 (24.6 s)

Mic and system-audio drops happen exactly in these windows: the sources keep producing data, but consumers are not draining the channels.

Suspicious pattern
The longest video gaps are almost identical: 21.33, 21.35, 21.47, 21.23, 21.44, 21.77 s. This looks like a fixed timeout somewhere rather than random I/O latency.

Hypothesis (unverified)
Blocking file I/O on the shared async runtime. If the output volume (an SD card here) has a write-latency spike, all runtime workers block, including the muxers and timers. A recorder should absorb storage hiccups with buffering instead of dropping audio.

Other observations from the same log

  • VideoToolbox zero-copy input unavailable ... scaling 4112x2658 -> 4096x2648 requires the software input path, but the encoder is then initialized at 4112×2658. These messages contradict each other, and the software path adds load for no apparent reason.
  • System audio dropping frames WARN is re-logged every 5 s even when the dropped counter does not change, producing hundreds of redundant warnings.
  • At recording start: Recording upload state could not be read; files retained error=No such file or directory (state is read before it is created).

Full log attached- cap-desktop.log

Additional Context
  • Cap version: 0.6.0
  • Operating system, version: 26.2 (25C56)
  • Device (optional): MacBook Pro M1 Pro, 16 GB RAM
Lingua principale
Rust
Stelle
22.8k
Fork
2k
Merge medio
10h 44m
PR unite (30g)
88

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di CapSoftware/Cap

Tutte le issue di CapSoftware/Cap

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.