Replies: 2 comments 1 reply
-
Upon investigating a bit, it seems like it may be a WebAudio issue. I found an article that demonstrates the issue with a sine wave, and some potential solutions: https://alemangui.github.io/ramp-to-value Is it possible to get access to the "low level" WebAudio components, that AlphaTab uses under the hood, to apply the gradual gain fade? I see that the implementation of const output = (api.player as any)._output as any
const context: AudioContext = output._context
const buffer: AudioBuffer = output._buffer
const source: AudioBufferSourceNode = output._source |
Beta Was this translation helpful? Give feedback.
-
I improved this already in the past various times. Generally the problem is if some audio buffers are out of sync within alphaTab. Seems there is still a case where the timings internally get out of sync. This leads to the problem that invalid samples are played. I entered #1599 to look at this closer again. I will try to fix this at its core on the audio generation. But also beside that there should be a way to prevent any noises even if the times get out of sync. I have to see the performance impact of clearing certain buffers to play "silence" in such cases. |
Beta Was this translation helpful? Give feedback.
-
Hello, I'm using the default soundfont (
soundfont/sonivox.sf2
) in the browser. It works great, the only issue I'm experiencing, is that when the playback ends there is a loud clipping/clicking noise. If I had to guess, whatever is playing the samples zeroes / mutes whatever is playing, and that's causing it. It's quite apparent with the bass samples, here is an example (play button on the bottom middle of the screen):https://bali182.github.io/stick/#/default/score
It can be heard when the last bar ends, and it's different how loud the click/pop is on every playback. This is my player config:
And this is how I start the playback, nothing fancy:
Any ideas why this is happening? Am I missing something with the player config? It happened in the previous major version, and the newest beta one as well, which I'm using currently.
Beta Was this translation helpful? Give feedback.
All reactions