openapi: 3.2.0 info: title: Istreamplanet Channel Operations for Organization API version: v1.52.0 contact: email: live-control-plane-devs@wbd.com name: ChannelAPI Support url: https://warnermedia.enterprise.slack.com/archives/C0648UND8SD description: 'Operations tagged Channel Operations for Organization across 2 of this provider''s published API definitions: istreamplanet-aventus-channels-openapi.json, istreamplanet-aventus-channels-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - description: prod url: https://api.istreamplanet.com security: - authcode: [] m2m: [] tags: - name: Channel Operations for Organization paths: /v2/{org}/channels/{channel-id}/beta/logs/signaling: get: description: 'Warning: This is deprecated beta functionality and is unstable and may change, break, or be removed in the future without notice. Returns the signalling history for a channel.' operationId: get-org-signal-logs parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string - description: ISO 8601 UTC timestamp for start range of date filtering explode: false in: query name: from schema: description: ISO 8601 UTC timestamp for start range of date filtering format: date-time type: string - description: ISO 8601 UTC timestamp for end range of date filtering explode: false in: query name: to schema: description: ISO 8601 UTC timestamp for end range of date filtering format: date-time type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/SignalingLog' type: - array - 'null' description: OK '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '406': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Acceptable '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Signal Logs tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/dvr-window: delete: description: Clears the DVR window for the channel by removing all video segments in the manifest from before the request. This sets the earliest time a player can rewind to this point. operationId: clear-org-dvr-window parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string responses: '204': description: No Content '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error summary: Clear DVR Window tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/id3: post: description: Inserts the provided UTF-8 text metadata in the output stream embedded in a TXXX frame of a ID3 tag. operationId: insert-org-id3 parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string - description: List of accepted Content-Type headers in: header name: Accept schema: description: List of accepted Content-Type headers type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/InsertMetadataRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/InsertMetadataBody' description: OK '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '408': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Timeout '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '413': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Entity Too Large '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Insert ID3 tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/ingest-pin: delete: description: 'Remove the preferrence for primary or secondary ingest feed from the channel''s transcoder. Automated source failover based on feed quality will be resumed.' operationId: org-unpin-ingest parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string responses: '204': description: No Content '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '406': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Acceptable '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Unpin Ingest tags: - Channel Operations for Organization put: description: 'Pin the channel''s transcoder to prefer either primary or secondary ingest feeds. Note that this will disable some automated ingest failover that is based on the quality of the feeds.' operationId: org-pin-ingest parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PinSourceRequest' required: true responses: '204': description: No Content '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '406': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Acceptable '408': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Timeout '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '413': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Entity Too Large '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Pin Ingest tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/is-breaking-change: put: description: Validates if a configuration change is compatible with downstream services. operationId: org-is-breaking-change parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Channel' description: Channel required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/IsBreakingChangeResponseBody' description: OK '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '408': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Timeout '413': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Entity Too Large '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Validate Breaking Change tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/preview-image: get: description: 'Get a static image of what your channel is outputting. Valid Accept headers are: image/jpeg' operationId: get-org-preview-image parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string - description: List of accepted Content-Type headers in: header name: Accept schema: description: List of accepted Content-Type headers type: string responses: '200': content: application/json: schema: contentEncoding: base64 type: string description: OK headers: Cache-Control: schema: type: string Content-Type: schema: type: string '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '406': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Acceptable '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Get Preview Image tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/preview-streams: get: description: 'Get a default url that links to a preview of the channel. Additionally, all possible video and audio tracks are provided back and can be interchanged in the given url.' operationId: org-preview-streams parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetPreviewStreamsResponse' description: OK '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '406': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Acceptable '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Get Preview Streams tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/rotate-key: put: description: Rotate the keys for a channel operationId: org-rotate-key parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string responses: '204': description: No Content '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Rotate Key tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/scte35: post: description: Inserts a SCTE-35 formatted binary payload into the channel. operationId: insert-org-scte35 parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Scte35' required: true responses: '204': description: No Content '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '408': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Timeout '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '413': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Entity Too Large '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Insert SCTE-35 tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/signals: get: description: Returns the active signals for a channel. operationId: get-org-signals parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/Segment' type: - array - 'null' description: OK '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '406': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Acceptable '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Get Signals tags: - Channel Operations for Organization post: description: 'Inserts an out-of-band signal into a channel. A signal represents a program signal like chapter-start or ad-end. Signals operate on signaling segments. For example, a chapter-start will result in a new active Chapter segment, while a chapter-end with the same event_id will end it. Signals loosely map to SCTE-35 time_signals and splice_inserts. The breakaway and resumption signal types are only valid with program segments. The required event_id identifies the active signaling segment. Use the same event_id for both start and end to reference the same segment. Delivery restrictions may be supplied on a signal with the delivery_restrictions field. The device_restrictions value may be undefined, none, restrict_group0, restrict_group1, or restrict_group2. ### Program Start Inserts a SCTE-35 program start message into the channel with the given event ID. Corresponding calls to end the program must use the same event ID. Example input body: ```json [ { "event_id": 0, "segment_type": "program", "signal_type": "start" } ] ``` ### Program End Inserts a SCTE-35 program end message into the channel with the given event ID. The event ID must match the one given during program start. Example input body: ```json [ { "event_id": 0, "segment_type": "program", "signal_type": "end" } ] ``` ### Slate In Replaces the current video source with a video slate. An optional duration may be passed to automatically remove the slate after some time, otherwise the slate will remain until removed via a slate out signal. The following table describes how video slates are supported and recommended attributes. Image slates are **NOT** supported. Attribute Supported Recommended Max File Size 100MB (104,857,600 bytes) Total Duration Minimum: 3s 10-30s Container MPEG-TS Resolution (Recommended) Up to 4k (2160p) 720p Framerate 25i, 25p, 29.97i, 30p, 60p 30p Video Codec - H.264 - H.265 - MPEG2 H.264 Main or High profile Audio Codec - AAC-LC - AC-3 - E-AC-3 - MPEG1|2 Audio 48KHz AAC-LC Additional slate requirements: The slate MUST contain at least 3 seconds of supported audio and video. The delta between the duration of audio and video MUST be less than 3 seconds. The delta between the timestamps of the first audio and the first video samples MUST be less than 3 seconds. Audio and video duration measurement begins after the first IDR in the file. The MPEG2TS PMT MUST NOT change for the duration of the file. Ex. PIDs, audio codec, video codec, etc. must be the same throughout. Example input body: ```json [ { "event_id": 0, "segment_type": "slate", "signal_type": "start", "slate_uri": "https://example.com/slate.ts" } ] ``` ### Slate Out Removes any active slate and shows the source video content. Example input body: ```json [ { "event_id": 0, "segment_type": "slate", "signal_type": "end" } ] ``` ### Splice Insert Start Inserts a splice opportunity into the channel for a given duration. Can optionally include UPIDs and a slate URL to select the content to splice into the channel. Example input body: ```json [ { "event_id": 0, "segment_type": "splice_insert", "signal_type": "start", "duration": 25000, "slate_uri": "https://example.com/slate.ts" } ] ``` ### Splice Insert End Removes an active splice signaling segment from the channel. Example input body: ```json [ { "event_id": 0, "segment_type": "splice_insert", "signal_type": "end" } ] ```' operationId: post-org-signals parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string requestBody: content: application/json: schema: items: $ref: '#/components/schemas/GenericSignal' type: - array - 'null' required: true responses: '207': content: application/json: schema: items: $ref: '#/components/schemas/GenericSignalResult' type: - array - 'null' description: Multi-Status '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '408': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Timeout '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '413': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Entity Too Large '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable '504': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Gateway Timeout summary: Generic Signal tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/transcoder-dynamic-state: put: description: Set the dynamic state for a transcoder. operationId: org-set-transcoder-dynamic-state parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/SetDynamicStateRequest' required: true responses: '204': description: No Content '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '408': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Timeout '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '413': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Request Entity Too Large '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Set Dynamic State tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com /v2/{org}/channels/{channel-id}/transcoder-status: get: description: Get the current status for the live transcoder powering the channel. operationId: org-get-transcoder-status parameters: - description: Organization name in: path name: org required: true schema: description: Organization name type: string - description: Unique channel identifier in: path name: channel-id required: true schema: description: Unique channel identifier maxLength: 60 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Status' description: OK '400': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Bad Request '404': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Found '409': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Conflict '422': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Unprocessable Entity '424': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Failed Dependency '499': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' '500': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Internal Server Error '501': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Not Implemented '503': content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Service Unavailable summary: Get Transcoder Status tags: - Channel Operations for Organization servers: - description: prod url: https://api.istreamplanet.com components: schemas: SourceStatusStreamInfo: additionalProperties: false properties: mapped: description: Indicates whether the stream is being used by the transcoder. The remaining fields are only valid if 'mapped' is true. type: boolean pid: format: int32 minimum: 0 type: integer raw_type: description: The type of the stream as reported in the PMT. enum: - MP2T_STREAM_TYPE_MPEG1_VIDEO - MP2T_STREAM_TYPE_MPEG2_VIDEO - MP2T_STREAM_TYPE_MPEG1_AUDIO - MP2T_STREAM_TYPE_MPEG2_AUDIO - MP2T_STREAM_TYPE_PES_PRIVATE_DATA - MP2T_STREAM_TYPE_ADTS_AAC - MP2T_STREAM_TYPE_METADATA - MP2T_STREAM_TYPE_AVC - MP2T_STREAM_TYPE_HEVC - MP2T_STREAM_TYPE_TEMI - MP2T_STREAM_TYPE_AC3 - MP2T_STREAM_TYPE_SCTE35 - MP2T_STREAM_TYPE_EAC3 - MP2T_STREAM_TYPE_ENCRYPTED_AC3 - MP2T_STREAM_TYPE_ENCRYPTED_EAC3 - MP2T_STREAM_TYPE_ENCRYPTED_ADTS_AAC - MP2T_STREAM_TYPE_ENCRYPTED_AVC - MP2T_STREAM_TYPE_ID3 - MP2T_STREAM_TYPE_ANC - MP2T_STREAM_TYPE_UNKNOWN type: string type: description: The type of the stream inferred by the demuxer. Includes MP2TStreamType's pseudo-types values. It is not guaranteed to be the same value reported in the PMT. E.g. MP2T_STREAM_TYPE_PES_PRIVATE_DATA plus the right descriptor might result in MP2T_STREAM_TYPE_ID3. enum: - MP2T_STREAM_TYPE_MPEG1_VIDEO - MP2T_STREAM_TYPE_MPEG2_VIDEO - MP2T_STREAM_TYPE_MPEG1_AUDIO - MP2T_STREAM_TYPE_MPEG2_AUDIO - MP2T_STREAM_TYPE_PES_PRIVATE_DATA - MP2T_STREAM_TYPE_ADTS_AAC - MP2T_STREAM_TYPE_METADATA - MP2T_STREAM_TYPE_AVC - MP2T_STREAM_TYPE_HEVC - MP2T_STREAM_TYPE_TEMI - MP2T_STREAM_TYPE_AC3 - MP2T_STREAM_TYPE_SCTE35 - MP2T_STREAM_TYPE_EAC3 - MP2T_STREAM_TYPE_ENCRYPTED_AC3 - MP2T_STREAM_TYPE_ENCRYPTED_EAC3 - MP2T_STREAM_TYPE_ENCRYPTED_ADTS_AAC - MP2T_STREAM_TYPE_ENCRYPTED_AVC - MP2T_STREAM_TYPE_ID3 - MP2T_STREAM_TYPE_ANC - MP2T_STREAM_TYPE_UNKNOWN type: string video: $ref: '#/components/schemas/VideoStreamDetails' description: Only one of ['video'] may be set. type: object DeliveryRestrictions: additionalProperties: false properties: archive_allowed: type: boolean device_restrictions: enum: - undefined - none - restrict_group0 - restrict_group1 - restrict_group2 type: string no_regional_blackout: type: boolean web_delivery_allowed: type: boolean type: object PinSourceRequest: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/PinSourceRequest.json format: uri readOnly: true type: string ingest_origin: description: Which ingest origin to pin the transcoder to. enum: - PRIMARY - SECONDARY type: string type: object SourceStatusPmt: additionalProperties: false properties: last_update: description: The time that the PMT was updated. format: date-time type: string pcr_pid: format: int32 minimum: 0 type: integer pid: format: int32 minimum: 0 type: integer program_number: description: The following fields correspond to fields in github.com/iStreamPlanet/go-media/mp2t.PMT format: int32 minimum: 0 type: integer streams: items: $ref: '#/components/schemas/SourceStatusStreamInfo' type: - array - 'null' type: object SignalingLog: additionalProperties: false properties: log: $ref: '#/components/schemas/LogData' status: type: string timestamp: format: date-time type: string required: - log - status - timestamp type: object Channel: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/Channel.json format: uri readOnly: true type: string created: description: Date and time the channel was created. format: date-time readOnly: true type: string description: description: A human-readable description of the channel. type: string desired_state: description: Desired running state for a channel. enum: - 'ON' - 'OFF' type: string enable_byoip: description: Indicates whether the channel's transcoder needs to run in a designated IP range. type: boolean id: description: External Channel ID provided at channel creation time examples: - my-channel minLength: 1 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ readOnly: true type: string ingest: $ref: '#/components/schemas/Ingest' description: Ingest configures inputs for the transcoder. labels: description: Optional labels for a channel. Any included labels must be at least 1 character long, but no greater than 256 characters. The maximum number of labels is 50. items: type: string maxItems: 50 type: - array - 'null' modified: description: Date and time the channel was last modified. format: date-time readOnly: true type: string name: description: A friendly human-readable name for the channel. This will get displayed in user interfaces. examples: - My Channel type: string organization: minLength: 1 type: string packaging: $ref: '#/components/schemas/Packaging' description: Packaging configures media format and content protection settings. publishing: $ref: '#/components/schemas/Publishing' description: Publishing configures playlist formats and where to send video and playlist data. region: description: Region represents the general geolocation for transcoding and stream egress from iStreamPlanet. If no region is provided at channel creation time, then 'US_WEST' is used. enum: - US_WEST - US_EAST type: string resource_class: description: If the ResourceClass is unspecified the channel will default to run in the 'DYNAMIC' ResourceClass. Note that changing the ResourceClass for a running channel is supported and will be performed with no downtime. enum: - DYNAMIC - STATIC type: string self: description: Self link for the channel. format: uri-reference readOnly: true type: string signaling: $ref: '#/components/schemas/Signaling' description: Signaling configures in-band signaling (i.e. SCTE-35). tags: $ref: '#/components/schemas/Tags' description: Use ChannelMetadata when possible instead of tags. transcode: $ref: '#/components/schemas/Transcode' description: Transcode configures audio/video conversion settings. required: - ingest - transcode type: object OriginManifestDefaults: additionalProperties: false properties: dash_signaling_formats: description: DASH Signaling formats specifies which SCTE-35 timeline marker formatting to use when rendering DASH manifests. items: enum: - SCTE35_SPLICE_INFO_SECTION - SCTE35_BIN type: string type: - array - 'null' uniqueItems: true drm_system_ids: description: 'Specify which DRMs to advertise in the playlist. If specified, this must be a subset of the DRMs specified by the packager associated with this origin. If omitted or empty, all DRMs specified by the packager will be advertised. Only honored for Alternate Manifests. Example: ''81376844-f976-481e-a84e-cc25d39b0b33'' for bulk file encryption ID' items: type: string type: - array - 'null' uniqueItems: true duration_seconds: description: Duration is the length of content that will be included in the manifest, in seconds. The max supported DVR window is 12 hours. If not specified, the default duration will be 30 seconds. format: int32 maximum: 43200 minimum: 0 type: integer enable_hls_delta_updates: description: When true enables HLS Delta updates for this particular origin. type: boolean encoder_ids: description: Specify which encoders (video, audio, thumbnail) should be used for this origin manifest. If none are specified, all video encoders configured for the origin will be used. Only honored for Alternate Manifests. items: type: string type: - array - 'null' uniqueItems: true hls_signaling_formats: description: HLS signaling formats specifies which SCTE-35 timeline marker formatting to use when rendering playlists. items: enum: - APPLE_SCTE35 - AD_SIMPLE - SCTE35 type: string type: - array - 'null' uniqueItems: true media_url_type: description: Allows specifying url type for HLS media playlists and DASH manifests. If not provided, playlist generation will use 'RELATIVE'. enum: - RELATIVE - ABSOLUTE - HOST_RELATIVE type: string minimum_update_period_seconds: description: Sets the minimumUpdatePeriod field in MPD to be this value. If set to 0 (default), segment duration is used. The value shall not exceed the 'suggested_presentation_delay_secs'. format: int32 minimum: 0 type: integer multi_variant_url_type: description: Allows specifying url type for HLS multi-variant playlists. If not provided, playlist generation will use 'RELATIVE'. enum: - RELATIVE - ABSOLUTE - HOST_RELATIVE type: string pdt_on_every_segment: description: 'When true a #EXT-X-PROGRAM-DATE-TIME tag will be placed on every media segment in HLS media playlists. When false, the default behavior, the PDT tag is set according to the HLS specification.' type: boolean pre_start_duration_seconds: description: Pre Start Duration is the length of content that will be included in the manifest when the start time of a manifest is in the future. When a manifest is near the start time but does not contain 'pre_start_duration_seconds' content Manifest Origin will keep content before the start time to make the manifest length at least 'pre_start_duration_seconds'. If not specified requesting a manifest in the future will result in a 404. format: int32 maximum: 43200 minimum: 0 type: integer suggested_presentation_delay_seconds: description: Sets the suggestedPresentationDelay field in MPD to be this value. This value must be greater or equal to 'minimum_update_period_secs'. If unset, the default value will be calculated as 3 * segment target duration. format: int32 minimum: 0 type: integer type: object Ingest: additionalProperties: false properties: slate: additionalProperties: false properties: source_loss_url: description: Source loss URL defines the location of the TS file to play when no source is available. It must have one audio and one video stream. Either MPEG2 or H.264 can be used. examples: - https://example.com/slate.ts format: uri-reference type: string type: object source: additionalProperties: false properties: audio_sources: items: additionalProperties: false properties: id: minLength: 1 type: string language: description: RFC 5646, e.g. 'en' 'en-US' minLength: 1 type: string license: description: License specifies how the audio in this source is licensed. If license is not AUDIO_LICENSE_UNSPECIFIED, any remapped AudioSource which names this AudioSource in its remapping table must have the same license value as this AudioSource. enum: - LIVE - REPLAY type: string name: description: Language fiendly name, e.g. 'English', 'Spanish' minLength: 1 type: string remapping: additionalProperties: false properties: back_left: additionalProperties: false properties: audio_source_id: description: Identifies the ID of the elementary audio source from which this channel will be sourced. minLength: 1 type: string channel_index: description: 'Identifies the zero-based channel index within the audio decoded from audio_source_id which is used for this channel mapping. If this index is out of bounds, the audio for this channel will be silent. For SMPTE-302M inputs, channel indices are always in the range 0-8 (unless the Aventus-specific extension for carrying more than 8 channels in one elementary stream is in use) and name the Nth channel of the input. I.e., the base channel index indicated by the input stream is ignored. For non-SMPTE-302M inputs with 1, 2, or 6 channels, the following index-to-channel mapping always applies: - 0 is front left (i.e. the only channel for mono) - 1 is front right - 2 is front center - 3 is LFE - 4 is side left - 5 is side right For non-SMPTE-302M inputs with 3, 4, or 5 channels, no index mapping is guaranteed. For non-SMPTE-302M inputs with more than 6 channels, the index mapping that would be used for 6 channels is guaranteed, and no specific mapping for the other channels is guaranteed.' format: int32 minimum: 0 type: integer type: object back_right: $ref: '#/components/schemas/AudioSourceRemappingSource' front_center: $ref: '#/components/schemas/AudioSourceRemappingSource' front_left: $ref: '#/components/schemas/AudioSourceRemappingSource' front_right: $ref: '#/components/schemas/AudioSourceRemappingSource' low_frequency: $ref: '#/components/schemas/AudioSourceRemappingSource' side_left: $ref: '#/components/schemas/AudioSourceRemappingSource' side_right: $ref: '#/components/schemas/AudioSourceRemappingSource' top_back_left: $ref: '#/components/schemas/AudioSourceRemappingSource' top_back_right: $ref: '#/components/schemas/AudioSourceRemappingSource' top_front_left: $ref: '#/components/schemas/AudioSourceRemappingSource' top_front_right: $ref: '#/components/schemas/AudioSourceRemappingSource' top_side_left: $ref: '#/components/schemas/AudioSourceRemappingSource' top_side_right: $ref: '#/components/schemas/AudioSourceRemappingSource' wide_left: $ref: '#/components/schemas/AudioSourceRemappingSource' wide_right: $ref: '#/components/schemas/AudioSourceRemappingSource' type: object selector: description: Expression for choosing an audio track in the stream for this AudioSource https://wbdstreaming.atlassian.net/wiki/spaces/LIVE/pages/250351679/Proposal+Audio+Track+Selection An AudioSource which specifies a selector is an 'elementary audio source' which corresponds to exactly one elementary stream in the input. type: string type: object minItems: 1 type: - array - 'null' captions_source: description: Closed captions source embedding. If unspecified, defaults to ATSC_A53. enum: - ATSC_A53 - SMPTE_2038 type: string id: description: Unique identifier for this source. examples: - s-examplej95ah2qab type: string self: description: Self link for the source. format: uri-reference type: string video_source: additionalProperties: false properties: dynamic_range: description: The highest dynamic range the source will ever send to the transcoder. enum: - SDR - HDR type: string jpeg_xs: description: If true, the source may be JPEG-XS. Enables allocation of additional resources required to handle the higher bitrate and decode JPEG-XS. If not enabled, JPEG-XS inputs will result in the source-loss slate. type: boolean max_resolution: description: The maximum resolution the source will ever send to the transcoder. enum: - SD - HD - FHD - TwoK - QHD - UHD type: string type: object required: - id type: object required: - source type: object IsBreakingChangeResponseBody: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/IsBreakingChangeResponseBody.json format: uri readOnly: true type: string currentRevision: description: The current revision of the channel. format: int32 type: integer isBreakingChange: description: True if the change will cause a break in user playback. False if the change will not cause a break in user playback or the channel doesn't exist type: boolean required: - currentRevision - isBreakingChange type: object DynamicStateStatus: additionalProperties: false properties: dynamic_state: $ref: '#/components/schemas/DynamicState' description: The transcoder's dynamic state settings. last_update: description: The timestamp of the last update to the dynamic state. format: date-time type: string type: object Tags: additionalProperties: false properties: custom: additionalProperties: type: string description: Custom tags to be added to metrics and logs for this channel. In Datadog, the tags will be prefixed with 'dy_' to avoid collisions with system tags. type: object monitored: description: Indicates whether this channel is monitored by automation. type: boolean type: object Transcode: additionalProperties: false properties: audio_encoders: description: Audio encoders specify audio conversion settings, e.g. channels, samples, codec, bitrate, etc. items: additionalProperties: false properties: ac4: additionalProperties: false properties: drc: additionalProperties: false properties: flat_panel_tv: enum: - DRC_FILM_STANDARD - DRC_FILM_LIGHT - DRC_MUSIC_STANDARD - DRC_MUSIC_LIGHT - DRC_SPEECH examples: - DRC_FILM_STANDARD type: string home_theatre: enum: - DRC_FILM_STANDARD - DRC_FILM_LIGHT - DRC_MUSIC_STANDARD - DRC_MUSIC_LIGHT - DRC_SPEECH examples: - DRC_FILM_STANDARD type: string portable_headphones: enum: - DRC_FILM_STANDARD - DRC_FILM_LIGHT - DRC_MUSIC_STANDARD - DRC_MUSIC_LIGHT - DRC_SPEECH examples: - DRC_FILM_STANDARD type: string portable_speakers: enum: - DRC_FILM_STANDARD - DRC_FILM_LIGHT - DRC_MUSIC_STANDARD - DRC_MUSIC_LIGHT - DRC_SPEECH examples: - DRC_FILM_STANDARD type: string type: object encoding_mode: enum: - ENCODING_MODE_UNSPECIFIED - ENCODING_MODE_EMISSION examples: - ENCODING_MODE_EMISSION type: string type: object audio_source_id: description: Audio source ID specifies which stream within the audio source to use. minLength: 1 type: string bit_rate: description: Bit rate specifies the constant number of bits used per second. Higher values result in better audio quality but bigger file sizes. examples: - 128000 exclusiveMinimum: 1000 format: int32 type: integer channels: description: 'Channels specifies the number of real audio channels to encode. The available options depend on the audio codec. The encoder supports different channel configurations based on the codec; AAC 1-2 channels, AC3 supports 2 or 6, and EAC3 supports 2 or 6. For example, for AC3 5.1 one would set 6 channels. Channel configurations are as follows: 1 - Mono (C) 2 - Stereo / Dolby 2.0 (L, R) 6 - Dolby 5.1 (L, C, R, l, r, LFE) 10 - Dolby 5.1.4 (AC4 only) Dolby Atmos layouts such as 5.1.4 are achieved by setting this field to 6 and configuring ddp_joc_logical_channels in EAC3Settings as desired.' examples: - 2 exclusiveMinimum: 0 format: int32 maximum: 10 type: integer codec: description: Codec specifies the audio data encoding format. enum: - AAC_LC - AC3 - EAC3 - HE_AAC - AC4 type: string eac3: additionalProperties: false properties: ddp_joc_complexity_index: description: Configures the maximum DD+JOC complexity index the content is expected to have. This does not configure the actual encoder, but simply indicates the value that should appear in manifests given to the player. This may only be used when 'ddp_joc_passthrough' is enabled. A legacy default of 10 applies to channels using pure passthrough which do not configure this; hybrid passthrough requires this to be configured explicitly, and additionally requires a value of at least 12 since that's what encoded output will have. When encoding DD+JOC without passthrough, the manifests reflect the actual transcoder output and manual configuration is not permitted. examples: - 12 format: int32 type: integer ddp_joc_logical_channels: description: 'If non-zero, configures the encoder to compute JOC metadata (i.e. Dolby Atmos) for the given logical speaker layout. The transcoder does not guarantee any particular bed layout in the JOC metadata, and this setting currently has no effect on that. It merely determines the channel layout to which all inputs are converted before encoding. Legal values are: 8 - 5.1.2 10 - 5.1.4 For sources with raw PCM input and more than 6 channels, configure this according to the expected input channel layout. For channels which expect to take a 7.1 EAC-3 input, configure to 8. For all other cases, including upmixing from 5.1 or fewer channels or any kind of Atmos input, configure to 10. This setting can be used at the same time as ddp_joc_passthrough to enable ''hybrid passthrough''. In this case, this setting only governs what is used for the case where the input is not already DD+JOC.' examples: - 10 format: int32 type: integer ddp_joc_passthrough: description: Indicates that the source will contain Joint Object Coding metadata (Dolby Atmos) and that the encoder should operate in passthrough mode. https://learning.dolby.com/hc/en-us/articles/4406039180564-Appendix-C-Dolby-Atmos-Delivery-Codecs- When the audio encoder is configured with this setting, the source audio will be repackaged without being decoded and re-encoded. If ddp_joc_logical_channels is not configured and the source is not DD+JOC, it will be replaced with silence. If ddp_joc_logical_channels is configured, the source will be reencoded if it is not DD+JOC and passed through unchanged when it is. The latter case is called 'hybrid passthrough' and also requires configuration of ddp_joc_complexity_index. type: boolean drc_line_mode: description: If specified, overrides the dynamic range control line mode. If unspecified and the source audio is AC-3 or EAC-3, the DRC line mode matches the input. If unspecified and the source audio is any other codec, the encoder uses an unspecified default which may change without notice. enum: - DRC_FILM_STANDARD - DRC_FILM_LIGHT - DRC_MUSIC_STANDARD - DRC_MUSIC_LIGHT - DRC_SPEECH examples: - DRC_FILM_STANDARD type: string drc_rf_mode: description: If specified, overrides the dynamic range control RF mode. If unspecified and the source audio is AC-3 or EAC-3, the DRC RF mode matches the input. If unspecified and the source audio is any other codec, the encoder uses an unspecified default which may change without notice. enum: - DRC_FILM_STANDARD - DRC_FILM_LIGHT - DRC_MUSIC_STANDARD - DRC_MUSIC_LIGHT - DRC_SPEECH examples: - DRC_FILM_STANDARD type: string surround_phase_shift: description: If specified, overrides whether surround phase shift is enabled. If unspecified and the source audio is AC-3 or EAC-3, the surround phase shift mode matches the input. If unspecified and the source audio is any other codec, the encoder uses an unspecified default which may change without notice. enum: - SURROUND_PHASE_SHIFT_ENABLED - SURROUND_PHASE_SHIFT_DISABLED examples: - SURROUND_PHASE_SHIFT_ENABLED type: string type: object id: description: Encoder ID. IDs must be unique for all encoders. This ID is referenced when setting up playlist publishing. examples: - aac128 minLength: 1 type: string loudness: additionalProperties: false properties: dialog_intel: description: Enable Dialog Intelligence. Only supported for (E)AC-3 encoders. This may only be set if lkfs is explicitly configured to -24. type: boolean lkfs: description: Loudness normalization LKFS setting. Default value is -24. format: int32 type: integer peak_limit: description: Peak Limit. The only allowable value is -2.0. This field is soft-deprecated and will be unsupported in a future transcoder version. In the current transcoder version, the values 0.0 and -2.0 both produce the same configuration. format: float type: number type: object sample_rate: description: 'Sample rate specifies the number of audio samples in hertz. The available options depend on the audio codec: AAC-LC supports 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000, 64000, 88200, and 96000. HE-AAC supports 16000, 22050, 24000, 32000, 44100, and 48000. AC3/EAC3 support only 48000.' examples: - 48000 exclusiveMinimum: 0 format: int32 type: integer tag: description: Used by the player to map audio tracks to a quadrant, which represents a single view in a multiview layout. This value is opaque and not used by Aventus. type: string type: object minItems: 1 type: - array - 'null' debug_overlay: deprecated: true description: 'Deprecated: Do not use. Debug_overlay overlays debugging information from the transcoder into the top right of the video output. The overlay is burned into the video and will be visible to end-users if enabled. Do not enable on customer facing channels. Requires a transcoder restart if the state is changed. The default value is false, which disables the overlay. This setting is deprecated in favour of debug_overlays.' type: boolean debug_overlays: additionalProperties: false properties: position: description: Position of the debug overlay within the output frame. enum: - 'OFF' - TOP_LEFT - TOP_RIGHT - BOTTOM_LEFT - BOTTOM_RIGHT type: string type: object dynamic_resources: additionalProperties: additionalProperties: false properties: type: description: Identifies the intended use of this resource. enum: - GRAPHIC - FONT examples: - GRAPHIC type: string url: description: The URL from which the resource will be downloaded. examples: - https://static-wbd-cdn.wbd.com/default_images/wbd-logo-card-1200x675_0.jpg format: uri-reference type: string type: object description: Configures external dynamic resources which will be downloaded by the transcoder and made available for use in the dynamic state API. Each key in the map is used to identify the resource from any location wishing to reference it (e.g. the dynamic state API). type: object feature_flags: description: Feature flag strings enable experimental transcode features or functionality that are not yet or never will be promoted to the channeldoc model proper. Do not enable on customer facing channels. items: type: string type: - array - 'null' id3_mode: description: Specify how to process ID3 tags from the input source. If not specified, ID3 tags in the source will be ignored. enum: - PASSTHROUGH type: string overlays: description: List of overlays. An overlay is an image that will be rendered on top of the source video. Only one overlay is supported at the moment. If specified, the overlay will be always rendered unless a video slate is on. items: additionalProperties: false properties: image_url: description: The URL of the image overlay. Only PNG is supported at the moment. The image's dimensions should match those of source for perfect pixel placement. minLength: 1 type: string type: object maxItems: 1 type: - array - 'null' resize_mode: deprecated: true description: 'Deprecated: Do not use. Deprecated: This field was never implemented. See resize_mode on VideoEncoder instead.' enum: - STRETCH - LETTERBOX - CENTER_CROP type: string segmenter: additionalProperties: false properties: gop_duration_secs: description: GOP (group of pictures) duration specifies the amount of time between I-frames. Shorter durations can lower quality slightly as each I-frame uses more bits than P- & B-frames but can provide a better seeking experience when enabling thumbnail encoders and/or I-Frame Only playlists. examples: - 2 exclusiveMinimum: 0 format: double type: number segment_duration_secs: description: Segment duration specifies the target duration of a single segment. Segments shorter than this duration can occur at signaling boundaries. This value _must_ be a multiple of the GOP duration value. examples: - 6 exclusiveMinimum: 0 format: double type: number temi: description: Include TEMI (Timeline and External Media Information ISO/IEC 13818-1:2019 Annex U) to mpeg-ts segments. type: boolean type: object subtitle_encoders: description: Subtitle encoders specify how text-based subtitles are extracted into separate segments. They are not used to describe CEA 608 captions, which remain part of the video codec. items: additionalProperties: false properties: atsc_captions: additionalProperties: false properties: cea608: description: 'If non-zero, decode captions from the CEA-608 logical channel number identified by this number. If zero, only CTA-708 captions will be decoded. The ''logical channel number'' refers to the CCx name commonly used in literature: - CC1 is the NTSC odd field subchannel 1, considered the primary caption stream. - CC2 is the NTSC odd field subchannel 2, considered the tertiary caption stream. - CC3 is the NTSC even field subchannel 1, considered the secondary caption stream. - CC4 is the NTSC even field subchannel 2, considered the quaternary caption stream.' examples: - 1 format: int32 maximum: 4 minimum: 0 type: integer cta708: description: 'If non-zero, decode captions from the CTA-708 service identified by this number. If zero, only CEA-608 captions will be decoded. It is allowed to set both ''cta708'' and ''cea608''. In this case, the transcoder will decode both streams, and will use the CTA-708 data if the stream is active and fall back to CEA-608 otherwise. Fallback from CTA-708 to CEA-608 requires a timeout to elapse, but switching from CEA-608 to CTA-708 occurs the instant the CTA-708 stream becomes active. CTA-708 recommends the following correspondence between the two encodings: - CTA-708 service 1 == CEA-608 CC1 (primary captions) - CTA-708 service 2 == CEA-608 CC3 (secondary captions) - CTA-708 service 3 == CEA-608 CC2 (tertiary captions) - CTA-708 service 4 == CEA-608 CC4 (quaternary captions) However, some sources use an alternate convention where CTA-708 service 3 is the secondary caption service (corresponding to CC3) and CTA-708 service 2 is the tertiary caption service.' examples: - 1 format: int32 maximum: 63 minimum: 0 type: integer type: object id: description: Encoder ID. IDs must be unique for all encoders. This ID is referenced when setting up playlist publishing. minLength: 1 type: string language: description: Language is the code for the language in which the subtitles are written. examples: - en minLength: 2 type: string tag: description: Used by the player to map text tracks to a quadrant, which represents a single view in a multiview layout. This value is opaque and not used by Aventus. type: string teletext: additionalProperties: false properties: charset_set: description: 'If set, forces interpretation of the National Option field to choose from character sets in this specific set of character sets. Determining the correct value for this configuration is non-trivial, but there are some guidelines. Usually, all languages in one Teletext stream will use the same charset set. If only one set can handle all the languages, it''s probably that one. Some of the sets roughly correspond to geopolitical divisions from the Cold War era: SET3 is roughly Yugoslavia plus Romania; SET4 is the rest of the former USSR/Warsaw Pact, including East Germany but excluding Poland; SET8 is Africa; SET10 is the Middle East. There does not seem to be any standard name for this configuration. The standard calls it ''the upper four bits of Triplet 1'', which is highly ambiguous and nonsensical outside of the context of that usage. The decoder ffmpeg uses calls it ''region'', but most of the sets cannot cleanly be described as any particular geographic region.' enum: - SET0 - SET1 - SET2 - SET3 - SET4 - SET6 - SET8 - SET10 type: string language: description: The three-letter language code declared in the Teletext descriptor in the source PMT. If the language is not found, the subtitles will be empty. language + type configuration is mutually exclusive with magazine + page configuration. examples: - swe type: string magazine: description: The teletext magazine number where the subtitles are found. In a conventional 3-digit Teletext page number, this is the first digit. E.g., in 'page 123', the magazine number is 1. 'Magazine 0' and 'magazine 8' are interchangeable and refer to the same thing. magazine + page configuration is mutually exclusive with language + type configuration. examples: - 1 format: int32 maximum: 8 minimum: 0 type: integer page: description: The teletext page number where the subtitles are found. In a conventional 3-digit Teletext page number, this is the second two digits, *after interpreting those digits as hex*. E.g., in 'page 123', the page number is 35 (0x23). magazine + page configuration is mutually exclusive with language + type configuration. examples: - 170 format: int32 maximum: 255 minimum: 0 type: integer page_type: description: 'The Teletext page type declared in the Teletext descriptor in the source PMT. If this field is unset, it will be inferred from the ''usage'' field on the SubtitleEncoder using this table: SubtitleEncoder.CLOSED_CAPTIONS => TeletextSource.PAGE_TYPE_SUBTITLE_HEARING_IMPAIRED SubtitleEncoder.SUBTITLES => TeletextSource.PAGE_TYPE_SUBTITLE' enum: - PAGE_TYPE_INITIAL - PAGE_TYPE_SUBTITLE - PAGE_TYPE_ADDITIONAL_INFORMATION - PAGE_TYPE_PROGRAMME_SCHEDULE - PAGE_TYPE_SUBTITLE_HEARING_IMPAIRED type: string type: object transcription: additionalProperties: false properties: audio_source_id: description: Identifies the 'AudioSource' to be transcribed. minLength: 1 type: string preset: description: Indicates a particular transcription configuration (e.g. glossary) for a certain use case. Cannot be used at the same time as 'verbit_order_id'. Exactly how presets correspond to configurations is unspecified and subject to change. enum: - CNN - NCAA type: string region: additionalProperties: false properties: rows: description: Height of the transcription area in rows (lines). If zero, use the default. examples: - 3 format: int32 maximum: 4 minimum: 0 type: integer y: description: 'Y coordinate as a percent of the display height where the caption should be placed. If < 50 the caption will be top anchored. If > 50 it will be bottom anchored. If exactly 50, the caption will be vertically centered. 0 means use default. Example: y = 40, rows = 3. The top of the caption area will be approximately 40% the video height from the top of the screen, and will be 3 lines tall. Example: y = 75, rows = 2. The bottom of the caption area will be approximately 25% the video height from the bottom of the screen, and will be 2 lines tall.' examples: - 75 format: int32 maximum: 100 minimum: 0 type: integer type: object verbit_order_id: description: If specified, indicates that the generated transcription should be associated with this Verbit order. Used to retrieve the Verbit transcription endpoint URL. Cannot be used at the same time as 'preset'. examples: - 3b039274-631a-4c92-b450-1fdb801d2767 type: string type: object usage: description: Usage indicates how this encoder should be flagged in generated manifests. enum: - CLOSED_CAPTIONS - SUBTITLES type: string type: object type: - array - 'null' thumbnail_encoders: description: Thumbnail encoders specify how to create image snapshots of the video stream. items: additionalProperties: false properties: height: description: Height specifies the thumbnail image height in pixels. examples: - 180 exclusiveMinimum: 31 format: int32 type: integer id: description: Encoder ID. IDs must be unique for all encoders. This ID is referenced when setting up playlist publishing. minLength: 1 type: string width: description: Width specifies the thumbnail image width in pixels. examples: - 320 exclusiveMinimum: 31 format: int32 type: integer type: object type: - array - 'null' video_encoders: description: Video encoders specify video conversion settings, e.g. dimensions, codec, bitrate, etc. items: additionalProperties: false properties: av1: additionalProperties: false properties: hdr: additionalProperties: false properties: dolby_vision: additionalProperties: false properties: profile101: additionalProperties: false properties: clli: additionalProperties: false properties: max_cll: description: Maximum Content Light Level (nits). format: double maximum: 10000 minimum: 0 type: number max_fall: description: Maximum Frame-Average Light Level (nits). format: double maximum: 10000 minimum: 0 type: number type: object level8: description: Configures custom Level 8 metadata. Each target may be configured at most once. Unconfigured targets use the Dolby LDP SIDK defaults. items: additionalProperties: false properties: clip_trim: description: Control the clipping of whites. A positive value will clip highlights and bright whites less, while a negative value will clip more. format: double maximum: 1 minimum: -1 type: number ms_weight_plus_one: description: Amount of multiscale detail to apply. This is offset from the values used in Dolby documentation so that the Protobuf default of 0.0 corresponds to the Dolby default of -1.0. Values > 1.0 will retain more details when Dolby Vision is mapping down to a lower luminance. Values < 1.0 will lower detail contrast when Dolby Vision is mapping down to a lower luminance. The special value of 0.0 will disable multiscale detail. format: double maximum: 2 minimum: 0 type: number target: description: Identifies which Level 8 trim target is being configured. enum: - REC709_100NITS - BT2020_600NITS - BT2020_1000NITS - CUSTOM type: string target_mid_contrast: description: Controls the contrast of midtones. A positive value will increase the midtone contrast, while a negative value will decrease the midtone contrast. format: double maximum: 1 minimum: -1 type: number trim_chroma_weight: description: ChromaWeight to apply. Additional mapping for saturated colors. Higher value implies stronger effect. format: double maximum: 1 minimum: -1 type: number trim_gain: description: Gain to apply. This is a scaling factor for code values in a color component. format: double maximum: 1 minimum: -1 type: number trim_gamma: description: Gamma to apply. This is a power function in normalized code value in a color component. format: double maximum: 1 minimum: -1 type: number trim_lift: description: Lift to apply. This is an offset of code values in a color component. format: double maximum: 1 minimum: -1 type: number trim_saturation_gain: description: Saturation gain to apply. Gain on P and T components. Higher value implies stronger effect. format: double maximum: 1 minimum: -1 type: number type: object type: - array - 'null' mdcv: additionalProperties: false properties: color_profile: description: Identifies color primaries and white point. enum: - BT2020 - P3_D65 - BT709 type: string max_dml: description: Maximum display mastering luminance (nits). Must be greater than min_dml. format: double maximum: 10000 minimum: 0 type: number min_dml: description: Minimum display mastering luminance (nits). format: double maximum: 10000 minimum: 0 type: number type: object type: object profile5: additionalProperties: false type: object profile81: $ref: '#/components/schemas/HdrSettingsDolbyVisionProfile81' description: Only one of ['profile5', 'profile81', 'profile84', 'profile101'] may be set. profile84: additionalProperties: false type: object type: object hdr10: additionalProperties: false properties: clli: $ref: '#/components/schemas/HdrSettingsContentLightLevelInfo' mdcv: $ref: '#/components/schemas/HdrSettingsMasteringDisplayColorVolume' type: object type: object type: object bit_rate: description: Bit rate specifies the number in bits used per second. Higher values result in better video quality but bigger file sizes. For H.264 this value is the target of the constrained variable bit rate. examples: - 6000000 exclusiveMinimum: 1000 format: int32 type: integer frame_rate: description: Frame rate specifies the number of images that are shown per second when playing back the video. For the best quality playback, this should match or be a multiple of the input source video stream. enum: - FR_23_98 - FR_24 - FR_25 - FR_29_97 - FR_30 - FR_50 - FR_59_94 - FR_60 examples: - FR_60 type: string h264: additionalProperties: false properties: profile: description: H.264 video profile, which defines various encoder features and settings. See https://en.wikipedia.org/wiki/Advanced_Video_Coding#Profiles for details. enum: - BASELINE - MAIN - HIGH - HIGH_10 - HIGH_422 type: string type: object h265: additionalProperties: false properties: hdr: $ref: '#/components/schemas/HdrSettings' description: Configure the HDR settings. profile: description: H.265 video profile, which defines various encoder features and settings. See https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding#Profiles for details. enum: - MAIN - MAIN_10 type: string type: object height: description: 'Height specifies the video height in pixels. Must be a multiple of two. Valid resolution ranges, width x height are: H.264: 2x2 to 1920x1080 or 1080x1920 H.265: 130x34 to 3840x2160 or 2160x3840 The upper limit is dictated by the number of pixels.' examples: - 1080 exclusiveMinimum: 1 format: int32 type: integer id: description: Encoder ID. IDs must be unique for all encoders. This ID is referenced when setting up playlist publishing. examples: - 1080p60 minLength: 1 type: string resize_mode: description: Indicates how to handle the case where the input aspect ratio does not match the aspect ratio of this VideoEncoder. enum: - STRETCH - LETTERBOX - CENTER_CROP type: string width: description: 'Width specifies the video width in pixels. Must be a multiple of two. Valid resolution ranges, width x height are: H.264: 32x24 to 1920x1080 or 1080x1920 H.265: 130x128 to 3840x2160 or 2160x3840 The upper limit is dictated by the total number of pixels.' examples: - 1920 exclusiveMinimum: 1 format: int32 type: integer type: object minItems: 1 type: - array - 'null' type: object Status: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/Status.json format: uri readOnly: true type: string dynamic_state_status: $ref: '#/components/schemas/DynamicStateStatus' description: The transcoder's dynamic state settings. ingest_status: $ref: '#/components/schemas/IngestStatus' description: Ingest components's status. type: object Signaling: additionalProperties: false properties: blackout_settings: additionalProperties: false properties: default_blackout_slate_url: description: Default slate URL to use for blackouts. Can be overridden by the 'slates' field. examples: - https://example.com/blackout.ts format: uri-reference type: string force_blackout_segments: description: List of signaling segment types to force blackout, e.g. add 'SPLICE_INSERT' to blackout all ads signaled via SCTE-35 splice_insert. items: enum: - SPLICE_INSERT - CONTENT_ID - PROGRAM - PROGRAM_BLACKOUT_OVERRIDE - PROGRAM_BREAKAWAY - CHAPTER - BREAK - OPENING_CREDIT - CLOSING_CREDIT - PROVIDER_PLACEMENT_OP - DISTRIBUTOR_PLACEMENT_OP - PROVIDER_OVERLAY_OP - DISTRIBUTOR_OVERLAY_OP - PROVIDER_AD - DISTRIBUTOR_AD - UNSCHEDULED_EVENT - NETWORK - SLATE - NOT_INDICATED - TIMED_METADATA - TIMED_METADATA_MARKER_OVER_SLATE type: string type: - array - 'null' honor_web_delivery_restriction: description: Determines whether to honor the web_delivery_allowed attribute in SCTE-35 segmentation descriptors. When this is enabled, a segmentation descriptor with web_delivery_allowed=false will trigger a blackout. type: boolean slates: description: Per-segment type slate overrides. items: additionalProperties: false properties: blackout_slate_url: description: Blackout slate URL to use for the specified segments. It must have one audio and one video stream. Either MPEG2 or H.264 can be used. examples: - https://example.com/blackout.ts format: uri-reference type: string segments: description: Segment types that shall utilize the blackout slate URL. Any segment type defined here _must_ also be present in the parent signaling configuration. items: enum: - SPLICE_INSERT - CONTENT_ID - PROGRAM - PROGRAM_BLACKOUT_OVERRIDE - PROGRAM_BREAKAWAY - CHAPTER - BREAK - OPENING_CREDIT - CLOSING_CREDIT - PROVIDER_PLACEMENT_OP - DISTRIBUTOR_PLACEMENT_OP - PROVIDER_OVERLAY_OP - DISTRIBUTOR_OVERLAY_OP - PROVIDER_AD - DISTRIBUTOR_AD - UNSCHEDULED_EVENT - NETWORK - SLATE - NOT_INDICATED - TIMED_METADATA - TIMED_METADATA_MARKER_OVER_SLATE type: string type: - array - 'null' upids: description: Exclusive list of hex string encoded colon separated UPID Type:ID pairs (e.g. '0A:1A2B3C4D') to enable this blackout slate on. items: type: string type: - array - 'null' type: object type: - array - 'null' type: object disable_inband_parsing: description: Disable parsing SCTE-35 in-band signaling. Out-of-band signaling is still allowed. type: boolean scte_pid: description: Defines the specific PID containing the SCTE that the transcoder should process. Using '0' (default value) will pick the first PID containing SCTE-35 in the PMT. format: int32 minimum: 0 type: integer segment_settings: description: Settings that apply to specific segments. items: additionalProperties: false properties: default_duration_secs: description: Specifies the duration of a segment when the in-band SCTE-35 that initiates it (e.g. Distributor Placement Opportunity Start) is missing an explicit duration. N.B. for program and ad types, this also affects 'Simple Program' and 'Simple Ad' markers, respectively. format: int32 maximum: 172800 minimum: 0 type: integer emit_default_duration: description: Determines whether to include the default duration in the output SCTE-35 messages when the input SCTE-35 message did not specify a duration. type: boolean offset_millis: description: Specifies a 'correction' to the splice_time of in-band SCTE-35 in milliseconds. format: int32 maximum: 4000 minimum: -4000 type: integer segment_end_mode: description: Determines which Segment End signaling mode to use for the provided segments. If unspecified, defaults to MATCH_END_EVENT_ID. enum: - MATCH_END_EVENT_ID - IGNORE_END_EVENT_ID - IGNORE_END_SIGNAL type: string segments: description: Specifies the list of which segment types this setting applies to. Any segment type defined here _must_ also be present in the parent signaling configuration. items: enum: - SPLICE_INSERT - CONTENT_ID - PROGRAM - PROGRAM_BLACKOUT_OVERRIDE - PROGRAM_BREAKAWAY - CHAPTER - BREAK - OPENING_CREDIT - CLOSING_CREDIT - PROVIDER_PLACEMENT_OP - DISTRIBUTOR_PLACEMENT_OP - PROVIDER_OVERLAY_OP - DISTRIBUTOR_OVERLAY_OP - PROVIDER_AD - DISTRIBUTOR_AD - UNSCHEDULED_EVENT - NETWORK - SLATE - NOT_INDICATED - TIMED_METADATA - TIMED_METADATA_MARKER_OVER_SLATE type: string type: - array - 'null' uniqueItems: true tier_filter: additionalProperties: false properties: explicit_tier: additionalProperties: false properties: values: items: format: int32 type: integer type: - array - 'null' type: object type: object type: object type: - array - 'null' segments: description: Segment types to process for in-band signaling. items: enum: - SPLICE_INSERT - CONTENT_ID - PROGRAM - PROGRAM_BLACKOUT_OVERRIDE - PROGRAM_BREAKAWAY - CHAPTER - BREAK - OPENING_CREDIT - CLOSING_CREDIT - PROVIDER_PLACEMENT_OP - DISTRIBUTOR_PLACEMENT_OP - PROVIDER_OVERLAY_OP - DISTRIBUTOR_OVERLAY_OP - PROVIDER_AD - DISTRIBUTOR_AD - UNSCHEDULED_EVENT - NETWORK - SLATE - NOT_INDICATED - TIMED_METADATA - TIMED_METADATA_MARKER_OVER_SLATE type: string type: - array - 'null' uniqueItems: true type: object GenericSignal: additionalProperties: false properties: delivery_restrictions: $ref: '#/components/schemas/DeliveryRestrictions' description: Delivery restrictions for the resulting signaling segment duration: default: 0 description: Splice duration (ms). If no duration or a duration of 0 then the default duration for the segment type is used. examples: - 30000 format: int64 type: integer event_id: description: Identifies the active signaling segment. Use the same event_id for both START and END to reference the same segment. When signaling two STARTs with the same event_id, the second one will result in an error (ALREADY_EXISTS). Signaling a second start with a different event_id will end a previous active segment of the same type. After a segment has ended, its event_id can be reused. IDs are namespaced by segment type. E.g. it is allowed to have an active Chapter and an active Program with the same event_id. This field corresponds to SCTE-35 segmentation_event_id and splice_event_id. examples: - 1234 format: int32 minimum: 0 type: integer segment_type: description: The signaling segment type which is going to start/end/etc. This is used to mark programs, chapters, ad insertion points, video slating, etc. enum: - splice_insert - content_id - program - program_breakaway - chapter - break - opening_credit - closing_credit - provider_placement - distributor_placement - provider_overlay - distributor_overlay - provider_ad - distributor_ad - unscheduled_event - network - slate - timed_metadata examples: - program type: string signal_type: description: Whether this signal will start/end/etc a signaling segment enum: - start - end - breakaway - resumption examples: - start type: string slate_uri: description: Slate url examples: - https://www.example.com/logo.ts format: uri type: string timed_metadata_payload: description: Timed metadata opaque payload data examples: - 1ba4ae34-512e-41a6-b2f1-bbf51635d453 type: string timed_metadata_type: description: The timed metadata signal's type examples: - urn:wbd:timed-metadata:multiview:layout-update type: string type: description: Qualifier type enum: - none - overlap - in_progress examples: - none type: string upids: description: UPIDs examples: - - 03:ABCD0001000H - 08:0A42235B81BC70FC - 06:0000-0001-2C52-0000-P-0000-0000-0 items: type: string type: - array - 'null' required: - signal_type - segment_type - event_id type: object SetDynamicStateRequest: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/SetDynamicStateRequest.json format: uri readOnly: true type: string channel_urn: description: The channel's internal id. type: string dynamic_state: $ref: '#/components/schemas/DynamicState' description: The desired dynamic state configuration of the transcoder. dynamic_state_fields: description: DynamicStateFields specifies the fields to update in the dynamic state. Any fields not specified will be ignored. items: enum: - TEXT_OVERLAYS - GRAPHIC_OVERLAYS - AUDIO_MUTES type: string minItems: 1 type: - array - 'null' external_id: description: The channel's user provided id. type: string organization: description: The channel's organization. type: string required: - dynamic_state type: object HdrSettingsDolbyVisionProfile81: additionalProperties: false properties: clli: additionalProperties: false properties: max_cll: description: Maximum Content Light Level (nits). format: double maximum: 10000 minimum: 0 type: number max_fall: description: Maximum Frame-Average Light Level (nits). format: double maximum: 10000 minimum: 0 type: number type: object level8: description: Configures custom Level 8 metadata. Each target may be configured at most once. Unconfigured targets use the Dolby LDP SIDK defaults. items: additionalProperties: false properties: clip_trim: description: Control the clipping of whites. A positive value will clip highlights and bright whites less, while a negative value will clip more. format: double maximum: 1 minimum: -1 type: number ms_weight_plus_one: description: Amount of multiscale detail to apply. This is offset from the values used in Dolby documentation so that the Protobuf default of 0.0 corresponds to the Dolby default of -1.0. Values > 1.0 will retain more details when Dolby Vision is mapping down to a lower luminance. Values < 1.0 will lower detail contrast when Dolby Vision is mapping down to a lower luminance. The special value of 0.0 will disable multiscale detail. format: double maximum: 2 minimum: 0 type: number target: description: Identifies which Level 8 trim target is being configured. enum: - REC709_100NITS - BT2020_600NITS - BT2020_1000NITS - CUSTOM type: string target_mid_contrast: description: Controls the contrast of midtones. A positive value will increase the midtone contrast, while a negative value will decrease the midtone contrast. format: double maximum: 1 minimum: -1 type: number trim_chroma_weight: description: ChromaWeight to apply. Additional mapping for saturated colors. Higher value implies stronger effect. format: double maximum: 1 minimum: -1 type: number trim_gain: description: Gain to apply. This is a scaling factor for code values in a color component. format: double maximum: 1 minimum: -1 type: number trim_gamma: description: Gamma to apply. This is a power function in normalized code value in a color component. format: double maximum: 1 minimum: -1 type: number trim_lift: description: Lift to apply. This is an offset of code values in a color component. format: double maximum: 1 minimum: -1 type: number trim_saturation_gain: description: Saturation gain to apply. Gain on P and T components. Higher value implies stronger effect. format: double maximum: 1 minimum: -1 type: number type: object type: - array - 'null' mdcv: additionalProperties: false properties: color_profile: description: Identifies color primaries and white point. enum: - BT2020 - P3_D65 - BT709 type: string max_dml: description: Maximum display mastering luminance (nits). Must be greater than min_dml. format: double maximum: 10000 minimum: 0 type: number min_dml: description: Minimum display mastering luminance (nits). format: double maximum: 10000 minimum: 0 type: number type: object type: object Publishing: additionalProperties: false properties: closed_caption_streams: description: Configures how captioning information, which references CEA-608 captions embedded in video segments, is published. items: additionalProperties: false properties: auto_select: description: Indicates that the client should play the captioning media selection group if the user has not indicated a user preference. If both auto_select and default are not set, the first captioning media selection group will be used. enum: - 'NO' - 'YES' type: string default: description: Configures the captioning media selection group that will be played if the user has not indicated a user preference. If both auto_select and default are not set, the first captioning media selection group will be used. enum: - 'NO' - 'YES' type: string language: description: Language code as RFC 5646, e.g. 'en' 'en-US'. type: string name: description: Source stream name. type: string type: object type: - array - 'null' feature_flags: description: Set of string identifiers corresponding to features that this Channel is opting in. items: type: string type: - array - 'null' live2vod: additionalProperties: false properties: clear_capture: description: BETA - (Optional) Indicates whether the system should send the unpackaged segments produced from the transcoder to the L2V system for purposes of creating mp4s and/or repackaging. type: boolean product_id: description: Product ID that VODs will be associated with in the Live2VOD system. The value of this ID is pre-configured in the Live2VOD portal. minLength: 1 type: string retention_days: description: Specifies the retention time, in days, for archived content. format: int32 maximum: 30 minimum: 1 type: integer type: object publications: description: A set of individual configurations that each can configure a specific destination and mechanism of delivery for segments and/or playlists. items: additionalProperties: false properties: audio_encoder_ids: description: Optionally specify which audio encoders should be used for this publication. If none are specified, all audio encoders configured for the transcoder will be used. items: type: string type: - array - 'null' uniqueItems: true create_vods: description: Create VODs for all publish points in this publication. Note that Live2VOD must also be configured for the parent |Channel|. type: boolean dash: additionalProperties: false properties: minimum_update_period_secs: description: Sets the minimumUpdatePeriod field in MPD to be this value. If set to 0 (default), segment duration is used. The value shall not exceed the 'suggested_presentation_delay_secs'. format: int32 type: integer signaling_formats: description: Signaling formats specifies which SCTE-35 timeline marker formatting to use when rendering playlists. items: enum: - SCTE35_SPLICE_INFO_SECTION - SCTE35_BIN type: string type: - array - 'null' uniqueItems: true suggested_presentation_delay_secs: description: The suggested amount of time (in seconds) the player should be behind the live stream. This value must be greater or equal to 'minimum_update_period_secs'. format: int32 minimum: 0 type: integer url_type: description: If set to 'URL_TYPE_UNDEFINED' playlist generation will use 'RELATIVE'. enum: - RELATIVE - ABSOLUTE - HOST_RELATIVE type: string type: object drms: description: Optionally specify which DRMs to advertise in the playlist. If specified, this must be a subset of the DRMs specified by the packager associated with this publication. If omitted or empty, all DRMs specified by the packager will be advertised. This setting can only be used for HLS playlists. items: enum: - WIDEVINE - FAIRPLAY - PRIMETIME - PLAYREADY - W3C_COMMON_CLEAR_KEY - BULK_FILE type: string type: - array - 'null' uniqueItems: true dvr_window_secs: description: DVR window is the max sum(duration of media segments) that will be kept in a manifest at a given time in seconds. The max supported DVR window is 10 hours. format: int32 maximum: 36000 minimum: 0 type: integer fer_audio_encoder_ids: description: Optionally specify which audio encoders should be used when generating the FER of this Presentation, this overrides the 'audio_encoder_ids' used during the live portion. If none are specified, the 'audio_encoder_ids' field will be used. items: type: string type: - array - 'null' uniqueItems: true hls: additionalProperties: false properties: audio_only_variants: description: 'Defines how audio only variant streams are included in the master playlist, where the variant streams are defined by #EXT-X-STREAM-INF tag, the tag attributes provide information about the Stream. The INCLUDE_DEFAULT option - only the default ''audio only variant stream'' is included in master playlist. This is the most common use case. INCLUDE_NONE - no audio only variant streams are included in the master playlist. INCLUDE_ALL - include all audio only variant streams in the master playlist.' enum: - INCLUDE_DEFAULT - INCLUDE_NONE - INCLUDE_ALL type: string gap_tags: description: 'Allows turning gap tags ON/OFF. When turned ON - the tag ''#EXT-X-GAP'' is inserted into media playlist for a missing segment. When turned OFF - Discontinuity is inserted into the playlist for missing segment(s). The default option UNDEFINED is mapped to OFF. Note: Gap tags are always inserted for the missing thumbnail segments independently of this setting' enum: - 'ON' - 'OFF' type: string master_publish_frequency_secs: description: 'How often the multi-variant playlist(s) should be published (in seconds) once a channel is started. If 0 (not provided), defaults to 1 hour. The following can also result in re-publishing of multi-variant playlists: - Configuration changes related to transcoding configuration (i.e. adding, removing, changing encoders). - Service code changes related to manifest generation.' format: int32 type: integer master_url_type: description: Allows specifying url type for HLS master playlists. If not provided, playlist generation will use 'RELATIVE'. enum: - RELATIVE - ABSOLUTE - HOST_RELATIVE type: string media_url_type: description: Allows specifying url type for HLS media playlists. If not provided, playlist generation will use 'RELATIVE'. enum: - RELATIVE - ABSOLUTE - HOST_RELATIVE type: string partial_presentations: description: Specify which partial presentations should be used for this presentation. Partial presentations are additional master playlists that point to a subset of the parent presentation's media streams/variant playlists. items: additionalProperties: false properties: audio_encoder_ids: description: Specify which audio encoders should be used for this presentation. If none are specified, all audio encoders configured for the parent Publication will be used. items: type: string type: - array - 'null' uniqueItems: true fer_audio_encoder_ids: description: 'Optionally specify which audio encoders should be used when generating the FER of this Partial Presentation, this overrides the ''audio_encoder_ids'' used during the live portion. If none are specified, the ''audio_encoder_ids'' field will be used. NOTE: This MUST only be used with push based manifest. Ignore this field when using Aventus Origin with Dynamic Manifests. Instead use the AudioSource.License field.' items: type: string type: - array - 'null' uniqueItems: true iframe_only_encoder_ids: description: List of video encoder IDs that should have I-Frame only playlists generated for them. If no 'iframe_only_encoder_ids' are given then no I-Frame playlists will be in the Partial Presentation. items: type: string type: - array - 'null' uniqueItems: true playlist_path: description: Sub-path that will be appended onto the publish and playback base URLs of HTTP PublishPoints for published playlist files. minLength: 1 type: string thumbnail_encoder_ids: description: Specify which thumbnail encoders should be used for this presentation. If no 'thumbnail_encoder_ids' are given then no thumbnail playlists will be in the Partial Presentation. items: type: string type: - array - 'null' uniqueItems: true video_encoder_ids: description: Specify which video encoders should be used for this presentation. If none are specified, all video encoders configured for the parent Publication will be used. items: type: string type: - array - 'null' uniqueItems: true type: object type: - array - 'null' pdt_on_every_segment: description: 'When true a #EXT-X-PROGRAM-DATE-TIME tag will be placed on every media segment in media playlists. When false, the default behavior, the PDT tag is set according to the HLS specification.' type: boolean signaling_formats: description: Signaling formats specifies which SCTE-35 timeline marker formatting to use when rendering playlists. items: enum: - APPLE_SCTE35 - AD_SIMPLE - SCTE35 type: string type: - array - 'null' uniqueItems: true utc_in_segment_title: description: 'Include a UTC timestamp (that is equivalent in value to #EXT-X-PROGRAM-DATE-TIME) in the title of each media segment in media playlists. Ex. #EXTINF:6.006,LTC=2020-01-01T12:00:00.000Z' type: boolean type: object iframe_only_encoder_ids: description: List of video encoder IDs that should have I-Frame only playlists generated for them. items: type: string type: - array - 'null' uniqueItems: true master_playlist_name: description: Optional master manifest name. When not supplied a default of 'master' will be used. type: string origin: additionalProperties: false properties: alternate_manifest_defaults: additionalProperties: additionalProperties: false properties: dash_signaling_formats: description: DASH Signaling formats specifies which SCTE-35 timeline marker formatting to use when rendering DASH manifests. items: enum: - SCTE35_SPLICE_INFO_SECTION - SCTE35_BIN type: string type: - array - 'null' uniqueItems: true drm_system_ids: description: 'Specify which DRMs to advertise in the playlist. If specified, this must be a subset of the DRMs specified by the packager associated with this origin. If omitted or empty, all DRMs specified by the packager will be advertised. Only honored for Alternate Manifests. Example: ''81376844-f976-481e-a84e-cc25d39b0b33'' for bulk file encryption ID' items: type: string type: - array - 'null' uniqueItems: true duration_seconds: description: Duration is the length of content that will be included in the manifest, in seconds. The max supported DVR window is 12 hours. If not specified, the default duration will be 30 seconds. format: int32 maximum: 43200 minimum: 0 type: integer enable_hls_delta_updates: description: When true enables HLS Delta updates for this particular origin. type: boolean encoder_ids: description: Specify which encoders (video, audio, thumbnail) should be used for this origin manifest. If none are specified, all video encoders configured for the origin will be used. Only honored for Alternate Manifests. items: type: string type: - array - 'null' uniqueItems: true hls_signaling_formats: description: HLS signaling formats specifies which SCTE-35 timeline marker formatting to use when rendering playlists. items: enum: - APPLE_SCTE35 - AD_SIMPLE - SCTE35 type: string type: - array - 'null' uniqueItems: true media_url_type: description: Allows specifying url type for HLS media playlists and DASH manifests. If not provided, playlist generation will use 'RELATIVE'. enum: - RELATIVE - ABSOLUTE - HOST_RELATIVE type: string minimum_update_period_seconds: description: Sets the minimumUpdatePeriod field in MPD to be this value. If set to 0 (default), segment duration is used. The value shall not exceed the 'suggested_presentation_delay_secs'. format: int32 minimum: 0 type: integer multi_variant_url_type: description: Allows specifying url type for HLS multi-variant playlists. If not provided, playlist generation will use 'RELATIVE'. enum: - RELATIVE - ABSOLUTE - HOST_RELATIVE type: string pdt_on_every_segment: description: 'When true a #EXT-X-PROGRAM-DATE-TIME tag will be placed on every media segment in HLS media playlists. When false, the default behavior, the PDT tag is set according to the HLS specification.' type: boolean pre_start_duration_seconds: description: Pre Start Duration is the length of content that will be included in the manifest when the start time of a manifest is in the future. When a manifest is near the start time but does not contain 'pre_start_duration_seconds' content Manifest Origin will keep content before the start time to make the manifest length at least 'pre_start_duration_seconds'. If not specified requesting a manifest in the future will result in a 404. format: int32 maximum: 43200 minimum: 0 type: integer suggested_presentation_delay_seconds: description: Sets the suggestedPresentationDelay field in MPD to be this value. This value must be greater or equal to 'minimum_update_period_secs'. If unset, the default value will be calculated as 3 * segment target duration. format: int32 minimum: 0 type: integer type: object description: 'AlternateManifestDefaults specifies a map of alternately named manifests for Legacy playback. Ex: ''ph'' = ''main.ph.m3u8'', with a specific set of partial playlists supported by the system. If the rules are expanded to allow for more than 5 characters, ''iframe'' is a reserved acronym for iframe playlists.' type: object fallback_defaults: $ref: '#/components/schemas/OriginManifestDefaults' description: FallbackDefaults specifies the alternative behavior of the dynamic manifest generator. This behavior is intended to be a simplified configuration comparead to the default behavior so that it can be used as a fallback for when players are encountering issues with the default behavior. Specific behaviors can be overwritten using appropriate query string parameters when making the request for the manifest. manifest_defaults: $ref: '#/components/schemas/OriginManifestDefaults' description: ManifestDefaults specifies the default behavior of the dynamic manifest generator. Specific behaviors can be overwritten using appropriate query string parameters when making the request for the manifest. retention_minutes: description: RetentionMinutes specifies how long data is retained, in minutes. Live linear (24/7) channels should set this to the longest expected DVR window (a few hours). Live event channels should set this to how Live2VOD playlists are expected to be available. If unspecified, the default will be 60 minutes. The maximum value is 15 days (21600 minutes). format: int32 maximum: 21600 minimum: 0 type: integer segments: additionalProperties: false properties: redundancy: enum: - SingleRegion - DualRegion type: string type: object type: object packager_id: description: Determines how segments in this publication are packaged. Must reference a packager in 'packaging.packagers'. However, if this is a playlist-only publication (i.e. contains publish points that specify 'playlist_only_for'), this must remain unset as the packager will be inferred from the publication this one is providing playlists for. type: string publish_points: description: Publish points specify where to output. items: additionalProperties: false properties: http: $ref: '#/components/schemas/PublishPointHTTP' description: HTTP destination where media segments and playlists will be published. id: description: uniquely identifies this publish_point within a channel configuration. Can be referenced by other publish_points in the 'playlist_only_for' field. type: string playlist_only_for: description: playlist_only_for identifies the id of the publish_point that has the segments for this publish_point, which is only publishing a playlist for those segments. All publish_points within a publication must either have 'playlist_only_for' all set or all not set. type: string type: object type: - array - 'null' redundant_publishing: description: When redundant publishing is enabled succeeding to publish a given media segment to at least one HTTPPublishPoint in publish_points will result in that segment showing up in manifests as playable content. Will require at least two publish_points defined within the same publication. type: boolean startover: additionalProperties: false properties: first_program_start: additionalProperties: false type: object on_airing_id: additionalProperties: false properties: airing_id: description: Airing Id is a SCTE-35 Segmentation Unique Program ID (UPID) of type 0x08 used to specify the unique airing of a program. Is a 8 byte hex encoded string that is prepended with '0x'. pattern: ^0x[0-9a-fA-F]{16}$ type: string type: object type: object thumbnail_encoder_ids: description: 'Optional: Specify what thumbnail_encoders should be in this Publication' items: type: string type: - array - 'null' uniqueItems: true use_strict_bitrate: description: Optional, indicates whether we should pad the bitrate (false) or use what is explicitly provided (true) type: boolean video_encoder_ids: description: Optionally specify which video encoders should be used for this publication. If none are specified, all video encoders configured for the transcoder will be used. items: type: string type: - array - 'null' uniqueItems: true type: object type: - array - 'null' rtmp_publications: description: A set of configurations for delivering RTMP streams items: additionalProperties: false properties: audio_encoder_id: description: Only AAC encoders are supported minLength: 1 type: string id: description: RTMP publication ID. Must be unique. minLength: 1 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string url: format: uri minLength: 1 pattern: ^rtmps?:// type: string video_encoder_id: description: Only h264 encoders are supported minLength: 1 type: string type: object type: - array - 'null' srt_publications: description: A set of configurations for delivering SRT streams items: additionalProperties: false properties: audio_encoders: items: additionalProperties: false properties: id: minLength: 1 type: string pid: description: Output MPEG-TS PID. PIDs should be set on the PMT, SCTE-35 and all encoders or none. Valid PIDs must 13-bit values greater than 31. If no PIDs are provided (pid == 0) then they will be generated automatically. exclusiveMaximum: 8191 format: int32 type: integer type: object minItems: 1 type: - array - 'null' id: description: SRT publication ID. Must be unique. minLength: 1 pattern: ^([a-z0-9]+(-*[a-z0-9]+)*)$ type: string pmt_pid: description: MPEG-TS PMT PID. PIDs should be set on the PMT, SCTE-35 and all encoders or none. Valid PIDs must 13-bit values greater than 31. If no PIDs are provided (pid == 0) then they will be generated automatically. exclusiveMaximum: 8191 format: int32 type: integer scte35_pid: description: MPEG-TS SCTE-35 PID. PIDs should be set on the PMT, SCTE-35, and all encoders or none. Valid PIDs must 13-bit values greater than 31. If no PIDs are provided (pid == 0) then they will be generated automatically. exclusiveMaximum: 8191 format: int32 type: integer url: format: uri minLength: 1 pattern: ^srt:// type: string video_encoders: items: $ref: '#/components/schemas/SrtPublicationEncoder' minItems: 1 type: - array - 'null' type: object type: - array - 'null' type: object ContentLightLevelInfo: additionalProperties: false properties: max_cll: description: Max content light level in nits. format: double type: number max_fall: description: Max frame (pic) average light level in nits. format: double type: number type: object GenericSignalResult: additionalProperties: false properties: error_message: description: Error details from the signaling subsystem type: string result_code: description: Result of signal; 'accepted' means no error enum: - accepted - not_found - already_exists - invalid_argument - internal_error examples: - accepted type: string required: - result_code - error_message type: object InsertMetadataRequest: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/InsertMetadataRequest.json format: uri readOnly: true type: string payload: description: ID3 payload as UTF-8 text type: string required: - payload type: object Scte35: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/Scte35.json format: uri readOnly: true type: string payload: contentEncoding: base64 description: The SCTE-35 payload, encoded as base-64 in JSON or binary data in CBOR examples: - /DAvAAAAAAAAAP/wBQb/d2+7OgAZAhdDVUVJAAAD6ACACAic1fd1d2+7OjABAeo2v/g= type: string required: - payload type: object SourceStatus: additionalProperties: false properties: active: description: Reports whether this is the active source - i.e. the source being transcoded. type: boolean cc_errors: description: Continuity counter error total since the transcoder pod started. format: int64 type: integer last_data_received: description: The last time data was received for this source. format: date-time type: string pinned: description: Reports whether this source was pinned to be always preferred (if available). type: boolean pmt: $ref: '#/components/schemas/SourceStatusPmt' description: The PMT for this source. quality_score: description: A measure of the source's quality if available. Zero is the perfect score. The higher the score, the worst the quality. format: double type: number unavailable_reason: description: If unset (empty string), the source is available, and could be made active if necessary. Otherwise, it contains a message indicating why the source is unavailable. E.g. 'No source AUs received'. type: string type: object HdrSettings: additionalProperties: false properties: dolby_vision: additionalProperties: false properties: profile101: additionalProperties: false properties: clli: additionalProperties: false properties: max_cll: description: Maximum Content Light Level (nits). format: double maximum: 10000 minimum: 0 type: number max_fall: description: Maximum Frame-Average Light Level (nits). format: double maximum: 10000 minimum: 0 type: number type: object level8: description: Configures custom Level 8 metadata. Each target may be configured at most once. Unconfigured targets use the Dolby LDP SIDK defaults. items: additionalProperties: false properties: clip_trim: description: Control the clipping of whites. A positive value will clip highlights and bright whites less, while a negative value will clip more. format: double maximum: 1 minimum: -1 type: number ms_weight_plus_one: description: Amount of multiscale detail to apply. This is offset from the values used in Dolby documentation so that the Protobuf default of 0.0 corresponds to the Dolby default of -1.0. Values > 1.0 will retain more details when Dolby Vision is mapping down to a lower luminance. Values < 1.0 will lower detail contrast when Dolby Vision is mapping down to a lower luminance. The special value of 0.0 will disable multiscale detail. format: double maximum: 2 minimum: 0 type: number target: description: Identifies which Level 8 trim target is being configured. enum: - REC709_100NITS - BT2020_600NITS - BT2020_1000NITS - CUSTOM type: string target_mid_contrast: description: Controls the contrast of midtones. A positive value will increase the midtone contrast, while a negative value will decrease the midtone contrast. format: double maximum: 1 minimum: -1 type: number trim_chroma_weight: description: ChromaWeight to apply. Additional mapping for saturated colors. Higher value implies stronger effect. format: double maximum: 1 minimum: -1 type: number trim_gain: description: Gain to apply. This is a scaling factor for code values in a color component. format: double maximum: 1 minimum: -1 type: number trim_gamma: description: Gamma to apply. This is a power function in normalized code value in a color component. format: double maximum: 1 minimum: -1 type: number trim_lift: description: Lift to apply. This is an offset of code values in a color component. format: double maximum: 1 minimum: -1 type: number trim_saturation_gain: description: Saturation gain to apply. Gain on P and T components. Higher value implies stronger effect. format: double maximum: 1 minimum: -1 type: number type: object type: - array - 'null' mdcv: additionalProperties: false properties: color_profile: description: Identifies color primaries and white point. enum: - BT2020 - P3_D65 - BT709 type: string max_dml: description: Maximum display mastering luminance (nits). Must be greater than min_dml. format: double maximum: 10000 minimum: 0 type: number min_dml: description: Minimum display mastering luminance (nits). format: double maximum: 10000 minimum: 0 type: number type: object type: object profile5: additionalProperties: false type: object profile81: $ref: '#/components/schemas/HdrSettingsDolbyVisionProfile81' description: Only one of ['profile5', 'profile81', 'profile84', 'profile101'] may be set. profile84: additionalProperties: false type: object type: object hdr10: additionalProperties: false properties: clli: $ref: '#/components/schemas/HdrSettingsContentLightLevelInfo' mdcv: $ref: '#/components/schemas/HdrSettingsMasteringDisplayColorVolume' type: object type: object Packaging: additionalProperties: false properties: packagers: additionalProperties: additionalProperties: false properties: content_protection: additionalProperties: false properties: atlas: additionalProperties: false properties: asset_id: description: The Asset Identifier which was taken from the token entitlement service request. type: string company_id: description: The Identifier of the Company that this token belongs. type: string drms: description: DRM system keys to request items: enum: - WIDEVINE - FAIRPLAY - PRIMETIME - PLAYREADY - W3C_COMMON_CLEAR_KEY - BULK_FILE type: string type: - array - 'null' uniqueItems: true widevine_v0_pssh_box: description: When TRUE the KeyID is not embedded in the pssh box which sets the version to 0. Defaults to generating v1 pssh_boxes that includes the key_id type: boolean type: object bulk_file: additionalProperties: false properties: iv_rotation: description: How often the IV should be rotated and how it should be created enum: - RANDOM_PER_KEY - PER_SEGMENT_NUMBER - UNIQUE_PER_SEGMENT type: string type: object common: additionalProperties: false properties: scheme_type: description: Defines the scheme that can be used with Common Encryption enum: - CENC - CBCS type: string type: object cpix: additionalProperties: false properties: certificates_id: description: Unique ID used for certificate settings, unique per distributor. type: string content_id: description: (Optional) Content ID that identifies this channel in the CPIX service. Value is defined by the DRM system owner, and if defined will be included as part of a POST request. type: string credentials_id: description: Unique ID used for credentials settings, unique per distributor. type: string decryption_key_id: description: Unique ID of the decryption key to use in case the server response contains content keys encrypted. The key is unique per distirutor, and configured ahead of time by the publishing team and the CPIX service owner. type: string drms: description: (Optional) DRM system keys to request. If not defined a GET request will be done, and any key returned will be handled. If defined, random kid(s) (key ids) will be generated on rotation for each DRM system, and a POST request will be done to create them. items: enum: - WIDEVINE - FAIRPLAY - PRIMETIME - PLAYREADY - W3C_COMMON_CLEAR_KEY - BULK_FILE type: string type: - array - 'null' uniqueItems: true headers_id: description: (Optional) An identifier to a list of HTTP headers to be added to the request sent to the CPIX service. type: string uri: description: CPIX service URI format: uri-reference minLength: 1 type: string type: object key_rotation: additionalProperties: false properties: interval_secs: description: Rotate keys based on the specified time interval. If Program is also provided then this time interval will only apply to media segments that are outside of program boundaries. If Program is NOT provided then only this time interval will be used to decided when to rotate keys. format: float minimum: 300 type: number program: description: Rotate keys on (SCTE35) program boundaries such that no two programs will be protected with the same key. type: boolean program_overlap_skip_encrypt: description: Do not encrypt segments that are part of more than one SCTE-35 program. type: boolean type: object sample_aes: additionalProperties: false type: object simple: additionalProperties: false properties: publish_points: description: Pub points where keys should be published. If multiple are specified, only one needs to succeed to consider the key successfully published. items: additionalProperties: false properties: basic_auth: additionalProperties: false properties: password: description: Plain text password for basic auth. type: string username: description: Username for basic auth. type: string type: object compression: description: Configures whether or not (and how) to compress manifests being published to the origin. If not specified, manifests will not be compressed. enum: - NONE - GZIP type: string do_not_monitor: description: (Optional) Specifies if this pubpoint should not be monitored by PLM. type: boolean headers: additionalProperties: type: string description: Allows custom HTTP headers to be set via configuration for all HTTP requests. type: object method: description: Method overrides what HTTP method to specify in requests to the Publish Point. If not specified the service will default to POST. type: string playback_base_url: description: The base URL where published playlists will be able to be obtained. This is often different than the publish_base_url for CDN publishing workflows. format: uri-reference type: string playback_query_params: description: 'Specifies any query parameters that will be added to playback urls. Should not include the initial ''?'' Example: ''foo=bar&q=golang''' type: string publish_base_url: description: The base URL where generated playlists will be sent/published. Each publish point requires a unique 'publish_base_url'. format: uri-reference type: string secure_header_auth: additionalProperties: false properties: arn: description: arn is the AWS Secret ARN that contains the secure header list to be applied. type: string version_id: description: version_id is the AWS Secret's version ID that contains the version of the secret to be applied. type: string type: object type: object type: - array - 'null' require_publish: description: Indicates which publish points must succeed for segment publishing to use the keys. enum: - ANY - ALL type: string type: object type: object mp2t: additionalProperties: false properties: force_unmuxed_audio: description: Forces the Video and Audio Encodings to be unmuxed when there is one audio encodings. This setting will have to be uniformed across MP2T packagers within a config. When there are two or more audio encodings, unmuxed will be used automatically. type: boolean insert_id3_utc_time: description: If true, insert ID3 tags that include a UTC timestamp. This is a Turner/WM-specific extension. type: boolean type: object mp4: additionalProperties: false properties: caption_placement: description: CaptionPlacement defines where caption messages should be placed in the output MP4. enum: - SEI_PAYLOAD - CLCP_TRACK type: string insert_pssh_box: description: Insert pssh boxes generated by content protection into packaged segments. Defaults to not insert pssh boxes to the packaged segments. type: boolean type: object ttml: additionalProperties: false type: object web_vtt: additionalProperties: false properties: file_format: description: The file format used to encapsulate the WebVTT segments. enum: - TEXT - MP4 type: string type: object type: object description: Defines the list of packagers available for Publications. type: object type: object IngestStatus: additionalProperties: false properties: primary_status: $ref: '#/components/schemas/SourceStatus' description: Primary source status. secondary_status: $ref: '#/components/schemas/SourceStatus' description: Secondary source status. source_loss_slate_status: $ref: '#/components/schemas/SourceStatus' description: Source-loss slate status. source_merging_active: description: Reports whether source merging is currently active i.e. that the transcoder is merging samples from primary and secondary sources to conceal errors. type: boolean source_merging_disabled: description: Reports whether source merging was disabled via API. type: boolean type: object TextOverlay: additionalProperties: false properties: background: description: The background color and opacity given in RGBA hex format. Background applies to the background of both the text and the text padding. examples: - '#A2A2A2FF' minLength: 7 type: string font_color: description: The font color to use for the text overlay. Given as an RGB hex string. examples: - '#FF0000' type: string font_height: description: The font height as a percentage of screen height. examples: - 5 exclusiveMinimum: 0 format: float type: number font_resource_id: description: The font resource id to use for the text overlay. This must reference a dynamic resource of type 'FONT'. examples: - my-font minLength: 1 type: string padding: $ref: '#/components/schemas/TextOverlayPadding' description: The padding around the text. Used for positioning and for background. text: description: The text to overlay on the video. examples: - Hello World! minLength: 1 type: string x: $ref: '#/components/schemas/Position' description: The horizontal position of the text overlay. Zero is the left side of the screen/overlay. y: $ref: '#/components/schemas/Position' description: The vertical position of the text overlay. Zero is the top of the screen/overlay. type: object Cie1931P: additionalProperties: false properties: x: format: double type: number y: format: double type: number type: object GraphicOverlay: additionalProperties: false properties: resource_id: description: The key to the dynamic resource definition in the channel's transcoder configuration. This must reference a dynamic resource of type 'GRAPHIC'. examples: - channel-logo minLength: 1 type: string x: $ref: '#/components/schemas/Position' y: $ref: '#/components/schemas/Position' type: object AudioTrackInfo: additionalProperties: false properties: bitrate: format: int32 type: integer codec_string: description: codec_string will be set to the RFC 6381 compliant string that represents the specific codec in this AudioTrackInfo. ex. 'mp4a.40.2' for AAC Low-Complexity. type: string id: format: int32 minimum: 0 type: integer name: description: Friendly name of the AudioTrack. type: string num_channels: format: int32 type: integer sample_rate: format: int32 type: integer type: object AudioSourceRemappingSource: additionalProperties: false properties: audio_source_id: description: Identifies the ID of the elementary audio source from which this channel will be sourced. minLength: 1 type: string channel_index: description: 'Identifies the zero-based channel index within the audio decoded from audio_source_id which is used for this channel mapping. If this index is out of bounds, the audio for this channel will be silent. For SMPTE-302M inputs, channel indices are always in the range 0-8 (unless the Aventus-specific extension for carrying more than 8 channels in one elementary stream is in use) and name the Nth channel of the input. I.e., the base channel index indicated by the input stream is ignored. For non-SMPTE-302M inputs with 1, 2, or 6 channels, the following index-to-channel mapping always applies: - 0 is front left (i.e. the only channel for mono) - 1 is front right - 2 is front center - 3 is LFE - 4 is side left - 5 is side right For non-SMPTE-302M inputs with 3, 4, or 5 channels, no index mapping is guaranteed. For non-SMPTE-302M inputs with more than 6 channels, the index mapping that would be used for 6 channels is guaranteed, and no specific mapping for the other channels is guaranteed.' format: int32 minimum: 0 type: integer type: object VideoStreamDetails: additionalProperties: false properties: bit_depth: format: int32 type: integer clli: $ref: '#/components/schemas/ContentLightLevelInfo' color_description: $ref: '#/components/schemas/ColorDescription' frame_height: format: int32 type: integer frame_width: format: int32 type: integer mdcv: $ref: '#/components/schemas/MasteringDisplayColorVolume' type: object GetPreviewStreamsResponse: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/GetPreviewStreamsResponse.json format: uri readOnly: true type: string audio_tracks: description: 'Lists of all audio and video tracks that are available. Note: the default audio and video track info will also appear here.' items: $ref: '#/components/schemas/AudioTrackInfo' type: - array - 'null' default_audio_track: $ref: '#/components/schemas/AudioTrackInfo' description: Audio and Video Track info provided so that callers have easy access to track information of default tracks in the above default_url. default_url: description: 'default_url contains the default URL that can be used to start playback. Ex: https://example.com/cluster/org/isp/ext_id/foo/play?vid_id=2&aud_id=6 The vid_id and aud_id can be changed utilizing the ones provided by the ''audio_tracks'' and ''video_tracks'' fields to see different combinations.' type: string default_video_track: $ref: '#/components/schemas/VideoTrackInfo' token: description: JWT Bearer token that shall be supplied with a 'pre-flight' to myriapod.js to send the auth token to the server. type: string video_tracks: items: $ref: '#/components/schemas/VideoTrackInfo' type: - array - 'null' type: object ErrorModel: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/ErrorModel.json format: uri readOnly: true type: string detail: description: A human-readable explanation specific to this occurrence of the problem. examples: - Property foo is required but is missing. type: string errors: description: Optional list of individual error details items: $ref: '#/components/schemas/ErrorDetail' type: - array - 'null' instance: description: A URI reference that identifies the specific occurrence of the problem. examples: - https://example.com/error-log/abc123 format: uri type: string status: description: HTTP status code examples: - 400 format: int64 type: integer title: description: A short, human-readable summary of the problem type. This value should not change between occurrences of the error. examples: - Bad Request type: string type: default: about:blank description: A URI reference to human-readable documentation for the error. examples: - https://example.com/errors/example format: uri type: string type: object PublishPointHTTP: additionalProperties: false properties: basic_auth: additionalProperties: false properties: password: description: Plain text password for basic auth. type: string username: description: Username for basic auth. type: string type: object compression: description: Configures whether or not (and how) to compress manifests being published to the origin. If not specified, manifests will not be compressed. enum: - NONE - GZIP type: string do_not_monitor: description: (Optional) Specifies if this pubpoint should not be monitored by PLM. type: boolean headers: additionalProperties: type: string description: Allows custom HTTP headers to be set via configuration for all HTTP requests. type: object method: description: Method overrides what HTTP method to specify in requests to the Publish Point. If not specified the service will default to POST. type: string playback_base_url: description: The base URL where published playlists will be able to be obtained. This is often different than the publish_base_url for CDN publishing workflows. format: uri-reference type: string playback_query_params: description: 'Specifies any query parameters that will be added to playback urls. Should not include the initial ''?'' Example: ''foo=bar&q=golang''' type: string publish_base_url: description: The base URL where generated playlists will be sent/published. Each publish point requires a unique 'publish_base_url'. format: uri-reference type: string secure_header_auth: additionalProperties: false properties: arn: description: arn is the AWS Secret ARN that contains the secure header list to be applied. type: string version_id: description: version_id is the AWS Secret's version ID that contains the version of the secret to be applied. type: string type: object type: object TextOverlayPadding: additionalProperties: false properties: bottom: format: float type: number left: format: float type: number right: format: float type: number top: format: float type: number type: object InsertMetadataBody: additionalProperties: false properties: $schema: description: A URL to the JSON Schema for this object. examples: - https://api.istreamplanet.com/schemas/InsertMetadataBody.json format: uri readOnly: true type: string presentation_time: description: The media stream timestamp for where the transcoder inserted the metadata format: date-time type: string required: - presentation_time type: object MasteringDisplayColorVolume: additionalProperties: false properties: blue: $ref: '#/components/schemas/Cie1931P' green: $ref: '#/components/schemas/Cie1931P' max_display_mastering_luminance: format: double type: number min_display_mastering_luminance: format: double type: number red: $ref: '#/components/schemas/Cie1931P' white_point: $ref: '#/components/schemas/Cie1931P' type: object ErrorDetail: additionalProperties: false properties: location: description: Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id' type: string message: description: Error message text type: string value: description: The value at the given location type: object HdrSettingsMasteringDisplayColorVolume: additionalProperties: false properties: color_profile: description: Identifies color primaries and white point. enum: - BT2020 - P3_D65 - BT709 type: string max_dml: description: Maximum display mastering luminance (nits). Must be greater than min_dml. format: double maximum: 10000 minimum: 0 type: number min_dml: description: Minimum display mastering luminance (nits). format: double maximum: 10000 minimum: 0 type: number type: object LogData: additionalProperties: false properties: base64: type: string message: type: string pretty: type: string required: - message - base64 - pretty type: object SrtPublicationEncoder: additionalProperties: false properties: id: minLength: 1 type: string pid: description: Output MPEG-TS PID. PIDs should be set on the PMT, SCTE-35 and all encoders or none. Valid PIDs must 13-bit values greater than 31. If no PIDs are provided (pid == 0) then they will be generated automatically. exclusiveMaximum: 8191 format: int32 type: integer type: object Segment: additionalProperties: false properties: end: description: The program time when the segment ends (or ended). format: date-time type: string event_id: description: The event_id used in the Signal START that resulted in this signaling segment. format: int32 minimum: 0 type: integer segment_id: description: Uniquely identifies the signaling segment for a channel. This is assigned by the transcoder when the segment is created. format: int64 minimum: 0 type: integer slate_url: description: When set, contains the URL to the slate media asset that will play for the duration of the segment. type: string start: description: The program time when the segment starts (or started). format: date-time type: string timed_metadata_payload: description: Timed metadata opaque payload data. type: string timed_metadata_type: description: The timed metadata signal's type. type: string type: enum: - SPLICE_INSERT - CONTENT_ID - PROGRAM - PROGRAM_BLACKOUT_OVERRIDE - PROGRAM_BREAKAWAY - CHAPTER - BREAK - OPENING_CREDIT - CLOSING_CREDIT - PROVIDER_PLACEMENT_OP - DISTRIBUTOR_PLACEMENT_OP - PROVIDER_OVERLAY_OP - DISTRIBUTOR_OVERLAY_OP - PROVIDER_AD - DISTRIBUTOR_AD - UNSCHEDULED_EVENT - NETWORK - SLATE - NOT_INDICATED - TIMED_METADATA - TIMED_METADATA_MARKER_OVER_SLATE type: string type: object ColorDescription: additionalProperties: false properties: color_primaries: enum: - CP_RESERVED - CP_BT_709 - CP_BT_470_M - CP_BT_470_BG - CP_SMPTE_170_M - CP_SMPTE_240_M - CP_FILM - CP_BT_2020 - CP_SMPTE_428 - CP_SMPTE_431 - CP_SMPTE_432 type: string matrix_coeffs: enum: - MC_GBR - MC_BT_709 - MC_FCC - MC_BT_470_BG - MC_SMPTE_170_M - MC_SMPTE_240_M - MC_Y_CG_CO - MC_BT_2020_NC - MC_BT_2020_C - MC_SMPTE_2085 - MC_CHROMA_DERIVED_NC - MC_CHROMA_DERIVED_C - MC_I_CT_CP type: string transfer_characteristics: enum: - TC_RESERVED - TC_BT_709 - TC_BT_470_M - TC_BT_470_BG - TC_SMPTE_170_M - TC_SMPTE_240_M - TC_LINEAR - TC_LOG_100 - TC_LOG_316 - TC_IEC_61966_2_4 - TC_BT_1361_E - TC_IEC_61966_2_1 - TC_BT_2020_10 - TC_BT_2020_12 - TC_SMPTE_2084_PQ - TC_SMPTE_428 - TC_ARIB_STD_B67_HLG type: string type: object Position: additionalProperties: false properties: anchor: description: The position of the anchor point within the overlay, given as a percentage of the overlay size. examples: - 100 format: float type: number position: description: The position of the anchor point on the video, given as a percentage of the video. examples: - 95 format: float type: number type: object AudioMute: additionalProperties: false properties: audio_channel: enum: - ALL - FRONT_LEFT - FRONT_RIGHT - FRONT_CENTER - LOW_FREQUENCY - SIDE_LEFT - SIDE_RIGHT examples: - FRONT_LEFT type: string audio_source_id: minLength: 1 type: string type: object VideoTrackInfo: additionalProperties: false properties: bitrate: format: int32 type: integer codec_string: description: codec_string will be set to the RFC 6381 compliant string that represents the specific codec in this VideoTrackInfo. ex. 'avc1.4d401e' for H.264 and 'hvc1.2.4.L150.90' for H.265. This can be used to verify track+browser compatibility. type: string frame_rate: format: float type: number height: format: int32 type: integer id: format: int32 minimum: 0 type: integer name: description: Friendly name of the VideoTrack. type: string width: format: int32 type: integer type: object HdrSettingsContentLightLevelInfo: additionalProperties: false properties: max_cll: description: Maximum Content Light Level (nits). format: double maximum: 10000 minimum: 0 type: number max_fall: description: Maximum Frame-Average Light Level (nits). format: double maximum: 10000 minimum: 0 type: number type: object DynamicState: additionalProperties: false properties: audio_mutes: description: The complete list of muted audios. items: $ref: '#/components/schemas/AudioMute' type: - array - 'null' graphic_overlays: description: The complete list of graphic overlays. items: $ref: '#/components/schemas/GraphicOverlay' type: - array - 'null' text_overlays: description: The complete list of text overlays. items: $ref: '#/components/schemas/TextOverlay' type: - array - 'null' type: object securitySchemes: authcode: flows: authorizationCode: authorizationUrl: https://sso.wbd.com/oauth2/aus125bl6q770za4g0x8/v1/authorize scopes: null tokenUrl: https://sso.wbd.com/oauth2/aus125bl6q770za4g0x8/v1/token type: oauth2 m2m: flows: clientCredentials: scopes: null tokenUrl: https://sso.wbd.com/oauth2/aus125bl6q770za4g0x8/v1/token type: oauth2 x-refined-from: - istreamplanet-aventus-channels-openapi.json - istreamplanet-aventus-channels-openapi.yml x-cli-config: params: authorize_url: https://sso.wbd.com/oauth2/aus125bl6q770za4g0x8/v1/authorize client_id: 0oa125bj1lwLZRxjD0x8 redirect_url: http://auth.rest.sh:8484 scopes: offline_access,Groups state: non-empty token_url: https://sso.wbd.com/oauth2/aus125bl6q770za4g0x8/v1/token security: authcode