Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
miniaudio
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
miniaudio
Commits
8d5bf821
Commit
8d5bf821
authored
Nov 05, 2024
by
francois@recisio.com
Committed by
David Reid
Jan 11, 2025
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
WebAudio: Fix a noise sound before device was started
parent
ad615af1
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
6 deletions
+9
-6
miniaudio.h
miniaudio.h
+9
-6
No files found.
miniaudio.h
View file @
8d5bf821
...
...
@@ -40099,15 +40099,10 @@ typedef struct
static EM_BOOL ma_audio_worklet_process_callback__webaudio(int inputCount, const AudioSampleFrame* pInputs, int outputCount, AudioSampleFrame* pOutputs, int paramCount, const AudioParamFrame* pParams, void* pUserData)
{
ma_device* pDevice = (ma_device*)pUserData;
ma_uint32 frameCount;
(void)paramCount;
(void)pParams;
if (ma_device_get_state(pDevice) != ma_device_state_started) {
return EM_TRUE;
}
/*
The Emscripten documentation says that it'll always be 128 frames being passed in. Hard coding it like that feels
like a very bad idea to me. Even if it's hard coded in the backend, the API and documentation should always refer
...
...
@@ -40116,7 +40111,15 @@ static EM_BOOL ma_audio_worklet_process_callback__webaudio(int inputCount, const
Unfortunately the audio data is not interleaved so we'll need to convert it before we give the data to miniaudio
for further processing.
*/
frameCount = 128;
ma_uint32 frameCount = 128;
if (ma_device_get_state(pDevice) != ma_device_state_started) {
/* Fill the output buffer with zero to avoid a noise sound */
if (outputCount > 0) {
MA_ZERO_MEMORY(pOutputs[0].data, frameCount * pDevice->playback.internalChannels * sizeof(float));
}
return EM_TRUE;
}
if (inputCount > 0) {
/* Input data needs to be interleaved before we hand it to the client. */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment