AudioEffectCapture
Captures audio from an audio bus in real-time.
AudioEffectCapture.swift:22class AudioEffectCapture
AudioEffectCapture is an AudioEffect which copies all audio frames from the attached audio effect bus into its internal ring buffer.
Application code should consume these audio frames from this ring buffer using getBuffer(frames:)
and process it as needed, for example to capture data from an AudioStreamMicrophone
, implement application-defined effects, or to transmit audio over the network. When capturing audio data from a microphone, the format of the samples will be stereo 32-bit floating-point PCM.
Unlike AudioEffectRecord
, this effect only returns the raw audio samples instead of encoding them into an AudioStream
.
Superclasses
class AudioEffect
Base class for audio effect resources.
Citizens in SwiftGodot
Conformances
protocol CustomStringConvertible
A type with a customized textual representation.
protocol Equatable
A type that can be compared for value equality.
protocol Hashable
A type that can be hashed into a
Hasher
to produce an integer hash value.protocol Identifiable<ID>
A class of types whose instances hold the value of an entity with stable identity.
protocol VariantRepresentable
Types that conform to VariantRepresentable can be stored directly in
Variant
with no conversion. These include all of the Variant types from Godot (for exampleGString
,Rect
,Plane
), Godot objects (those that subclass SwiftGodot.Object) as well as the built-in Swift types UInt8, Int64 and Double.protocol VariantStorable
Types that conform to VariantStorable can be stored in a Variant and can be extracted back out of a Variant.
Type members
Instance members
var bufferLength: Double
Length of the internal ring buffer, in seconds. Setting the buffer length will have no effect if already initialized.
func canGetBuffer(frames: Int32
) -> Bool Returns
true
if at leastframes
audio frames are available to read in the internal ring buffer.func clearBuffer(
) Clears the internal ring buffer.
func getBuffer(frames: Int32
) -> PackedVector2Array Gets the next
frames
audio samples from the internal ring buffer.func getBufferLengthFrames(
) -> Int32 Returns the total size of the internal ring buffer in frames.
func getDiscardedFrames(
) -> Int Returns the number of audio frames discarded from the audio bus due to full buffer.
func getFramesAvailable(
) -> Int32 Returns the number of frames available to read using
getBuffer(frames:)
.func getPushedFrames(
) -> Int Returns the number of audio frames inserted from the audio bus.