Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
AudioStream
繼承: Resource < RefCounted < Object
被繼承: AudioStreamGenerator, AudioStreamInteractive, AudioStreamMicrophone, AudioStreamMP3, AudioStreamOggVorbis, AudioStreamPlaylist, AudioStreamPolyphonic, AudioStreamRandomizer, AudioStreamSynchronized, AudioStreamWAV
音訊流的基底類別。
說明
Base class for audio streams. Audio streams are used for sound effects and music playback, and support WAV (via AudioStreamWAV), Ogg (via AudioStreamOggVorbis), and MP3 (via AudioStreamMP3) file formats.
教學
方法
_get_bar_beats() virtual const |
|
_get_beat_count() virtual const |
|
_get_bpm() virtual const |
|
_get_length() virtual const |
|
_get_parameter_list() virtual const |
|
_get_stream_name() virtual const |
|
_get_tags() virtual const |
|
_has_loop() virtual const |
|
_instantiate_playback() virtual required const |
|
_is_monophonic() virtual const |
|
can_be_sampled() const |
|
generate_sample() const |
|
get_length() const |
|
is_meta_stream() const |
|
is_monophonic() const |
訊號
parameter_list_changed() 🔗
當參數清單變更時發出此訊號。
方法說明
int _get_bar_beats() virtual const 🔗
覆寫此方法以返回此串流的小節拍數。
int _get_beat_count() virtual const 🔗
可覆寫的方法,應返回此音訊串流的總拍數,供引擎計算各拍位置。
理想情況下,該值應以串流的取樣率(如 AudioStreamWAV.mix_rate)為基礎計算。
float _get_bpm() virtual const 🔗
可覆寫的方法,應返回此音訊串流的速度 (BPM),供引擎計算各拍位置。
理想情況下,該值應以串流的取樣率(如 AudioStreamWAV.mix_rate)為基礎計算。
float _get_length() virtual const 🔗
覆寫此方法以自訂 get_length() 的返回值;應返回此音訊串流的長度(秒)。
Array[Dictionary] _get_parameter_list() virtual const 🔗
傳回此串流可控制的參數。此陣列包含採用屬性資訊描述格式的字典(參見 Object.get_property_list())。此外,必須在每個字典的 「default_value」欄位中加入該參數的預設值。
String _get_stream_name() virtual const 🔗
重寫此方法以自訂此音訊流所使用的名稱(引擎本身不會使用)。
Dictionary _get_tags() virtual const 🔗
重寫此方法以自訂此音訊流的標籤。應回傳一個以標籤為鍵、內容為值的 Dictionary 字串字典。
常見的標籤包含 title、artist、album、tracknumber 與 date。
bool _has_loop() virtual const 🔗
重寫此方法,若此串流具有循環則回傳 true。
AudioStreamPlayback _instantiate_playback() virtual required const 🔗
重寫此方法以自訂 instantiate_playback() 的回傳值。應建立並回傳一個於串流被播放時產生的新 AudioStreamPlayback(例如由 AudioStreamPlayer 觸發)。
bool _is_monophonic() virtual const 🔗
重寫此方法以自訂 is_monophonic() 的回傳值。若此音訊流僅支援單聲道,應回傳 true。
實驗性: 此方法可能在未來版本中變更或移除。
回傳目前的 AudioStream 是否可用作取樣。僅靜態串流可被取樣。
AudioSample generate_sample() const 🔗
實驗性: 此方法可能在未來版本中變更或移除。
依據目前的串流產生一個新的 AudioSample。
Returns the length of the audio stream in seconds. If this stream is an AudioStreamRandomizer, returns the length of the last played stream. If this stream has an indefinite length (such as for AudioStreamGenerator and AudioStreamMicrophone), returns 0.0.
AudioStreamPlayback instantiate_playback() 🔗
傳回一個新建立的 AudioStreamPlayback,用於播放此音訊流。當你想覆寫 _instantiate_playback(),但需要從內部持有的 AudioStream 子資源呼叫 instantiate_playback() 時特別有用。範例可參考 AudioStreamRandomPitch::instantiate_playback 的原始程式碼。
若此串流是其他串流的集合則回傳 true,否則回傳 false。
若此音訊流僅支援單聲道(monophony)則回傳 true;若支援兩個以上聲道(polyphony)則回傳 false。