Search Results for

    Show / Hide Table of Contents

    Class AudioBuffer

    The Audio Buffer class.

    Inheritance
    object
    AudioBuffer
    ALAudioBuffer
    XAudioBuffer
    Implements
    ILoadable
    IDisposable
    IDependencyObject
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Evergine.Common.Audio
    Assembly: Evergine.Common.dll
    Syntax
    public abstract class AudioBuffer : ILoadable, IDisposable, IDependencyObject

    Properties

    Dependencies

    Gets the dependency list.

    Declaration
    public Lazy<List<IDependencyLink>> Dependencies { get; }
    Property Value
    Type Description
    Lazy<List<IDependencyLink>>

    Duration

    Gets the duration of this buffer data according to the Format.

    Declaration
    public TimeSpan Duration { get; }
    Property Value
    Type Description
    TimeSpan

    Format

    Gets the wave format of this buffer.

    Declaration
    public WaveFormat Format { get; }
    Property Value
    Type Description
    WaveFormat

    Id

    Gets or sets the asset Id.

    Declaration
    public Guid Id { get; set; }
    Property Value
    Type Description
    Guid

    The asset path.

    Length

    Gets the length of this buffer.

    Declaration
    public int Length { get; }
    Property Value
    Type Description
    int

    ReaderVersion

    Gets the reader version.

    Declaration
    public Version ReaderVersion { get; }
    Property Value
    Type Description
    Version

    The reader version.

    SampleCount

    Gets the number of samples contained inside the buffer according to the Format.

    Declaration
    public int SampleCount { get; }
    Property Value
    Type Description
    int

    State

    Gets the audio buffer State.

    Declaration
    public AudioBufferStates State { get; }
    Property Value
    Type Description
    AudioBufferStates

    Methods

    Dispose()

    Declaration
    public virtual void Dispose()

    Fill(Stream, int, WaveFormat)

    Reads the bytes from the specified stream and writes them to audio buffer.

    Declaration
    public void Fill(Stream stream, int byteCount, WaveFormat format)
    Parameters
    Type Name Description
    Stream stream

    The stream from which the contents will be copied.

    int byteCount

    Number of bytes to copy.

    WaveFormat format

    The format of the wave data.

    FillAsync(Stream, int, WaveFormat)

    Asynchronously reads the bytes from the specified stream and writes them to audio buffer, using a specified buffer size.

    Declaration
    public Task FillAsync(Stream stream, int bufferSize, WaveFormat format)
    Parameters
    Type Name Description
    Stream stream

    The stream from which the contents will be copied.

    int bufferSize

    The size of the buffer. This value must be greater than zero. The default size is 81920.

    WaveFormat format

    The format of the wave data.

    Returns
    Type Description
    Task

    A task that represents the asynchronous copy operation.

    Fill<TBuffer>(TBuffer[], int, int, WaveFormat)

    Reads the data from the specified buffer and writes them to audio buffer.

    Declaration
    public void Fill<TBuffer>(TBuffer[] buffer, int offset, int count, WaveFormat format) where TBuffer : struct
    Parameters
    Type Name Description
    TBuffer[] buffer

    The array of TBuffer data to write.

    int offset

    The offset in the array to read from.

    int count

    The number of TBuffer element to write to the memory location.

    WaveFormat format

    The format of the wave data.

    Type Parameters
    Name Description
    TBuffer

    Type of a data to write.

    InternalFill(Stream, int)

    Fills the audio buffer with a specific stream.

    Declaration
    protected abstract void InternalFill(Stream stream, int bufferSize)
    Parameters
    Type Name Description
    Stream stream

    The source stream.

    int bufferSize

    The buffer size.

    InternalFillAsync(Stream, int)

    Fills the audio buffer with a specific stream.

    Declaration
    protected abstract Task InternalFillAsync(Stream stream, int bufferSize)
    Parameters
    Type Name Description
    Stream stream

    The source stream.

    int bufferSize

    The buffer size.

    Returns
    Type Description
    Task

    Awaitable task of the operation.

    InternalFill<TBuffer>(TBuffer[], int, int)

    Fills the audio buffer with a specific buffer.

    Declaration
    protected abstract void InternalFill<TBuffer>(TBuffer[] buffer, int offset, int count) where TBuffer : struct
    Parameters
    Type Name Description
    TBuffer[] buffer

    The source buffer.

    int offset

    The source offset.

    int count

    The number of elements to be copied.

    Type Parameters
    Name Description
    TBuffer

    The type of the buffer data.

    Invalidate(ILoadable)

    Invalidates this instance and raise the Invalidated event with the new ILoadable instance.

    Declaration
    public void Invalidate(ILoadable newInstance)
    Parameters
    Type Name Description
    ILoadable newInstance

    The new ILoadable instance.

    ReleaseUnusedMemory()

    Release unused memory.

    Declaration
    public void ReleaseUnusedMemory()

    Events

    Invalidated

    Occurs when this instance has been invalidated and all references must be reloaded.

    Declaration
    public event EventHandler<ILoadable> Invalidated
    Event Type
    Type Description
    EventHandler<ILoadable>

    Implements

    ILoadable
    IDisposable
    IDependencyObject

    Extension Methods

    ReflectionHelper.GetMemberAssembly(object)
    ReflectionHelper.GetTypeName(object)
    In This Article
    Back to top
    Generated by DocFX