> ## Documentation Index
> Fetch the complete documentation index at: https://docs.simular.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# SamplesBuffer

> A buffer of samples treated as a source.

## Constructor

```typescript
SamplesBuffer(channels: number, sampleRate: number, samples: number[]): SamplesBuffer
```

Creates a new buffer from raw PCM samples.

`channels` is the number of interleaved channels (1 = mono,
2 = stereo). `sample_rate` is samples per second per channel
(e.g. 16000, 44100).  `samples` is an array of f32 audio
samples in `[-1.0, 1.0]`.

### Parameters

<ResponseField name={"channels"} type={"number"} required />

<ResponseField name={"sampleRate"} type={"number"} required />

<ResponseField name={"samples"} type={"number[]"} required />

### Returns

`SamplesBuffer`

## Properties

<ResponseField name={"channels"} type={"number"} required>
  Number of interleaved channels (1 = mono, 2 = stereo).
</ResponseField>

<ResponseField name={"durationMs"} type={"number"} required>
  Total duration of the buffer in milliseconds.
</ResponseField>

<ResponseField name={"sampleRate"} type={"number"} required>
  Samples per second per channel (e.g. 16000, 44100).
</ResponseField>

## Methods

### transcribe()

```typescript
transcribe(model: SttModel): string
```

Transcribe this audio buffer with the given speech-to-text model and
return the recognized text.

Equivalent to `model.transcribe(buffer)`

#### Parameters

<ResponseField name={"model"} type={"SttModel"} required />

#### Returns

`string`
