godotengine / godotengine/godot

AudioStreamSynchronized has audible clicks/pops when changing a stream volume

Open
#106,900 0 comments 0 reactions 0 assignees View on GitHub
bug topic:audio
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.