audio.rewind()

类型 函数
audio.*
返回值 布尔值
修订 版本 2024.3703
关键词 audio, rewind
另请参阅 audio.seek()

概述

将音频倒回起始位置,可以作用于活动声道或直接作用于音频句柄(如果没有指定参数,则倒回所有声道)。

此函数在成功时返回 `true`,否则返回 `false`。

注意事项

根据您使用 audio.loadSound() 还是 audio.loadStream() 加载音频,倒回行为会略有不同。

使用 audio.loadSound() 加载的音频只能使用声道参数进行倒回。您不能使用音频句柄进行倒回。这是因为 `audio.loadSound()` 经过优化以共享音频数据,以便您可以同时(在不同位置)播放声音的多个实例。查找(倒回)底层数据会使此优化复杂化。

相反,使用 audio.loadStream() 加载的音频无法共享(如果您需要多个同时播放,则需要加载同一文件的多个实例)。因此,倒回数据不会导致冲突。因此,通常情况下,您应该使用 `audioHandle` 参数来倒回使用 `audio.loadStream()` 加载的音频。但是,如果您使用声道倒回流式传输数据,它将自动倒回,就像您使用了 `audioHandle` 参数一样。因此,您可以安全地指定任一参数。

另请注意,对于使用 `audio.loadStream()` 加载且当前正在播放的文件,您可能在当前缓冲区播放完毕后才能听到音频立即更新。如果您希望立即倒回,则应先使用 audio.pause() 暂停播放,然后倒回,再继续播放。

语法

audio.rewind( [audioHandle | options] )
audioHandle (可选)

对象. 要倒回的数据的音频句柄。仅应用于使用 audio.loadStream() 加载的音频。不要在同一调用中使用声道参数。

options (可选)

. 支持单个键 `channel` 的表,该键是您希望倒回操作应用到的声道。最适合使用 audio.loadSound() 加载的音频。不要在同一调用中使用 `audioHandle` 参数。

示例

audio.rewind()  -- rewind all channels
audio.rewind( backgroundMusic ) -- rewind the audio handle
audio.rewind( { channel=1 } )  -- rewind channel 1