Explorar o código

AudioStreamPolyphonic: Implement stopping with sample playback

Fixes #94724.
Rémi Verschelde hai 1 ano
pai
achega
2edf9b95b3
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      scene/resources/audio_stream_polyphonic.cpp

+ 4 - 0
scene/resources/audio_stream_polyphonic.cpp

@@ -143,6 +143,10 @@ int AudioStreamPlaybackPolyphonic::mix(AudioFrame *p_buffer, float p_rate_scale,
 		}
 
 		if (s.stream_playback->get_is_sample()) {
+			if (s.finish_request.is_set()) {
+				s.active.clear();
+				AudioServer::get_singleton()->stop_sample_playback(s.stream_playback->get_sample_playback());
+			}
 			continue;
 		}