namespace ytLive.Services.Audio;

/// <summary>
/// A chunk of interleaved PCM float samples (-1..1) with its format. This is
/// the unit every <see cref="IAudioSource"/> produces and the
/// <see cref="AudioMixer"/> consumes (TASK 4 ship step 4).
/// </summary>
public sealed class AudioSample
{
    public float[] Samples { get; }
    public int SampleRate { get; }
    public int Channels { get; }

    public AudioSample(float[] samples, int sampleRate, int channels)
    {
        Samples = samples;
        SampleRate = sampleRate;
        Channels = channels;
    }
}
