# VideoFrameProcessorTestRunner.Builder

Artifact: [androidx.media3:media3-test-utils](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/test/utils/VideoFrameProcessorTestRunner.java+class:androidx.media3.test.utils.VideoFrameProcessorTestRunner.Builder)

*** ** * ** ***


```
public final class VideoFrameProcessorTestRunner.Builder
```

<br />

*** ** * ** ***

A builder for `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner` instances.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#Builder()()` Creates a new instance with default values. |

| ### Public methods |
|---|---|
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner` | `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#build()()` |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setBitmapReader(androidx.media3.test.utils.VideoFrameProcessorTestRunner.BitmapReader)( https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.BitmapReader bitmapReader )` Sets the `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.BitmapReader`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setEffects(androidx.media3.common.Effect...)(Effect[] effects)` Sets the `https://developer.android.com/reference/androidx/media3/common/Effect`s used. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setEffects(java.util.List<androidx.media3.common.Effect>)(https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/androidx/media3/common/Effect> effects)` Sets the `https://developer.android.com/reference/androidx/media3/common/Effect`s used. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setOnEndedListener(androidx.media3.test.utils.VideoFrameProcessorTestRunner.OnVideoFrameProcessingEndedListener)( https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.OnVideoFrameProcessingEndedListener onEndedListener )` Sets the method to be called in `https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessor.Listener#onEnded()`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setOnOutputFrameAvailableForRenderingListener(androidx.media3.test.utils.VideoFrameProcessorTestRunner.OnOutputFrameAvailableForRenderingListener)( https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.OnOutputFrameAvailableForRenderingListener onOutputFrameAvailableListener )` Sets the method to be called in `https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessor.Listener#onOutputFrameAvailableForRendering(long,boolean)`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setOutputColorInfo(androidx.media3.common.ColorInfo)(https://developer.android.com/reference/androidx/media3/common/ColorInfo outputColorInfo)` Sets the output `https://developer.android.com/reference/androidx/media3/common/ColorInfo`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setOutputFileLabel(java.lang.String)(https://developer.android.com/reference/java/lang/String.html outputFileLabel)` Sets the output file label. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setPixelWidthHeightRatio(float)(float pixelWidthHeightRatio)` Sets the `pixelWidthHeightRatio`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setTestId(java.lang.String)(https://developer.android.com/reference/java/lang/String.html testId)` Sets the test ID, used to generate output files. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setVideoAssetPath(java.lang.String)(https://developer.android.com/reference/java/lang/String.html videoAssetPath)` Sets the input video asset path. |
| `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#setVideoFrameProcessorFactory(androidx.media3.common.VideoFrameProcessor.Factory)( https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessor.Factory videoFrameProcessorFactory )` Sets the `https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessor.Factory`. |

## Public constructors

### Builder

```
public Builder()
```

Creates a new instance with default values.

## Public methods

### build

```
public VideoFrameProcessorTestRunner build()
```

| Throws |
|---|---|
| `https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessingException` |   |

### setBitmapReader

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setBitmapReader(
    VideoFrameProcessorTestRunner.BitmapReader bitmapReader
)
```

Sets the `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.BitmapReader`.

The default value is a `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.SurfaceBitmapReader` instance.

### setEffects

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setEffects(Effect[] effects)
```

Sets the `https://developer.android.com/reference/androidx/media3/common/Effect`s used.

The default value is an empty list.

### setEffects

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setEffects(List<Effect> effects)
```

Sets the `https://developer.android.com/reference/androidx/media3/common/Effect`s used.

The default value is an empty list.

### setOnEndedListener

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setOnEndedListener(
    VideoFrameProcessorTestRunner.OnVideoFrameProcessingEndedListener onEndedListener
)
```

Sets the method to be called in `https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessor.Listener#onEnded()`.

The default value is a no-op.

### setOnOutputFrameAvailableForRenderingListener

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setOnOutputFrameAvailableForRenderingListener(
    VideoFrameProcessorTestRunner.OnOutputFrameAvailableForRenderingListener onOutputFrameAvailableListener
)
```

Sets the method to be called in `https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessor.Listener#onOutputFrameAvailableForRendering(long,boolean)`.

The method will be called on the thread the `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner` is created on.

The default value is a no-op.

### setOutputColorInfo

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setOutputColorInfo(ColorInfo outputColorInfo)
```

Sets the output `https://developer.android.com/reference/androidx/media3/common/ColorInfo`.

The default value is `https://developer.android.com/reference/androidx/media3/common/ColorInfo#SDR_BT709_LIMITED()`.

### setOutputFileLabel

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setOutputFileLabel(String outputFileLabel)
```

Sets the output file label.

This value will be postfixed after the `testId` to generated output files.

The default value is an empty string.

### setPixelWidthHeightRatio

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setPixelWidthHeightRatio(float pixelWidthHeightRatio)
```

Sets the `pixelWidthHeightRatio`.

The default value is `https://developer.android.com/reference/androidx/media3/test/utils/VideoFrameProcessorTestRunner.Builder#DEFAULT_PIXEL_WIDTH_HEIGHT_RATIO()`.

### setTestId

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setTestId(String testId)
```

Sets the test ID, used to generate output files.

This is a required value.

### setVideoAssetPath

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setVideoAssetPath(String videoAssetPath)
```

Sets the input video asset path.

No default value is set. Must be set when the input is a video file.

### setVideoFrameProcessorFactory

```
@CanIgnoreReturnValue
public VideoFrameProcessorTestRunner.Builder setVideoFrameProcessorFactory(
    VideoFrameProcessor.Factory videoFrameProcessorFactory
)
```

Sets the `https://developer.android.com/reference/androidx/media3/common/VideoFrameProcessor.Factory`.

This is a required value.