MediaTailor / Client / create_program

create_program#

MediaTailor.Client.create_program(**kwargs)#

Creates a program within a channel. For information about programs, see Working with programs in the MediaTailor User Guide.

See also: AWS API Documentation

Request Syntax

response = client.create_program(
    AdBreaks=[
        {
            'MessageType': 'SPLICE_INSERT'|'TIME_SIGNAL',
            'OffsetMillis': 123,
            'Slate': {
                'SourceLocationName': 'string',
                'VodSourceName': 'string'
            },
            'SpliceInsertMessage': {
                'AvailNum': 123,
                'AvailsExpected': 123,
                'SpliceEventId': 123,
                'UniqueProgramId': 123
            },
            'TimeSignalMessage': {
                'SegmentationDescriptors': [
                    {
                        'SegmentNum': 123,
                        'SegmentationEventId': 123,
                        'SegmentationTypeId': 123,
                        'SegmentationUpid': 'string',
                        'SegmentationUpidType': 123,
                        'SegmentsExpected': 123,
                        'SubSegmentNum': 123,
                        'SubSegmentsExpected': 123
                    },
                ]
            }
        },
    ],
    ChannelName='string',
    LiveSourceName='string',
    ProgramName='string',
    ScheduleConfiguration={
        'ClipRange': {
            'EndOffsetMillis': 123
        },
        'Transition': {
            'DurationMillis': 123,
            'RelativePosition': 'BEFORE_PROGRAM'|'AFTER_PROGRAM',
            'RelativeProgram': 'string',
            'ScheduledStartTimeMillis': 123,
            'Type': 'string'
        }
    },
    SourceLocationName='string',
    VodSourceName='string'
)
Parameters:
  • AdBreaks (list) –

    The ad break configuration settings.

    • (dict) –

      Ad break configuration parameters.

      • MessageType (string) –

        The SCTE-35 ad insertion type. Accepted value: SPLICE_INSERT, TIME_SIGNAL.

      • OffsetMillis (integer) –

        How long (in milliseconds) after the beginning of the program that an ad starts. This value must fall within 100ms of a segment boundary, otherwise the ad break will be skipped.

      • Slate (dict) –

        Ad break slate configuration.

        • SourceLocationName (string) –

          The name of the source location where the slate VOD source is stored.

        • VodSourceName (string) –

          The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate.

      • SpliceInsertMessage (dict) –

        This defines the SCTE-35 splice_insert() message inserted around the ad. For information about using splice_insert(), see the SCTE-35 specficiaiton, section 9.7.3.1.

        • AvailNum (integer) –

          This is written to splice_insert.avail_num, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 0. Values must be between 0 and 256, inclusive.

        • AvailsExpected (integer) –

          This is written to splice_insert.avails_expected, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 0. Values must be between 0 and 256, inclusive.

        • SpliceEventId (integer) –

          This is written to splice_insert.splice_event_id, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 1.

        • UniqueProgramId (integer) –

          This is written to splice_insert.unique_program_id, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 0. Values must be between 0 and 256, inclusive.

      • TimeSignalMessage (dict) –

        Defines the SCTE-35 time_signal message inserted around the ad.

        Programs on a channel’s schedule can be configured with one or more ad breaks. You can attach a splice_insert SCTE-35 message to the ad break. This message provides basic metadata about the ad break.

        See section 9.7.4 of the 2022 SCTE-35 specification for more information.

        • SegmentationDescriptors (list) –

          The configurations for the SCTE-35 segmentation_descriptor message(s) sent with the time_signal message.

          • (dict) –

            The segmentation_descriptor message can contain advanced metadata fields, like content identifiers, to convey a wide range of information about the ad break. MediaTailor writes the ad metadata in the egress manifest as part of the EXT-X-DATERANGE or EventStream ad marker’s SCTE-35 data.

            segmentation_descriptor messages must be sent with the time_signal message type.

            See the segmentation_descriptor() table of the 2022 SCTE-35 specification for more information.

            • SegmentNum (integer) –

              The segment number to assign to the segmentation_descriptor.segment_num message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0.

            • SegmentationEventId (integer) –

              The Event Identifier to assign to the segmentation_descriptor.segmentation_event_id message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is 1.

            • SegmentationTypeId (integer) –

              The Type Identifier to assign to the segmentation_descriptor.segmentation_type_id message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 48.

            • SegmentationUpid (string) –

              The Upid to assign to the segmentation_descriptor.segmentation_upid message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a hexadecimal string containing only the characters 0 though 9 and A through F. The default value is “” (an empty string).

            • SegmentationUpidType (integer) –

              The Upid Type to assign to the segmentation_descriptor.segmentation_upid_type message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 14.

            • SegmentsExpected (integer) –

              The number of segments expected, which is assigned to the segmentation_descriptor.segments_expectedS message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0.

            • SubSegmentNum (integer) –

              The sub-segment number to assign to the segmentation_descriptor.sub_segment_num message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The defualt value is null.

            • SubSegmentsExpected (integer) –

              The number of sub-segments expected, which is assigned to the segmentation_descriptor.sub_segments_expected message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is null.

  • ChannelName (string) –

    [REQUIRED]

    The name of the channel for this Program.

  • LiveSourceName (string) – The name of the LiveSource for this Program.

  • ProgramName (string) –

    [REQUIRED]

    The name of the Program.

  • ScheduleConfiguration (dict) –

    [REQUIRED]

    The schedule configuration settings.

    • ClipRange (dict) –

      Program clip range configuration.

      • EndOffsetMillis (integer) – [REQUIRED]

        The end offset of the clip range, in milliseconds, starting from the beginning of the VOD source associated with the program.

    • Transition (dict) – [REQUIRED]

      Program transition configurations.

      • DurationMillis (integer) –

        The duration of the live program in seconds.

      • RelativePosition (string) – [REQUIRED]

        The position where this program will be inserted relative to the RelativePosition.

      • RelativeProgram (string) –

        The name of the program that this program will be inserted next to, as defined by RelativePosition.

      • ScheduledStartTimeMillis (integer) –

        The date and time that the program is scheduled to start, in epoch milliseconds.

      • Type (string) – [REQUIRED]

        Defines when the program plays in the schedule. You can set the value to ABSOLUTE or RELATIVE.

        ABSOLUTE - The program plays at a specific wall clock time. This setting can only be used for channels using the LINEAR PlaybackMode.

        Note the following considerations when using ABSOLUTE transitions:

        If the preceding program in the schedule has a duration that extends past the wall clock time, MediaTailor truncates the preceding program on a common segment boundary.

        If there are gaps in playback, MediaTailor plays the FillerSlate you configured for your linear channel.

        RELATIVE - The program is inserted into the schedule either before or after a program that you specify via RelativePosition.

  • SourceLocationName (string) –

    [REQUIRED]

    The name of the source location.

  • VodSourceName (string) – The name that’s used to refer to a VOD source.

Return type:

dict

Returns:

Response Syntax

{
    'AdBreaks': [
        {
            'MessageType': 'SPLICE_INSERT'|'TIME_SIGNAL',
            'OffsetMillis': 123,
            'Slate': {
                'SourceLocationName': 'string',
                'VodSourceName': 'string'
            },
            'SpliceInsertMessage': {
                'AvailNum': 123,
                'AvailsExpected': 123,
                'SpliceEventId': 123,
                'UniqueProgramId': 123
            },
            'TimeSignalMessage': {
                'SegmentationDescriptors': [
                    {
                        'SegmentNum': 123,
                        'SegmentationEventId': 123,
                        'SegmentationTypeId': 123,
                        'SegmentationUpid': 'string',
                        'SegmentationUpidType': 123,
                        'SegmentsExpected': 123,
                        'SubSegmentNum': 123,
                        'SubSegmentsExpected': 123
                    },
                ]
            }
        },
    ],
    'Arn': 'string',
    'ChannelName': 'string',
    'ClipRange': {
        'EndOffsetMillis': 123
    },
    'CreationTime': datetime(2015, 1, 1),
    'DurationMillis': 123,
    'LiveSourceName': 'string',
    'ProgramName': 'string',
    'ScheduledStartTime': datetime(2015, 1, 1),
    'SourceLocationName': 'string',
    'VodSourceName': 'string'
}

Response Structure

  • (dict) –

    • AdBreaks (list) –

      The ad break configuration settings.

      • (dict) –

        Ad break configuration parameters.

        • MessageType (string) –

          The SCTE-35 ad insertion type. Accepted value: SPLICE_INSERT, TIME_SIGNAL.

        • OffsetMillis (integer) –

          How long (in milliseconds) after the beginning of the program that an ad starts. This value must fall within 100ms of a segment boundary, otherwise the ad break will be skipped.

        • Slate (dict) –

          Ad break slate configuration.

          • SourceLocationName (string) –

            The name of the source location where the slate VOD source is stored.

          • VodSourceName (string) –

            The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate.

        • SpliceInsertMessage (dict) –

          This defines the SCTE-35 splice_insert() message inserted around the ad. For information about using splice_insert(), see the SCTE-35 specficiaiton, section 9.7.3.1.

          • AvailNum (integer) –

            This is written to splice_insert.avail_num, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 0. Values must be between 0 and 256, inclusive.

          • AvailsExpected (integer) –

            This is written to splice_insert.avails_expected, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 0. Values must be between 0 and 256, inclusive.

          • SpliceEventId (integer) –

            This is written to splice_insert.splice_event_id, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 1.

          • UniqueProgramId (integer) –

            This is written to splice_insert.unique_program_id, as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is 0. Values must be between 0 and 256, inclusive.

        • TimeSignalMessage (dict) –

          Defines the SCTE-35 time_signal message inserted around the ad.

          Programs on a channel’s schedule can be configured with one or more ad breaks. You can attach a splice_insert SCTE-35 message to the ad break. This message provides basic metadata about the ad break.

          See section 9.7.4 of the 2022 SCTE-35 specification for more information.

          • SegmentationDescriptors (list) –

            The configurations for the SCTE-35 segmentation_descriptor message(s) sent with the time_signal message.

            • (dict) –

              The segmentation_descriptor message can contain advanced metadata fields, like content identifiers, to convey a wide range of information about the ad break. MediaTailor writes the ad metadata in the egress manifest as part of the EXT-X-DATERANGE or EventStream ad marker’s SCTE-35 data.

              segmentation_descriptor messages must be sent with the time_signal message type.

              See the segmentation_descriptor() table of the 2022 SCTE-35 specification for more information.

              • SegmentNum (integer) –

                The segment number to assign to the segmentation_descriptor.segment_num message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0.

              • SegmentationEventId (integer) –

                The Event Identifier to assign to the segmentation_descriptor.segmentation_event_id message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is 1.

              • SegmentationTypeId (integer) –

                The Type Identifier to assign to the segmentation_descriptor.segmentation_type_id message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 48.

              • SegmentationUpid (string) –

                The Upid to assign to the segmentation_descriptor.segmentation_upid message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a hexadecimal string containing only the characters 0 though 9 and A through F. The default value is “” (an empty string).

              • SegmentationUpidType (integer) –

                The Upid Type to assign to the segmentation_descriptor.segmentation_upid_type message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 14.

              • SegmentsExpected (integer) –

                The number of segments expected, which is assigned to the segmentation_descriptor.segments_expectedS message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0.

              • SubSegmentNum (integer) –

                The sub-segment number to assign to the segmentation_descriptor.sub_segment_num message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The defualt value is null.

              • SubSegmentsExpected (integer) –

                The number of sub-segments expected, which is assigned to the segmentation_descriptor.sub_segments_expected message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is null.

    • Arn (string) –

      The ARN to assign to the program.

    • ChannelName (string) –

      The name to assign to the channel for this program.

    • ClipRange (dict) –

      The clip range configuration settings.

      • EndOffsetMillis (integer) –

        The end offset of the clip range, in milliseconds, starting from the beginning of the VOD source associated with the program.

    • CreationTime (datetime) –

      The time the program was created.

    • DurationMillis (integer) –

      The duration of the live program in milliseconds.

    • LiveSourceName (string) –

      The name of the LiveSource for this Program.

    • ProgramName (string) –

      The name to assign to this program.

    • ScheduledStartTime (datetime) –

      The scheduled start time for this Program.

    • SourceLocationName (string) –

      The name to assign to the source location for this program.

    • VodSourceName (string) –

      The name that’s used to refer to a VOD source.