Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

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

Offen
#2,366 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

@richiemcilroy arbeitet bereits daran.

Seit 14.10.2026.

  • #2566 von @richiemcilroy — offen

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
32/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Aktiv
Tech-Stack
macos, rust, tauri

Rechercherichtung

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.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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
Vorherrschende Sprache
Rust
Sterne
23.4k
Forks
2.1k
Ø Merge
1 T. 18 Std.
Gemergte PRs (30 T.)
252

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus CapSoftware/Cap

Alle Issues in CapSoftware/Cap

Ähnliche Issues

Weitere Issues zu Rust

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.