Quick Diagnostics
If you’re experiencing issues, check these first:- Is your AssemblyAI account upgraded with billing enabled?
- Did you grant microphone permissions?
- Is your browser compatible with AudioWorklet?
- Is the WebSocket connection established?
Common Problems
402 Error: Unauthorized
402 Error: Unauthorized
Microphone Permission Denied
Microphone Permission Denied
Problem: The browser blocks microphone access or you see a permission denied error.Cause: The browser has not been granted permission to access the microphone, or permissions were previously denied.Solution:Chrome/Edge:
- Click the lock icon in the address bar
- Find “Microphone” in the permissions list
- Change to “Allow”
- Refresh the page
- Click the lock icon in the address bar
- Click “More Information” → “Permissions” tab
- Uncheck “Use Default” for “Use the Microphone”
- Select “Allow”
- Refresh the page
WebSocket Connection Fails
WebSocket Connection Fails
Problem: The WebSocket connection never opens or fails immediately.Symptoms:
- Console shows “WebSocket error”
- No transcription appears
- Connection closes immediately after opening
-
Invalid or missing token
- Check that your
.envfile contains a valid AssemblyAI API key - Verify the
/tokenendpoint returns a valid temporary token - Debug with:
- Check that your
-
Network/firewall issues
- Check that your network allows WebSocket connections
- Try disabling browser extensions (ad blockers, privacy tools)
- Check browser console for CORS errors
-
Server not running
- Ensure the Express server is running on port 8000
- Run
yarn servein the project directory - Check that
http://localhost:8000is accessible
No Audio Streaming / Empty Transcripts
No Audio Streaming / Empty Transcripts
Problem: WebSocket connects but no transcription appears.Debugging Steps:
-
Verify audio is being captured:
-
Check WebSocket is receiving messages:
-
Verify audio is being sent:
-
Common issues:
- Microphone is muted in system settings
- Wrong audio input device selected
- Sample rate mismatch (should be 16000 Hz)
- AudioContext not initialized properly
AudioWorklet Module Loading Failed
AudioWorklet Module Loading Failed
Problem: Error loading Solution:
audio-processor.js module.Error message:-
Check file path is correct:
The path is relative to the HTML page. If your structure is different, adjust accordingly.
-
Verify server serves the file with correct MIME type:
The file must be served with
Content-Type: application/javascriptortext/javascript. -
Check file exists and is accessible:
- Open
http://localhost:8000/audio-processor.jsin your browser - You should see the AudioWorklet code
- If you see a 404, the file path is incorrect
- Open
- CORS issues: AudioWorklet modules must be served from the same origin or with proper CORS headers.
Transcription Stops After a Few Seconds
Transcription Stops After a Few Seconds
Problem: Transcription works initially but stops after a short time.Possible Causes:
-
WebSocket timeout or disconnection:
-
AudioContext suspended:
- Memory leak in audio buffer: Ensure buffers are properly cleared and not accumulating.
- Network connectivity issues: Check your internet connection stability.
Getting More Help
If you’ve tried these solutions and still have issues:- Check the browser console for detailed error messages
- Review the Browser Compatibility guide
- Contact AssemblyAI support at [email protected]
- Include the following in your support request:
- Browser name and version
- Error messages from the console
- Whether your account is upgraded
- Steps to reproduce the issue