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'),
]);