# AudioInputOptions

URL: https://www.caprid.com/docs/reference/typescript/caprid/moq-media/interfaces/audioinputoptions/

Defined in: [audio-player.ts:94](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L94)

Options for [AudioPlayer.addInput](https://www.caprid.com/docs/reference/typescript/caprid/moq-media/interfaces/audioplayer/#addinput). Durations are microseconds.

## Properties

### clock?

```ts
clock?: AudioInputClock;
```

Defined in: [audio-player.ts:99](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L99)

The broadcast's playout clock. The input reports the audible timestamp to it about every 20 ms while it plays,
and its target latency caps the jitter buffer. Without one, nothing is reported.

***

### decoderConfig?

```ts
decoderConfig?: AudioDecoderConfig;
```

Defined in: [audio-player.ts:101](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L101)

How to decode. Default: Opus, 48 kHz, two channels; `audioDecoderConfigFromTrack` reads one from the catalog.

***

### gain?

```ts
gain?: number;
```

Defined in: [audio-player.ts:103](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L103)

The input's gain. Default 1.

***

### jitterTargetUs?

```ts
jitterTargetUs?: number;
```

Defined in: [audio-player.ts:107](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L107)

How much audio to hold before playing, at the start and after each underrun. Default 60,000.

***

### maxJitterTargetUs?

```ts
maxJitterTargetUs?: number;
```

Defined in: [audio-player.ts:115](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L115)

The most the target grows to after underruns. Default 400,000, and never more than the clock's target latency
less the output delay and 40 ms: a frame further ahead of the clock than its target latency makes the frame
sequencer resync.

***

### minJitterTargetUs?

```ts
minJitterTargetUs?: number;
```

Defined in: [audio-player.ts:109](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L109)

The least the target shrinks to while playback is smooth. Default 20,000.

***

### playbackRate?

```ts
playbackRate?: number;
```

Defined in: [audio-player.ts:105](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L105)

Held audio played per output frame, from 0.5 to 2; see [AudioPlayerInput.playbackRate](https://www.caprid.com/docs/reference/typescript/caprid/moq-media/interfaces/audioplayerinput/#playbackrate). Default 1.

## Methods

### onCutHeard()?

```ts
onCutHeard?(atUs): void;
```

Defined in: [audio-player.ts:123](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L123)

The latest `cut()` is heard: called once per cut, with [AudioInputStats.cutHeardAtUs](https://www.caprid.com/docs/reference/typescript/caprid/moq-media/interfaces/audioinputstats/#cutheardatus), when the jitter buffer's
report says it applied it. A cut that a newer one overtook before it was applied is not reported. An exception from
it goes to `console.error`.

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `atUs` | `number` |

#### Returns

`void`

***

### onError()?

```ts
onError?(error): void;
```

Defined in: [audio-player.ts:117](https://github.com/caprids/relay-sdks/blob/main/ts/packages/moq-media/src/audio-player.ts#L117)

A decoder error. The input decodes again from the next frame, with a new decoder.

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `error` | `unknown` |

#### Returns

`void`
