AudioEffectCapture
继承: AudioEffect < Resource < RefCounted < Object
从音频总线上实时捕捉音频。
描述
AudioEffectCapture 是一种 AudioEffect,可将所有音频帧从附加的音频效果总线复制到其内部的环形缓冲区中。
应用程序代码应使用 get_buffer 从该环形缓冲区中消耗这些音频帧,并根据需要对其进行处理,例如从 AudioStreamMicrophone 捕获数据,实现应用程序定义的效果,或通过网络传输音频。从麦克风捕获音频数据时,样本格式将为立体声 32 位浮点 PCM。
注意:ProjectSettings.audio/driver/enable_input 必须为 true
音频输入才能正常工作。另请参阅该设置的说明,了解与权限和操作系统隐私设置相关的注意事项。
教程
属性
|
方法
can_get_buffer ( int frames ) const | |
void | clear_buffer ( ) |
get_buffer ( int frames ) | |
get_buffer_length_frames ( ) const | |
get_discarded_frames ( ) const | |
get_frames_available ( ) const | |
get_pushed_frames ( ) const |
属性说明
float buffer_length = 0.1
内部环形缓冲区的长度,单位为秒。如果已经初始化,设置缓冲区长度将没有效果。
方法说明
bool can_get_buffer ( int frames ) const
如果内部环形缓冲区中至少有 frames
个音频帧可供读取,则返回 true
。
void clear_buffer ( )
清除内部环形缓冲区。
PackedVector2Array get_buffer ( int frames )
从内部环形缓冲区获取后续 frames
个音频样本。
如果足够的话,则返回一个恰好包含 frames
个音频样本的 PackedVector2Array;如果可用数据不足,则返回一个空的 PackedVector2Array。
int get_buffer_length_frames ( ) const
返回内部环形缓冲区的总大小,以帧为单位。
int get_discarded_frames ( ) const
返回由于缓冲区满而从音频总线上丢弃的音频帧的数量。
int get_frames_available ( ) const
返回可使用 get_buffer 读取的帧数。
int get_pushed_frames ( ) const
返回从音频总线插入的音频帧的数量。
© 版权所有 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0). Revision b1c660f7
.
Built with Sphinx using a theme provided by Read the Docs.