Skip to content
v2.274.0

Experimental

@aws-cdk/aws-medialive-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.

InputConfiguration Class ​

Defines the input configuration for a MediaLive Input.

Use the static factory methods to create the appropriate configuration for your input type.

Example ​

ts
declare const stack: Stack;
declare const passphrase: secretsmanager.ISecret;

const sg = new medialive.InputSecurityGroup(stack, 'SrtSg', {
  allowlistRules: ['203.0.113.0/24'],
});

new medialive.Input(stack, 'SrtListenerInput', {
  inputName: 'srt-listener',
  input: medialive.InputConfiguration.srtListener({
    inputSecurityGroups: [sg],
    minimumLatency: Duration.millis(500),
    streamId: 'my-stream-id',
    decryption: {
      algorithm: medialive.SrtDecryptionAlgorithm.AES256,
      passphraseSecret: passphrase,
    },
  }),
});

Methods ​

cdi(props: CdiInputProps): InputConfiguration // chainable@staticmethod def cdi(props: CdiInputProps) -> InputConfigurationpublic static InputConfiguration cdi(CdiInputProps props)public static InputConfiguration Cdi(CdiInputProps props)func Cdi(Props CdiInputProps) InputConfigurationstatic#
Create a CDI (uncompressed) input delivered into a VPC.

MediaLive creates network interfaces in the supplied subnets and hands back the CDI push endpoints. The required EC2 permissions are granted to the role automatically.

inputDevice(props: InputDeviceInputProps): InputConfiguration // chainable@staticmethod def input_device(props: InputDeviceInputProps) -> InputConfigurationpublic static InputConfiguration inputDevice(InputDeviceInputProps props)public static InputConfiguration InputDevice(InputDeviceInputProps props)func InputDevice(Props InputDeviceInputProps) InputConfigurationstatic#
Create an Elemental Link input from one or two registered Link device IDs.
mediaConnect(props: MediaConnectInputProps): InputConfiguration // chainable@staticmethod def media_connect(props: MediaConnectInputProps) -> InputConfigurationpublic static InputConfiguration mediaConnect(MediaConnectInputProps props)public static InputConfiguration MediaConnect(MediaConnectInputProps props)func MediaConnect(Props MediaConnectInputProps) InputConfigurationstatic#
Create a MediaConnect flow input configuration.
example
ts
   declare const role: iam.IRole;
   declare const flow: mediaconnect.IFlowRef;

   InputConfiguration.mediaConnect({
     flows: [flow],
     role,
   });
mediaConnectRouter(props?: MediaConnectRouterInputProps): InputConfiguration // chainable@staticmethod def media_connect_router(props: typing.Optional[MediaConnectRouterInputProps] = None) -> InputConfigurationpublic static InputConfiguration mediaConnectRouter(MediaConnectRouterInputProps props)public static InputConfiguration MediaConnectRouter(MediaConnectRouterInputProps? props = null)func MediaConnectRouter(Props MediaConnectRouterInputProps) InputConfigurationstatic#
Create a MediaConnect router input configuration.
example
ts
   // Redundant pipelines with explicit AZs
   InputConfiguration.mediaConnectRouter({
     availabilityZones: ['us-east-1a', 'us-east-1b'],
   });
mp4File(sources: InputSource[]): InputConfiguration // chainable@staticmethod def mp4_file(sources: typing.List[InputSource]) -> InputConfigurationpublic static InputConfiguration mp4File(List<InputSource> sources)public static InputConfiguration Mp4File(InputSource[] sources)func Mp4File(Sources *[]InputSource) InputConfigurationstatic#
Create an MP4 file pull input.
multicast(props: MulticastInputProps): InputConfiguration // chainable@staticmethod def multicast(props: MulticastInputProps) -> InputConfigurationpublic static InputConfiguration multicast(MulticastInputProps props)public static InputConfiguration Multicast(MulticastInputProps props)func Multicast(Props MulticastInputProps) InputConfigurationstatic#
Create a multicast input.

Requires anywhereSettings on the channel.

rtmpPull(sources: InputSource[]): InputConfiguration // chainable@staticmethod def rtmp_pull(sources: typing.List[InputSource]) -> InputConfigurationpublic static InputConfiguration rtmpPull(List<InputSource> sources)public static InputConfiguration RtmpPull(InputSource[] sources)func RtmpPull(Sources *[]InputSource) InputConfigurationstatic#
Create an RTMP pull input.
rtmpPush(props: PushInputProps): InputConfiguration // chainable@staticmethod def rtmp_push(props: PushInputProps) -> InputConfigurationpublic static InputConfiguration rtmpPush(PushInputProps props)public static InputConfiguration RtmpPush(PushInputProps props)func RtmpPush(Props PushInputProps) InputConfigurationstatic#
Create an RTMP push input.
example
ts
   declare const securityGroup: InputSecurityGroup;

   InputConfiguration.rtmpPush({
     inputSecurityGroups: [securityGroup],
   });
rtpPush(props: PushInputProps): InputConfiguration // chainable@staticmethod def rtp_push(props: PushInputProps) -> InputConfigurationpublic static InputConfiguration rtpPush(PushInputProps props)public static InputConfiguration RtpPush(PushInputProps props)func RtpPush(Props PushInputProps) InputConfigurationstatic#
Create an RTP push input.
sdi(sources: ISdiSource[]): InputConfiguration // chainable@staticmethod def sdi(sources: typing.List[ISdiSource]) -> InputConfigurationpublic static InputConfiguration sdi(List<ISdiSource> sources)public static InputConfiguration Sdi(ISdiSource[] sources)func Sdi(Sources *[]ISdiSource) InputConfigurationstatic#
Create an SDI input configuration.
smpte2110ReceiverGroup(props: Smpte2110InputProps): InputConfiguration // chainable@staticmethod def smpte2110_receiver_group(props: Smpte2110InputProps) -> InputConfigurationpublic static InputConfiguration smpte2110ReceiverGroup(Smpte2110InputProps props)public static InputConfiguration Smpte2110ReceiverGroup(Smpte2110InputProps props)func Smpte2110ReceiverGroup(Props Smpte2110InputProps) InputConfigurationstatic#
Create a SMPTE 2110 receiver group input.

Requires anywhereSettings on the channel.

srtCaller(sources: SrtCallerSourceProps[]): InputConfiguration // chainable@staticmethod def srt_caller(sources: typing.List[SrtCallerSourceProps]) -> InputConfigurationpublic static InputConfiguration srtCaller(List<SrtCallerSourceProps> sources)public static InputConfiguration SrtCaller(SrtCallerSourceProps[] sources)func SrtCaller(Sources *[]SrtCallerSourceProps) InputConfigurationstatic#
Create an SRT caller input configuration.
example
ts
   InputConfiguration.srtCaller([{
     srtListenerAddress: '10.0.0.1',
     srtListenerPort: 5000,
   }]);
srtListener(props: SrtListenerInputProps): InputConfiguration // chainable@staticmethod def srt_listener(props: SrtListenerInputProps) -> InputConfigurationpublic static InputConfiguration srtListener(SrtListenerInputProps props)public static InputConfiguration SrtListener(SrtListenerInputProps props)func SrtListener(Props SrtListenerInputProps) InputConfigurationstatic#
Create an SRT listener input configuration.
tsFile(sources: InputSource[]): InputConfiguration // chainable@staticmethod def ts_file(sources: typing.List[InputSource]) -> InputConfigurationpublic static InputConfiguration tsFile(List<InputSource> sources)public static InputConfiguration TsFile(InputSource[] sources)func TsFile(Sources *[]InputSource) InputConfigurationstatic#
Create a TS file pull input.
udpPush(props: PushInputProps): InputConfiguration // chainable@staticmethod def udp_push(props: PushInputProps) -> InputConfigurationpublic static InputConfiguration udpPush(PushInputProps props)public static InputConfiguration UdpPush(PushInputProps props)func UdpPush(Props PushInputProps) InputConfigurationstatic#
Create a UDP push input.
urlPull(sources: InputSource[]): InputConfiguration // chainable@staticmethod def url_pull(sources: typing.List[InputSource]) -> InputConfigurationpublic static InputConfiguration urlPull(List<InputSource> sources)public static InputConfiguration UrlPull(InputSource[] sources)func UrlPull(Sources *[]InputSource) InputConfigurationstatic#
Create a URL pull input for HLS or TS streams.
example
ts
   InputConfiguration.urlPull([
     InputSource.url('https://example.com/stream.m3u8'),
   ]);