Skip to content

feat(capture): dynamic source-level mic capture - #30

Merged
odsod merged 1 commit into
mainfrom
odsod/push-komtvpronuvo
Aug 6, 2026
Merged

feat(capture): dynamic source-level mic capture#30
odsod merged 1 commit into
mainfrom
odsod/push-komtvpronuvo

Conversation

@odsod

@odsod odsod commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replace single-mic tracking (default source only) with multi-source discovery, mirroring how sink capture already works
  • Adds ListSources to the parec protocol client, filtering out sink monitors via monitor_source field
  • Fixes Bluetooth headset mic not being captured when exposed as a PipeWire Filter rather than the default source

Test plan

  • mise run build passes (lint, test, tidy, goreleaser)
  • Verified live: recorder now captures from Bluetooth Px8 mic (micRms ~0.05 vs previous 0.0004)

@odsod
odsod force-pushed the odsod/push-komtvpronuvo branch 2 times, most recently from 9d41429 to 42dfb24 Compare August 6, 2026 07:48
Replace single-mic tracking (default source only) with multi-source
discovery mirroring how sink capture works.

- Add ListSources to parec protocol client (filters out sink monitors)
- Replace single mic/micName fields with mics map[string]*reader
- reconcileMics discovers and captures all input sources dynamically
- Fixes Bluetooth headset mic not being captured when it's exposed as
  a PipeWire Filter rather than the default source
@odsod
odsod force-pushed the odsod/push-komtvpronuvo branch from 42dfb24 to 3043f1f Compare August 6, 2026 07:49
@odsod
odsod merged commit bb32130 into main Aug 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant