Skip to content

setting audiosession to auto instead of playback to get mic working - #71

Closed
jddocea wants to merge 2 commits into
ShowPilotFPP:mainfrom
jddocea:ios-fix-mic
Closed

jddocea wants to merge 2 commits into
ShowPilotFPP:mainfrom
jddocea:ios-fix-mic

Conversation

@jddocea

@jddocea jddocea commented Nov 13, 2026 •

Copy link
Copy Markdown

Mic did not work on ios iphone safari

Error message: audiosession category is not compatible with audio capture

I believe setting it to play-and-record will allow the mic to be used

Copy link
Copy Markdown
Owner

Thanks @jddocea, you found the right problem. On iPhone, the player sets the audio session to playback (that's what lets the music play with the mute switch on), and iOS Safari won't open the microphone while it's in that mode. That's where the "not compatible with audio capture" error comes from.

I didn't merge this as-is, though. The PR changes all four places that set the mode, and that causes two problems:

  • Every iPhone listener would run in record mode the whole time, including people who never touch the mic. On iOS that mode can send sound to the earpiece or make it quieter, and we've seen it leave the player silent before.
  • Two of those lines are the reset. After a measurement finishes or fails, ltDetect() sets the mode back to playback. With the PR, those lines would set record mode again instead, so the phone would never go back.

So the fix in #72 keeps your idea but changes only one place: ltGetMic() switches to play-and-record right before it asks for the mic, and the existing reset puts it back to playback once the measurement finishes or fails. Everyday listening stays exactly as it was.

It's going out as v0.33.280-beta.4 on the beta channel. You're credited as co-author on the commit and in the changelog. If you can, please test "Detect my delay" on your iPhone with the beta and let us know how it goes. I'll close this PR once that ships. Thanks again for tracking it down!


Generated by Claude Code

ShowPilotFPP pushed a commit that referenced this pull request Nov 13, 2026
…rophone again

- Bug fix: On iPhone Safari, "Detect my delay" in the player's timing settings failed with "audio session category is not compatible with audio capture". The player now switches iPhone audio into record-capable mode only while the microphone is measuring, then back to normal playback, so everyday listening is unchanged.

Main only (audio).

Source: #71

Co-authored-by: jddocea <jddocea@gmail.com>

---
_Generated by [Claude Code](https://claude.ai/code/session_01PJcoKLr2bhdUTsNw524TXK)_
@github-actions

Copy link
Copy Markdown

Shipped in v0.33.280-beta.4 (via #72). Thank you for the contribution!

@github-actions github-actions Bot closed this Nov 13, 2026
ShowPilotFPP pushed a commit that referenced this pull request Nov 13, 2026
- Feature update: The "Detect my delay" microphone button is no longer shown in the player's Audio timing settings. It couldn't work on Android phones, so it's turned off everywhere for now. The manual timing buttons, slider and presets are unchanged.
- Bug fix: On iPhone Safari, the microphone timing check failed with "audio session category is not compatible with audio capture". The fix is in place for if the button comes back, and only affects the moment the microphone is in use.
- Bug fix: On the Master channel, the Updates page showed the last release's notes as "Recent updates" even after you'd installed newer Master updates. It now starts with the Master updates you have since the last release, then the earlier releases.
- Feature update: On the Updates page, earlier releases are now folded behind a "Show earlier updates" button, so only your current version's notes show until you ask for more.

Main only (audio).

Source: #71

Co-authored-by: jddocea <jddocea@gmail.com>

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01PJcoKLr2bhdUTsNw524TXK
ShowPilotFPP pushed a commit that referenced this pull request Nov 13, 2026
- Feature update: The "Detect my delay" microphone button is no longer shown in the player's Audio timing settings. It couldn't work on Android phones, so it's turned off everywhere for now. The manual timing buttons, slider and presets are unchanged.
- Bug fix: On iPhone Safari, the microphone timing check failed with "audio session category is not compatible with audio capture". The fix is in place for if the button comes back, and only affects the moment the microphone is in use.
- Bug fix: On the Master channel, the Updates page showed the last release's notes as "Recent updates" even after you'd installed newer Master updates. It now starts with the Master updates you have since the last release, then the earlier releases.
- Feature update: On the Updates page, earlier releases are now folded behind a "Show earlier updates" button, so only your current version's notes show until you ask for more.

Main only (audio).

Source: #71

Co-authored-by: jddocea <jddocea@gmail.com>

https://claude.ai/code/session_01PJcoKLr2bhdUTsNw524TXK

---
_Generated by [Claude Code](https://claude.ai/code)_
@github-actions

Copy link
Copy Markdown

Shipped in v0.33.282 (via #73). Thank you for the contribution!

ShowPilotFPP pushed a commit that referenced this pull request Nov 13, 2026
- Bug fix: On iPhone Safari, the "Measure sync" and "Compare devices" microphone tools (shown when Settings → Debug → Microphone sync measurement is on) failed with "AudioSession category is not compatible with audio capture". They now switch iPhone audio into record-capable mode only while measuring, then back to normal playback. Computers and Android phones are unchanged.

Main only (audio).

Source: #71

---
_Generated by [Claude Code](https://claude.ai/code/session_01PJcoKLr2bhdUTsNw524TXK)_
@github-actions

Copy link
Copy Markdown

Shipped in v0.33.283 (via #74). Thank you for the contribution!

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.

2 participants