godotengine / godotengine/godot
AudioStreamSynchronized has audible clicks/pops when changing a stream volume
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
- Found in 4.4.1
- Tried to test in 4.3 but ran into issues with importing the audio. Looking at the source code though, I don't believe it is a regression.
### System information
MacOS, M1. Also seen on Windows 10
### Issue description
When changing the volume of a stream on an AudioStreamSynchronized, audible clicks and pops can be heard as the volume jumps from one level to another. This is particularly noticeable when fading the volume.
This is likely because AudioStreamSynchronized does not interpolate between volume levels when a stream's `volume` is changed.
### Steps to reproduce
Create an AudioStreamSynchronized in an AudioStreamPlayer, give it a stream of a simple sound with a lot of emphasis on lower mids/bass (such as a pure sine wave), make a script or use an animation to change the volume level of the playing synchronized stream. Listen for clicks and pops.
### Minimal reproduction project (MRP)
In this project, an AnimationPlayer fades the volume of a stream playing a 100hz sine up and down. Simply play the project to hear it.
[audio_stream_sync_volume_pop.zip](https://github.com/user-attachments/files/20481445/audio_stream_sync_volume_pop.zip)
Contributor guide
Assessment
This issue has not been assessed yet.