# TransformPutProperties

## Description
The description of the Transform.

## Outputs
An array of TransformOutputs that the Transform should generate. Currently limited to one.

### onError
Defines what the service should do when one output fails. Continue to produce other outputs, or stop processing.

**Allowed values:** ContinueJob, StopProcessingJob

## Preset
Preset that describes the operations that will be used to modify, transcode, or extract insights from the source file to generate the output.

### Discriminated by `@odata.type`. Select one variant:

#### Microsoft.Media.BuiltInStandardEncoderPreset

- **@odata.type**: Required. The discriminator for derived types.
- **advancedSettingsName**: Optional. Name of the advanced settings configuration to apply to this transform's config.
- **presetName**: Required. The built-in preset to be used for encoding videos. Options include:
  - H264SingleBitrateSD
  - H264SingleBitrate720p
  - H264SingleBitrate1080p
  - H264MultipleBitrateSD
  - H264MultipleBitrate720p
  - H264MultipleBitrate1080p
  - H264MultipleBitrateSDWithCVQ
  - H264MultipleBitrate720pWithCVQ
  - H264MultipleBitrate1080pWithCVQ
  - H265SingleBitrate720p
  - H265SingleBitrate1080p
  - H265SingleBitrate4K
  - AACGoodQualityAudio

#### MediaKind.BuiltInAssetConverterPreset

- **@odata.type**: Required. The discriminator for derived types.
- **presetName**: Required. The built-in preset to be used for performing asset conversion. Allowed values:
  - CopyTopBitrateInterleaved
  - CopyAllBitrateNonInterleaved
  - CopyAllBitrateInterleaved

#### MediaKind.ThumbnailGeneratorPreset

- **@odata.type**: Required. The discriminator for derived types.
- **baseFilename**: Optional. Used to create the output filename as `{BaseFilename}_{Label}{Index}{Extension}`.
- **thumbnails**: Required. The set of thumbnails to be produced.
  - **format**: Required. The output format for the thumbnails.
  - **height**: Optional. Either an integer size in pixels or a percentage of the input resolution.
  - **label**: Optional. Used to create the output filename.
  - **quality**: Optional. The compression quality for JPEG images.
  - **range**: Optional. Defaults to 1.
  - **spriteColumn**: Optional. The number of columns used if you want a thumbnail sprite image.
  - **start**: Optional. Defaults to PT10S.
  - **step**: Optional. The intervals at which thumbnails are generated.
  - **width**: Optional. Either an integer size in pixels, or a percentage of the input resolution.

#### MediaKind.TrackInserterPreset

- **@odata.type**: Required. The discriminator for derived types.
- **baseFilename**: Optional. Used to create the output filename.
- **tracks**: Required. The set of tracks to be inserted. Currently limited to one.

### Discriminated by `@odata.type`. Select one variant:

##### MediaKind.TextTrack

- **@odata.type**: Required. The discriminator for derived types.
- **displayName**: Optional. The display name of the track on a video player.
- **hlsSettings**: Optional. The HLS specific setting for the track.
- **characteristics**: Optional. The characteristics for the HLS setting.
- **default**: Optional. Default track?
- **forced**: Optional. Forced track?
- **languageCode**: Optional. The RFC5646 language code for the track.
- **trackName**: Required. The name of the track in the manifest.

##### MediaKind.AudioTrack

- **@odata.type**: Required. The discriminator for derived types.
- **dashSettings**: Optional. The DASH specific setting for the audio track.
- **roles**: Optional. The role for the DASH setting.
- **displayName**: Optional. The display name of the audio track on a video player.
- **hlsSettings**: Optional. The HLS specific setting for the audio track.
- **characteristics**: Optional. The characteristics for the HLS setting.
- **default**: Optional. Default track?
- **forced**: Optional. Forced track?
- **languageCode**: Optional. The RFC5646 language code for the audio track.
- **trackName**: Required. The name of the audio track in the manifest.

#### MediaKind.AIPipelinePreset

- **@odata.type**: Required. The discriminator for derived types.
- **pipeline**: Required. AI pipeline settings
  - **arguments**: Optional. Arguments to each operation in the AI pipeline.

#### MediaKind.EncoderPreset

- **@odata.type**: Required. The discriminator for derived types.
- **advancedSettingsName**: Optional. Name of the advanced settings configuration to apply to this transform's config.
- **config**: Required. The configuration for the custom preset.
- **presetName**: Required. Name of this preset.
- **relativePriority**: Optional. Defaults to Normal. Sets the relative priority of the TransformOutputs within a Transform.
