native_audio 0.5.3 → 0.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/audio/audio.c +4 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '0471808989066a6a5e16fac518a5eddb94e8cc3cbe541b40d18a4d2244a17186'
|
|
4
|
+
data.tar.gz: 956461d3e0fc7214338b46f1a2cfe17ec6f947b8aebf379123bdfc1ff1c38550
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: efee694d3fb6a013c92ccbfff8f89100b8b495ddc82f90c0573579006c82003f37f133ba41ec4b50116ece00bc5cd13a361fb50349864e51d0949d7e62004965
|
|
7
|
+
data.tar.gz: d63942dfe0ceac0662af7f2ebf07f87af9d6e9f01645646598f903eddce8e2d971ba013345318204e6b49f0ce621acdc22a897dd5ae860df4de7451f9af46ade
|
data/ext/audio/audio.c
CHANGED
|
@@ -189,7 +189,7 @@ static void cleanup_finished_channels(void)
|
|
|
189
189
|
|
|
190
190
|
for (int i = 0; i < MAX_CHANNELS; i++) {
|
|
191
191
|
// Phase 1: sound finished - uninit the sound, start drain timer
|
|
192
|
-
if (channels[i] != NULL && ma_sound_at_end(channels[i])) {
|
|
192
|
+
if (channels[i] != NULL && ma_sound_at_end(channels[i]) && !ma_sound_is_looping(channels[i])) {
|
|
193
193
|
ma_sound_uninit(channels[i]);
|
|
194
194
|
free(channels[i]);
|
|
195
195
|
channels[i] = NULL;
|
|
@@ -232,6 +232,9 @@ VALUE audio_play(VALUE self, VALUE channel_id, VALUE clip)
|
|
|
232
232
|
|
|
233
233
|
cleanup_finished_channels();
|
|
234
234
|
|
|
235
|
+
// Cancel any pending drain timer for this channel
|
|
236
|
+
drain_until_frame[channel] = 0;
|
|
237
|
+
|
|
235
238
|
// Clean up existing resources on this channel
|
|
236
239
|
if (channels[channel] != NULL) {
|
|
237
240
|
ma_sound_stop(channels[channel]);
|