此函数将从缓冲区将数据添加到您先前使用函数 audio_create_play_queue() 创建的音频队列中。 您可以指定要添加到的队列索引、从中获取数据的缓冲区 ID、缓冲区内的位置 (偏移) 和要添加的字节数。将音频从缓冲区添加到队列后,在您首先使用函数 audio_free_play_queue() 释放队列之前,无法删除该缓冲区,并且缓冲区属性应与要添加声音的队列属性匹配。
audio_queue_sound(queueIndex, bufferId, bufferOffset, bufferLength);
参数 | 类型 | 描述 |
---|---|---|
queueIndex | Audio Queue ID | 要添加到的队列的索引。 |
bufferId | Buffer | 要添加到队列中的缓冲区。 |
bufferOffset | Real | 要开始的源缓冲区中的偏移量。 |
bufferLength | Real | 缓冲区的长度(缓冲区中的字节数)。 |
N/A
len = async_load[? "data_len"];
audio_buff = buffer_create(len, buffer_fast, 1);
buffer_copy(async_load[? "buffer_id"], 0, len, buff, 0);
audio_queue_sound(audio_queue, audio_buff, 0, len);
audio_play_sound(audio_queue, 10, 0);
上述代码将在异步音频记录事件中调用,并将一些记录数据分配给缓冲器,然后将其添加到音频队列中。然后播放。