# OTVideoCodecPreference Class Reference

Inherits from | NSObject
Declared in | OTPublisherKit.h

## Overview

@class OTVideoCodecPreference

### `automatic`

Indicates whether codec selection is automatic.

`@property (nonatomic, readonly) BOOL automatic`

#### Discussion

- If `YES`, the SDK will automatically choose the most suitable codec.
- If `NO`, you must provide a list of codecs in `codecs`.

#### Declared In

`OTPublisherKit.h`

### `codecs`

Ordered list of preferred codecs.

`@property (nonatomic, readonly, nonnull) NSArray<NSNumber*> *codecs`

#### Discussion

This property is only valid when `automatic == NO`. The array contains `NSNumber` values representing codec types. See OTVideoCodecType.

#### Declared In

`OTPublisherKit.h`

### `+ automatic`

Creates a codec preference where the SDK automatically selects the codec.

`+ (nonnull instancetype)automatic`

#### Return Value

A new instance of OTVideoCodecPreference configured for automatic codec selection.

#### Declared In

`OTPublisherKit.h`

### `+ manualWithCodecs:`

Creates a codec preference with an explicit list of codecs.

`+ (nonnull instancetype)manualWithCodecs:(nonnull NSArray<NSNumber*> *)codecs`

#### Parameters

`codecs` | An ordered array of codec types (wrapped in NSNumber), indicating the preferred order of codec negotiation. See OTVideoCodecType.

#### Return Value

A new instance of configured with the given codec list.

#### Declared In

`OTPublisherKit.h`