> **Experimental**
>
> `@aws-cdk/aws-medialive-alpha` is an [**experimental**](/stability) (alpha) package: its API may change in any release, without a major version bump.
# ChannelProps

Properties for creating a MediaLive Channel.

Extends: ChannelProps
Used as props by: Channel

- Stability: [Experimental](/cdk/api/stability.html)
- Source: [`lib/channel.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0-alpha.0/packages/@aws-cdk/aws-medialive-alpha/lib/channel.ts#L333)

## Example

```ts
declare const stack: Stack;
declare const input: medialive.IInput;
declare const bucket: s3.IBucket;
declare const video: medialive.EncodeConfiguration;

new medialive.Channel(stack, 'Channel', {
  inputs: [{
    input,
    audioSelectors: [
      medialive.AudioSelector.byLanguage('eng', 'eng', medialive.AudioLanguageSelectionPolicy.STRICT),
    ],
    captionSelectors: [
      medialive.CaptionSelector.embedded('embedded'),
    ],
    videoSelector: {
      colorSpace: medialive.VideoColorSpace.HDR10,
      colorSpaceUsage: medialive.VideoColorSpaceUsage.FORCE,
      selectBy: medialive.VideoSelection.byProgramId(1),
    },
  }],
  outputGroups: [
    medialive.OutputGroupConfiguration.hls({
      name: 'hls',
      destinations: [medialive.OutputDestination.toBucket(bucket, 'live/stream')],
      outputs: [{ encodes: [video], outputName: 'hls_out' }],
    }),
  ],
});
```

## Properties

- `anywhereSettings`: [AnywhereSettings](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.AnywhereSettings.html) — Anywhere settings for running the channel on AWS Elemental Anywhere.

  **Default:** not an Anywhere channel

- `availBlanking`: [AvailBlanking](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.AvailBlanking.html) — Settings for blanking video, audio, and captions during ad avails.

  **Default:** avail blanking disabled

- `availSettings`: [AvailSettings](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.AvailSettings.html) — Ad avail handling configuration.

  **Default:** no avail configuration

  Defines how SCTE-35 markers are processed.

- `blackoutSlate`: [BlackoutSlate](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.BlackoutSlate.html) — Blackout slate configuration.

  **Default:** blackout slate disabled

  Controls what is displayed during blackout events.

- `channelClass`: [ChannelClass](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.ChannelClass.html) = ChannelClass.SINGLE_PIPELINE — The class of the channel (STANDARD for redundancy, SINGLE_PIPELINE for cost savings).

- `channelEngineVersion`: string — The engine version for the channel.

  **Default:** service default

- `channelName`: string = auto-generated — The name of the channel.

- `channelSecurityGroups`: [IInputSecurityGroupRef](/cdk/api/v2/docs/aws-cdk-lib.interfaces.aws_medialive.IInputSecurityGroupRef.html)[] — Input security groups to associate with the channel.

  **Default:** no channel security groups

  Controls which IP addresses can connect
  to the channel's outputs (pull-style outputs where downstream systems initiate connections).

- `colorCorrections`: [ColorCorrection](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.ColorCorrection.html)[] — Global color correction rules applied to all outputs.

  **Default:** no color corrections

- `featureActivations`: [FeatureActivations](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.FeatureActivations.html) — Feature activations for the channel (e.g. Input Prepare schedule actions).

  **Default:** all features disabled

- `globalConfiguration`: [GlobalConfiguration](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.GlobalConfiguration.html) — Global configuration settings for the channel.

  **Default:** default global configuration

- `inferenceFeedArn`: string — An AWS Elemental Inference feed to send this channel's media to for inference processing.

  **Default:** the channel is not associated to an inference feed

  Future breaking change: this will change when Elemental Inference is released as an L2 construct.

- `inputs`: [InputAttachment](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.InputAttachment.html)[] (required) — The input attachments for this channel.

  At least one is required.
  Additional inputs can be added with `addInput()`.

- `inputSpecification`: [InputSpecification](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.InputSpecification.html) — The input specification for this channel.

  **Default:** InputSpecification.standard() (AVC codec, 20 Mbps max, HD resolution)

  Defines the expected codec, bitrate, and
  resolution of the inputs, and whether they are standard, CDI, or Elemental Link inputs.

- `linkedChannelSettings`: [LinkedChannelSettings](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.LinkedChannelSettings.html) — Linked channel settings for primary/follower channel configurations.

  **Default:** not a linked channel

- `logLevel`: [LogLevel](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.LogLevel.html) = LogLevel.DISABLED — The log level for the channel.

- `maintenance`: [MaintenanceSettings](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.MaintenanceSettings.html) — Maintenance window configuration for the channel.

  **Default:** default maintenance window

- `motionGraphicsConfiguration`: [MotionGraphicsConfiguration](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.MotionGraphicsConfiguration.html) — Motion graphics overlay configuration.

  **Default:** motion graphics disabled

- `nielsenConfiguration`: [NielsenConfiguration](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.NielsenConfiguration.html) — Nielsen watermark configuration.

  **Default:** no Nielsen configuration

- `outputGroups`: [OutputGroupConfiguration](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.OutputGroupConfiguration.html)[] (required) — The initial output groups for this channel. At least one is required. Additional output groups can be added with `addOutputGroup()`.

  A single channel can contain multiple output groups with different codecs
  (e.g. H.264 and H.265 ladders) sharing the same input.

- `role`: [IRole](/cdk/api/v2/docs/aws-cdk-lib.aws_iam.IRole.html) — The IAM role for MediaLive to assume when running this channel.

  **Default:** a role is auto-created with confused-deputy prevention

  [disable-awslint:prefer-ref-interface]

- `scte35SegmentationScope`: [Scte35SegmentationScope](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.Scte35SegmentationScope.html) — Which output groups receive SCTE-35 segmentation cues.

  **Default:** service default

- `tags`: { [key: string]: string } — Tags to add to the channel.

  **Default:** no tags

- `thumbnailConfiguration`: [ThumbnailConfiguration](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.ThumbnailConfiguration.html) — Thumbnail generation configuration.

  **Default:** thumbnails disabled

- `timecodeConfig`: [TimecodeConfig](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.TimecodeConfig.html) — Timecode configuration for the channel.

  **Default:** EMBEDDED source, no sync threshold

- `vpc`: [VpcOutputSettings](/cdk/api/v2/docs/@aws-cdk_aws-medialive-alpha.VpcOutputSettings.html) — VPC output settings.

  **Default:** no VPC (outputs use public endpoints)

  When set, all output endpoints are created in the specified VPC.
