---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/media/interfaces/MediaPipelineConfig.md
description: 'Configuration for [`createMediaPipeline`](https://adk.nht.io/api/@nhtio/adk/batteries/media/functions/createMediaPipeline).'
---

# Interface: MediaPipelineConfig

Defined in: [src/batteries/media/index.ts:177](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/index.ts#L177)

Configuration for [createMediaPipeline](../functions/createMediaPipeline.md).

## Properties

| Property                                       | Type                                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Defined in                                                                                                                |
| ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
|  `engines?`       | readonly [`EngineResolver`](../contracts/type-aliases/EngineResolver.md)<[`MediaEngine`](../contracts/interfaces/MediaEngine.md)>\[] | The engine array, in priority order. Each entry is a [MediaEngine](../contracts/interfaces/MediaEngine.md) instance or a resolver returning one (async dynamic import is the canonical form). Engines self-declare their capabilities; verbs whose capability has no provider are not advertised and fail validation with a do-not-retry message if reached. Resolvers run eagerly at construction — bundled engines stay cheap because their heavy peers lazy-load inside capability methods. | [src/batteries/media/index.ts:185](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/index.ts#L185) |
|  `resolveRef?` | [`MediaRefResolver`](../type-aliases/MediaRefResolver.md)                                                                             | Resolves `@id` media refs (merge/diff/replace targets). Required only when chains use multi-input verbs; the agent forge supplies a turn-state resolver automatically.                                                                                                                                                                                                                                                                                                                         | [src/batteries/media/index.ts:202](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/index.ts#L202) |
|  `selection?`   | [`EngineSelectionMiddlewareFn`](../type-aliases/EngineSelectionMiddlewareFn.md)\[]                                                     | Selection-middleware stages arbitrating dispatches where several engines can perform the same transform. Stages may exclude or reorder candidates (quality heuristics, overrides); array order among survivors always breaks the tie. Most deployments need none.                                                                                                                                                                                                                              | [src/batteries/media/index.ts:191](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/index.ts#L191) |
|  `use?`               | [`MediaStepMiddlewareFn`](../type-aliases/MediaStepMiddlewareFn.md)\[]                                                                 | Consumer step interceptors wrapping every step — the documented seam for DLP/AV byte scanning, caching (via `ctx.shortCircuit`), byte limits, and telemetry. The battery ships no built-in scanner/cache/limiter.                                                                                                                                                                                                                                                                              | [src/batteries/media/index.ts:197](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/index.ts#L197) |
