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.

AudioStreamPlayer

Inherits: Node < Object

播放音频,不考虑所处位置。

Description

以非位置方式支持播放音频流。

要在位置上播放音频,请使用 AudioStreamPlayer2DAudioStreamPlayer3D 而不是 AudioStreamPlayer

Tutorials

Properties

bool

autoplay

false

StringName

bus

&"Master"

int

max_polyphony

1

MixTarget

mix_target

0

float

pitch_scale

1.0

bool

playing

false

AudioStream

stream

bool

stream_paused

false

float

volume_db

0.0

Methods

float

get_playback_position ( )

AudioStreamPlayback

get_stream_playback ( )

bool

has_stream_playback ( )

void

play ( float from_position=0.0 )

void

seek ( float to_position )

void

stop ( )


Signals

finished ( )

当音频停止播放时发出。


Enumerations

enum MixTarget:

MixTarget MIX_TARGET_STEREO = 0

音频将只在第一个声道中播放。

MixTarget MIX_TARGET_SURROUND = 1

音频将在所有环绕声声道中播放。

MixTarget MIX_TARGET_CENTER = 2

音频将在第二个声道中播放,通常位于中央。


Property Descriptions

bool autoplay = false

  • void set_autoplay ( bool value )

  • bool is_autoplay_enabled ( )

如果为 true,在添加到场景树时将播放音频。


StringName bus = &"Master"

这个音频在哪个总线上播放。

注意:设置这个属性时,请记住它并不会对给定的名称是否与现有总线匹配进行校验。这是因为音频总线布局可以在设置这个属性后再加载。如果这个给定的名称在运行时无法解析,就会回退到 "Master"


int max_polyphony = 1

  • void set_max_polyphony ( int value )

  • int get_max_polyphony ( )

该节点可以同时播放的最大声音数。达到此值后,播放额外的声音将切断最旧的声音。


MixTarget mix_target = 0

如果音频配置有两个以上的扬声器,则设置目标通道。见 MixTarget 常量。


float pitch_scale = 1.0

  • void set_pitch_scale ( float value )

  • float get_pitch_scale ( )

音频的音高和节奏,作为音频样本的采样率的倍数。


bool playing = false

  • bool is_playing ( )

如果为 true,则播放音频。


AudioStream stream

要播放的 AudioStream 对象。


bool stream_paused = false

  • void set_stream_paused ( bool value )

  • bool get_stream_paused ( )

如果为 true,则暂停播放。你可以通过将 stream_paused 设置为 false 来恢复播放。


float volume_db = 0.0

  • void set_volume_db ( float value )

  • float get_volume_db ( )

音量,单位为 dB。


Method Descriptions

float get_playback_position ( )

返回 AudioStream 中的位置,单位为秒。


AudioStreamPlayback get_stream_playback ( )

返回与此 AudioStreamPlayer 关联的 AudioStreamPlayback 对象。


bool has_stream_playback ( )

<