# SynchronousMediaCodecAdapter.Factory

Artifact: [androidx.media3:media3-exoplayer](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter.java+class:androidx.media3.exoplayer.mediacodec.SynchronousMediaCodecAdapter.Factory)

*** ** * ** ***


```
public class SynchronousMediaCodecAdapter.Factory implements MediaCodecAdapter.Factory
```

<br />

*** ** * ** ***

A factory for `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter` instances.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter.Factory#Factory()()` |

| ### Public methods |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter` | `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter.Factory#createAdapter(androidx.media3.exoplayer.mediacodec.MediaCodecAdapter.Configuration)(https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Configuration configuration)` Creates a `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter` instance. |

| ### Protected methods |
|---|---|
| `https://developer.android.com/reference/android/media/MediaCodec.html` | `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter.Factory#createCodec(androidx.media3.exoplayer.mediacodec.MediaCodecAdapter.Configuration)(https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Configuration configuration)` Creates a new `https://developer.android.com/reference/android/media/MediaCodec.html` instance. |

| ### Inherited Constants |
|---|
| From [androidx.media3.exoplayer.mediacodec.MediaCodecAdapter.Factory](https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory) |---|---| | `static final https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory` | `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory#DEFAULT()` **This field is deprecated.** Use `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory#getDefault(android.content.Context)` instead. <br /> | |

| ### Inherited methods |
|---|
| From [androidx.media3.exoplayer.mediacodec.MediaCodecAdapter.Factory](https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory) |---|---| | `static https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory` | `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory#getDefault(android.content.Context)(https://developer.android.com/reference/android/content/Context.html context)` Returns the default factory that should be used in most cases. | |

## Public constructors

### Factory

```
public Factory()
```

## Public methods

### createAdapter

```
public MediaCodecAdapter createAdapter(MediaCodecAdapter.Configuration configuration)
```

Creates a `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter` instance.

| Throws |
|---|---|
| `https://developer.android.com/reference/java/io/IOException.html` |   |

## Protected methods

### createCodec

```
protected MediaCodec createCodec(MediaCodecAdapter.Configuration configuration)
```

Creates a new `https://developer.android.com/reference/android/media/MediaCodec.html` instance.

| Throws |
|---|---|
| `https://developer.android.com/reference/java/io/IOException.html` |   |