# MultipleInputVideoGraph.Factory

# MultipleInputVideoGraph.Factory

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

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/androidx/media3/effect/MultipleInputVideoGraph.Factory "View this page in Java")

<br />

```
class MultipleInputVideoGraph.Factory : VideoGraph.Factory
```

<br />

*** ** * ** ***

A[VideoGraph.Factory](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph.Factory)for[MultipleInputVideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph).

## Summary

|                                                                                                                                                                                                    ### Public constructors                                                                                                                                                                                                     |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Factory](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph.Factory#Factory())`()` A`Factory`for[MultipleInputVideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph)that uses a[DefaultVideoFrameProcessor.Factory](https://developer.android.com/reference/kotlin/androidx/media3/effect/DefaultVideoFrameProcessor.Factory). |
| [Factory](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph.Factory#Factory(androidx.media3.common.VideoFrameProcessor.Factory))`(videoFrameProcessorFactory: `[VideoFrameProcessor.Factory](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoFrameProcessor.Factory)`!)`                                                                                |

|                                                    ### Public functions                                                     |
|-----------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [MultipleInputVideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph)`!` | [create](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph.Factory#create(android.content.Context,androidx.media3.common.ColorInfo,androidx.media3.common.DebugViewProvider,androidx.media3.common.VideoGraph.Listener,java.util.concurrent.Executor,long,boolean))`(` ` context: `[Context](https://developer.android.com/reference/android/content/Context.html)`!,` ` outputColorInfo: `[ColorInfo](https://developer.android.com/reference/kotlin/androidx/media3/common/ColorInfo)`!,` ` debugViewProvider: `[DebugViewProvider](https://developer.android.com/reference/kotlin/androidx/media3/common/DebugViewProvider)`!,` ` listener: `[VideoGraph.Listener](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph.Listener)`!,` ` listenerExecutor: `[Executor](https://developer.android.com/reference/java/util/concurrent/Executor.html)`!,` ` initialTimestampOffsetUs: `[Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)`,` ` renderFramesAutomatically: `[Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) `)` Creates a new[VideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph)instance. |
| [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)                                         | [supportsMultipleInputs](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph.Factory#supportsMultipleInputs())`()` Returns whether the[created](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph.Factory#create(android.content.Context,androidx.media3.common.ColorInfo,androidx.media3.common.DebugViewProvider,androidx.media3.common.VideoGraph.Listener,java.util.concurrent.Executor,long,boolean))[VideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph)supports multiple video[inputs](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph#registerInputStream(int,int,androidx.media3.common.Format,java.util.List<androidx.media3.common.Effect>,long)).                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |

## Public constructors

### Factory

```
Factory()
```

A`Factory`for[MultipleInputVideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph)that uses a[DefaultVideoFrameProcessor.Factory](https://developer.android.com/reference/kotlin/androidx/media3/effect/DefaultVideoFrameProcessor.Factory).  

### Factory

```
Factory(videoFrameProcessorFactory: VideoFrameProcessor.Factory!)
```  

## Public functions

### create

```
fun create(
    context: Context!,
    outputColorInfo: ColorInfo!,
    debugViewProvider: DebugViewProvider!,
    listener: VideoGraph.Listener!,
    listenerExecutor: Executor!,
    initialTimestampOffsetUs: Long,
    renderFramesAutomatically: Boolean
): MultipleInputVideoGraph!
```

Creates a new[VideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph)instance.  

|                                                              Parameters                                                              |
|--------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `context: `[Context](https://developer.android.com/reference/android/content/Context.html)`!`                                        | A[Context](https://developer.android.com/reference/android/content/Context.html).                                                                                                                                                                                                                                                                                                                         |
| `outputColorInfo: `[ColorInfo](https://developer.android.com/reference/kotlin/androidx/media3/common/ColorInfo)`!`                   | The[ColorInfo](https://developer.android.com/reference/kotlin/androidx/media3/common/ColorInfo)for the output frames.                                                                                                                                                                                                                                                                                     |
| `debugViewProvider: `[DebugViewProvider](https://developer.android.com/reference/kotlin/androidx/media3/common/DebugViewProvider)`!` | A[DebugViewProvider](https://developer.android.com/reference/kotlin/androidx/media3/common/DebugViewProvider).                                                                                                                                                                                                                                                                                            |
| `listener: `[VideoGraph.Listener](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph.Listener)`!`      | A[Listener](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph.Listener).                                                                                                                                                                                                                                                                                                   |
| `listenerExecutor: `[Executor](https://developer.android.com/reference/java/util/concurrent/Executor.html)`!`                        | The[Executor](https://developer.android.com/reference/java/util/concurrent/Executor.html)on which the`listener`is invoked.                                                                                                                                                                                                                                                                                |
| `initialTimestampOffsetUs: `[Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)                            | The timestamp offset for the first frame, in microseconds.                                                                                                                                                                                                                                                                                                                                                |
| `renderFramesAutomatically: `[Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)                     | If`true`, the instance will render output frames to the[output surface](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph#setOutputSurfaceInfo(androidx.media3.common.SurfaceInfo))automatically as the instance is done processing them. If`false`, the instance will block until`VideoGraph#renderOutputFrameWithMediaPresentationTime()`is called, to render the frame. |

|                                                           Returns                                                           |
|-----------------------------------------------------------------------------------------------------------------------------|-----------------|
| [MultipleInputVideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/effect/MultipleInputVideoGraph)`!` | A new instance. |

### supportsMultipleInputs

```
fun supportsMultipleInputs(): Boolean
```

Returns whether the[created](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph.Factory#create(android.content.Context,androidx.media3.common.ColorInfo,androidx.media3.common.DebugViewProvider,androidx.media3.common.VideoGraph.Listener,java.util.concurrent.Executor,long,boolean))[VideoGraph](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph)supports multiple video[inputs](https://developer.android.com/reference/kotlin/androidx/media3/common/VideoGraph#registerInputStream(int,int,androidx.media3.common.Format,java.util.List<androidx.media3.common.Effect>,long)).