Codex desktop dictation fails with 'Unable to determine audio duration' and mic disappears
Codex Desktop Mic / Dictation Bug Report
Created: 2026-07-05 07:02 +05:30
Summary
Codex desktop input composer microphone button intermittently disappears or becomes unavailable after dictation fails. User has to type manually or restart Codex to recover.
Environment
- OS: Windows
- Codex desktop package: OpenAI.Codex_26.623.13972.0_x64__2p2nqsd0c76g0
- Codex desktop app version: 26.623.13972.0
- Codex CLI version after update: codex-cli 0.142.5
- Microphone privacy, global: Allow
- Microphone privacy, Codex app: Allow
- Windows audio services checked: Audiosrv and AudioEndpointBuilder running
Observed Error
Codex desktop logs repeatedly show:
ext
[Composer] dictation failed errorMessage="{\"detail\":\"Unable to determine audio duration\"}"
Recent log evidence:
` ext
C:\Users\Sandeep\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\Codex\Logs\2026\07\05\codex-desktop-f2764540-a915-48b0-b48e-70e476de9020-11812-t0-i1-003522-0.log:270
2026-07-05T01:22:38.923Z error [electron-message-handler] [Composer] dictation failed errorMessage="{\"detail\":\"Unable to determine audio duration\"}" ... use-dictation-B8XKwqLC.js
Same error repeated at lines 271-275.
`
Older recurrence also seen in 2026-06-22 logs, so this is not a one-off.
User Impact
- User relies on the mic in the Codex input box.
- Mic suddenly disappears or becomes unavailable.
- User must type manually or restart Codex.
- This interrupts live work sessions.
Repro Notes
- Open Codex desktop on Windows.
- Use the microphone/dictation button in the composer.
- At some point dictation fails with Unable to determine audio duration.
- After failure, the mic affordance may disappear or become unavailable in the input box.
- Restarting Codex appears to be the practical recovery.
Diagnostics Already Performed
- Windows global microphone permission is Allow.
- Codex-specific microphone permission is Allow.
- Chromium media stream microphone exceptions in Codex profile are empty, not blocked.
- Audio services are running.
- Codex CLI was updated successfully with NODE_OPTIONS=--use-system-ca; codex update.
- Update result: restart Codex required.
Suspected Area
Composer dictation handling likely does not recover cleanly after receiving an empty/unreadable audio blob. The UI should keep/recover the mic affordance and show a retryable error instead of making the user restart.
Suggested Fix
- Treat zero-duration/undetectable audio as a recoverable dictation failure.
- Reset recorder state and re-enable mic UI after failure.
- Add a visible retry action or soft-reset path in the composer.
- Include client-side diagnostics for actual recorded blob duration/size and selected input device.