• 沒有找到結果。

AWS Elemental MediaPackage

N/A
N/A
Protected

Academic year: 2022

Share "AWS Elemental MediaPackage"

Copied!
72
0
0

加載中.... (立即查看全文)

全文

(1)

AWS Elemental MediaPackage

VOD API Reference

(2)

AWS Elemental MediaPackage: VOD API Reference

Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon.

(3)

Table of Contents

What Is the AWS Elemental MediaPackage VOD API Reference? ... 1

Resources ... 2

Assets ... 2

URI ... 2

HTTP methods ... 2

Schemas ... 5

Properties ... 6

Assets id ... 10

URI ... 10

HTTP methods ... 10

Schemas ... 13

Properties ... 13

Packaging_configurations ... 15

URI ... 15

HTTP methods ... 15

Schemas ... 18

Properties ... 24

Packaging_configurations id ... 34

URI ... 34

HTTP methods ... 34

Schemas ... 37

Properties ... 39

Packaging_groups ... 48

URI ... 48

HTTP methods ... 48

Schemas ... 50

Properties ... 52

Packaging_groups id ... 54

URI ... 54

HTTP methods ... 54

Schemas ... 58

Properties ... 59

Packaging_groups id Configure_logs ... 60

URI ... 61

HTTP methods ... 61

Schemas ... 62

Properties ... 62

Tags resource-arn ... 64

URI ... 64

HTTP methods ... 65

Schemas ... 66

Properties ... 66

Document History ... 68

AWS glossary ... 69

(4)

What Is the AWS Elemental

MediaPackage VOD API Reference?

This is the AWS Elemental MediaPackage VOD REST API Reference. It contains examples of REST resources and their operations for video on demand (VOD).

For the AWS Elemental MediaPackage Live REST API Reference, see AWS Elemental MediaPackage API Reference.

AWS Elemental MediaPackage VOD REST API overview

The AWS Elemental MediaPackage VOD API comprises of three main resources: the asset, the packaging group, and the packaging configuration. The asset is the entry point to AWS Elemental MediaPackage VOD. A packaging group is associated with the asset, and holds one or more packaging configurations.

The packaging configurations are the exit points from AWS Elemental MediaPackage VOD. The packaging configuration determines how outputs from this asset are formatted.

To get started with AWS Elemental MediaPackage VOD Step 1: Create a packaging group.

The packaging group holds one or more packaging configurations. You can create the group once and associate multiple assets with it, so that they all use the same packaging configurations.

Step 2: Create packaging configurations.

The packaging configuration is held in a packaging group and is attached to an asset. The configuration represents the output of the content from AWS Elemental MediaPackage. Each configuration provides downstream content distribution networks (CDNs) and players access to the content for playback.

Step 3: Create an asset.

The asset represents the input to AWS Elemental MediaPackage VOD. Associate a packaging group to the asset so that content can be served for playback. When you create the asset, it initiates ingest of your specified source content from Amazon S3.

Step 4: Integrate AWS Elemental MediaPackage VOD.

When the asset is created and a packaging group is associated with it, AWS Elemental MediaPackage provides URLs for each packaging configuration on the asset. In the CDN or player, enter the

configuration URL from the asset as the content request address.

For general information on the service, see the AWS Elemental MediaPackage User Guide.

(5)

Assets

Resources

The AWS Elemental MediaPackage VOD REST API includes the following resources.

Topics

• Assets (p. 2)

• Assets id (p. 10)

• Packaging_configurations (p. 15)

• Packaging_configurations id (p. 34)

• Packaging_groups (p. 48)

• Packaging_groups id (p. 54)

• Packaging_groups id Configure_logs (p. 60)

• Tags resource-arn (p. 64)

Assets

URI

/assets

HTTP methods

GET

Operation ID: ListAssets

Lists assets that match a set of filters that you define.

Query parameters

Name Type Required Description

packagingGroupId String False Limits the results

to records that are associated with the given packaging group.

nextToken String False Pagination token. Use

this token to request the next page of record results.

maxResults String False Upper bound on

number of records to return.

(6)

HTTP methods

Responses

Status code Response model Description

200 AssetList (p. 5) 200 OK response

The list of tags is returned successfully.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of a temporary overload or maintenance.

POST

Operation ID: CreateAsset

Creates an asset to ingest VOD content.

(7)

HTTP methods

Once created, the asset starts ingesting content and generates playback URLs for the packaging configurations associated with it. When ingest is complete, downstream devices request VOD content from AWS Elemental MediaPackage using the appropriate URL.

Responses

Status code Response model Description

200 Asset (p. 5) 200 OK response

The list of tags is returned successfully.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of a temporary overload or maintenance.

(8)

Schemas

OPTIONS

Enable cross-origin resource sharing (CORS) by returning correct headers.

Responses

Status code Response model Description

200 None 200 OK response

The list of tags is returned successfully.

Schemas

Request bodies

POST schema

{

"packagingGroupId": "string", "sourceArn": "string",

"resourceId": "string", "sourceRoleArn": "string", "id": "string",

"tags": { }

}

Response bodies

AssetList schema

{

"assets": [ {

"createdAt": "string", "packagingGroupId": "string", "sourceArn": "string", "resourceId": "string", "sourceRoleArn": "string", "id": "string",

"arn": "string", "tags": { }

}

], "nextToken": "string"

}

Asset schema

{

"createdAt": "string",

"packagingGroupId": "string",

(9)

Properties

"sourceArn": "string", "resourceId": "string", "sourceRoleArn": "string", "id": "string",

"arn": "string", "egressEndpoints": [ {

"packagingConfigurationId": "string", "url": "string",

"status": "string"

} ], "tags": { }

}

Properties

Asset

Parameters for an asset.

createdAt

The time the Asset was initially submitted for Ingest.

Type: string Required: False

packagingGroupId

The ID of the packaging group associated with this asset.

Type: string Required: False

sourceArn

The ARN for the source content in Amazon S3.

Type: string Required: False

resourceId

Unique identifier for this asset, as it is configured in the key provider service.

Type: string Required: False

sourceRoleArn

The ARN for the IAM role that provides AWS Elemental MediaPackage access to the Amazon S3 bucket where the source content is stored. Valid format: arn:aws:iam::{accountID}:role/{name}

Type: string

(10)

Properties

Required: False

id

Unique identifier that you assign to the asset.

Type: string Required: False

arn

The Amazon Resource Name (ARN) for the asset. You can get this from the response to any request to the asset.

Type: string Required: False

egressEndpoints

List of playback endpoints that are available for this asset.

Type: Array of type EgressEndpoint (p. 9) Required: False

tags

The tags to assign to the asset.

Type: Tags (p. 10) Required: False

AssetCreateParameters

Parameters for creating an asset.

packagingGroupId

The ID of the packaging group associated with this asset.

Type: string Required: True

sourceArn

The ARN for the source content in Amazon S3.

Type: string Required: True

resourceId

Unique identifier for this asset, as it's configured in the key provider service.

(11)

Properties

Type: string Required: False

sourceRoleArn

The ARN for the IAM role that provides AWS Elemental MediaPackage access to the Amazon S3 bucket where the source content is stored. Valid format: arn:aws:iam::{accountID}:role/{name}

Type: string Required: True

id

Unique identifier that you assign to the asset.

Type: string Required: True

tags

The tags to assign to the asset.

Type: Tags (p. 10) Required: False

AssetList

A collection of Asset records.

assets

A list of Asset records that are configured on this account in this AWS Region.

Type: Array of type AssetShallow (p. 8) Required: False

nextToken

Pagination token. Use this token to request the next page of assets results.

Type: string Required: False

AssetShallow

Parameters on an asset.

createdAt

The time the Asset was initially submitted for Ingest.

Type: string Required: False

(12)

Properties

packagingGroupId

The ID of the packaging group associated with this asset.

Type: string Required: False

sourceArn

The ARN for the source content in Amazon S3.

Type: string Required: False

resourceId

Unique identifier for this endpoint, as it is configured in the key provider service.

Type: string Required: False

sourceRoleArn

The ARN for the IAM role that provides AWS Elemental MediaPackage access to the Amazon S3 bucket where the source content is stored. Valid format: arn:aws:iam::{accountID}:role/{name}

Type: string Required: False

id

Unique identifier that you assigned to the asset.

Type: string Required: False

arn

The Amazon Resource Name (ARN) for the asset. You can get this from the response to any request to the asset.

Type: string Required: False

tags

The tags to assign to the asset.

Type: Tags (p. 10) Required: False

EgressEndpoint

The playback endpoint for a packaging configuration on an asset.

(13)

Assets id

packagingConfigurationId

The ID of a packaging configuration that's applied to this asset.

Type: string Required: False

url

The URL that's used to request content from this endpoint.

Type: string Required: False

status

The current processing status of the asset used for the packaging configuration. The status can be either QUEUED, PROCESSING, PLAYABLE, or FAILED. Status information isn't available for most assets ingested before September 30th, 2021.

Type: string Required: False

Tags

A collection of tags associated with a resource.

key-value pairs

Type: string

Assets id

URI

/assets/id

HTTP methods

GET

Operation ID: DescribeAsset Provides details about an asset.

Path parameters

Name Type Required Description

id String True Identifier for the object

that you're working on.

(14)

HTTP methods

Responses

Status code Response model Description

200 Asset (p. 13) 200 OK response

The list of tags is returned successfully.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of a temporary overload or maintenance.

DELETE

Operation ID: DeleteAsset Permanently deletes an asset.

(15)

HTTP methods

Path parameters

Name Type Required Description

id String True Identifier for the object

that you're working on.

Responses

Status code Response model Description

202 None 202 Accepted response

AWS Elemental MediaPackage accepted the request but has not processed it yet.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of

(16)

Schemas

Status code Response model Description

a temporary overload or maintenance.

OPTIONS

Enable cross-origin resource sharing (CORS) by returning correct headers.

Responses

Status code Response model Description

200 None 200 OK response

The list of tags is returned successfully.

Schemas

Response bodies

Asset schema

{

"createdAt": "string",

"packagingGroupId": "string", "sourceArn": "string",

"resourceId": "string", "sourceRoleArn": "string", "id": "string",

"arn": "string", "egressEndpoints": [ {

"packagingConfigurationId": "string", "url": "string",

"status": "string"

} ], "tags": { }}

Properties

Asset

Parameters for an asset.

createdAt

The time the Asset was initially submitted for Ingest.

Type: string Required: False

(17)

Properties

packagingGroupId

The ID of the packaging group associated with this asset.

Type: string Required: False

sourceArn

The ARN for the source content in Amazon S3.

Type: string Required: False

resourceId

Unique identifier for this asset, as it is configured in the key provider service.

Type: string Required: False

sourceRoleArn

The ARN for the IAM role that provides AWS Elemental MediaPackage access to the Amazon S3 bucket where the source content is stored. Valid format: arn:aws:iam::{accountID}:role/{name}

Type: string Required: False

id

Unique identifier that you assign to the asset.

Type: string Required: False

arn

The Amazon Resource Name (ARN) for the asset. You can get this from the response to any request to the asset.

Type: string Required: False

egressEndpoints

List of playback endpoints that are available for this asset.

Type: Array of type EgressEndpoint (p. 15) Required: False

tags

The tags to assign to the asset.

(18)

Packaging_configurations

Type: Tags (p. 15) Required: False

EgressEndpoint

The playback endpoint for a packaging configuration on an asset.

packagingConfigurationId

The ID of a packaging configuration that's applied to this asset.

Type: string Required: False

url

The URL that's used to request content from this endpoint.

Type: string Required: False

status

The current processing status of the asset used for the packaging configuration. The status can be either QUEUED, PROCESSING, PLAYABLE, or FAILED. Status information isn't available for most assets ingested before September 30th, 2021.

Type: string Required: False

Tags

A collection of tags associated with a resource.

key-value pairs

Type: string

Packaging_configurations

URI

/packaging_configurations

HTTP methods

GET

Operation ID: ListPackagingConfigurations

Lists packaging configurations that match a set of filters that you define.

(19)

HTTP methods

Query parameters

Name Type Required Description

packagingGroupId String False Limits the results

to records that are associated with the given packaging group.

nextToken String False Pagination token. Use

this token to request the next page of record results.

maxResults String False Upper bound on

number of records to return.

Responses

Status code Response model Description

200 PackagingConfigurationList (p. 20)200 OK response

The list of tags is returned successfully.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental

(20)

HTTP methods

Status code Response model Description

MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of a temporary overload or maintenance.

POST

Operation ID: CreatePackagingConfiguration Creates a packaging configuration in a packaging group.

The packaging configuration represents a single delivery point for an asset. It determines how the output from this endpoint is formatted.

Responses

Status code Response model Description

200 PackagingConfiguration (p. 22)200 OK response

The list of tags is returned successfully.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

(21)

Schemas

Status code Response model Description

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of a temporary overload or maintenance.

OPTIONS

Enable cross-origin resource sharing (CORS) by returning correct headers.

Responses

Status code Response model Description

200 None 200 OK response

The list of tags is returned successfully.

Schemas

Request bodies

POST schema

{

"packagingGroupId": "string", "dashPackage": {

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"segmentTemplateFormat": enum, "periodTriggers": [

enum ],

(22)

Schemas

"dashManifests": [ {

"minBufferTimeSeconds": integer, "manifestName": "string", "profile": enum,

"manifestLayout": enum, "streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ] },

"id": "string", "cmafPackage": {

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"constantInitializationVector": "string", "spekeKeyProvider": {

"systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

]

}, "hlsPackage": {

"useAudioRenditionGroup": boolean, "segmentDurationSeconds": integer, "encryption": {

"constantInitializationVector": "string", "encryptionMethod": enum,

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer,

(23)

Schemas

"minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

],

"includeDvbSubtitles": boolean }, "mssPackage": {

"segmentDurationSeconds": integer, "encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"mssManifests": [ {

"manifestName": "string", "streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ] }, "tags": { }

}

Response bodies

PackagingConfigurationList schema

{ "nextToken": "string", "packagingConfigurations": [ {

"packagingGroupId": "string", "dashPackage": {

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"segmentTemplateFormat": enum, "periodTriggers": [

enum ],

"dashManifests": [ {

"minBufferTimeSeconds": integer, "manifestName": "string", "profile": enum,

"manifestLayout": enum,

(24)

Schemas

"streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ] },

"id": "string", "arn": "string", "cmafPackage": {

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"constantInitializationVector": "string", "spekeKeyProvider": {

"systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

] },

"hlsPackage": {

"useAudioRenditionGroup": boolean, "segmentDurationSeconds": integer, "encryption": {

"constantInitializationVector": "string", "encryptionMethod": enum,

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

],

(25)

Schemas

"includeDvbSubtitles": boolean },

"mssPackage": {

"segmentDurationSeconds": integer, "encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"mssManifests": [ {

"manifestName": "string", "streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ] }, "tags": { }

} ]}

PackagingConfiguration schema

{ "packagingGroupId": "string", "dashPackage": {

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"segmentTemplateFormat": enum, "periodTriggers": [

enum ],

"dashManifests": [ {

"minBufferTimeSeconds": integer, "manifestName": "string", "profile": enum,

"manifestLayout": enum, "streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ] },

(26)

Schemas

"id": "string", "arn": "string", "cmafPackage": {

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"constantInitializationVector": "string", "spekeKeyProvider": {

"systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

]

}, "hlsPackage": {

"useAudioRenditionGroup": boolean, "segmentDurationSeconds": integer, "encryption": {

"constantInitializationVector": "string", "encryptionMethod": enum,

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

],

"includeDvbSubtitles": boolean }, "mssPackage": {

"segmentDurationSeconds": integer, "encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

(27)

Properties

],

"roleArn": "string", "url": "string"

} },

"mssManifests": [ {

"manifestName": "string", "streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ] }, "tags": { }}

Properties

CmafEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

constantInitializationVector

An optional 128-bit, 16-byte hex value represented by a 32-character string, used in conjunction with the key for encrypting blocks. If you don't specify a value, then MediaPackage creates the constant initialization vector (IV).

Type: string Required: False

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 33) Required: True

CmafPackage

Parameters for a packaging configuration that uses Common Media Application Format (CMAF) packaging.

includeEncoderConfigurationInSegments

When includeEncoderConfigurationInSegments is set to true, MediaPackage places your encoder's Sequence Parameter Set (SPS), Picture Parameter Set (PPS), and Video Parameter Set (VPS) metadata in every video segment instead of in the init fragment. This lets you use different SPS/PPS/

VPS settings for your assets during content playback.

Type: boolean Required: False

(28)

Properties

segmentDurationSeconds

Duration (in seconds) of each segment. Actual segments will be rounded to the nearest multiple of the source fragment duration.

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: CmafEncryption (p. 24) Required: False

hlsManifests

A list of HLS manifest configurations available from this endpoint.

Type: Array of type HlsManifest (p. 28) Required: True

DashEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 33) Required: True

DashManifest

Parameters for a DASH manifest.

minBufferTimeSeconds

Minimum amount of content (measured in seconds) that a player must keep available in the buffer.

Type: integer Required: False

manifestName

A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.

Type: string Required: False

profile

The DASH profile type. When set to HBBTV_1_5, the content is compliant with HbbTV 1.5.

(29)

Properties

Type: string Required: False

Values: NONE | HBBTV_1_5

manifestLayout

Determines the position of some tags in the Media Presentation Description (MPD). When set to FULL, elements like SegmentTemplate and ContentProtection are included in each Representation. When set to COMPACT, duplicate elements are combined and presented at the AdaptationSet level.

Type: string Required: False

Values: FULL | COMPACT

streamSelection

Limitations for outputs from the endpoint, based on the video bitrate.

Type: StreamSelection (p. 33) Required: False

DashPackage

Parameters for a packaging configuration that uses Dynamic Adaptive Streaming over HTTP (DASH) packaging.

includeEncoderConfigurationInSegments

When includeEncoderConfigurationInSegments is set to true, MediaPackage places your encoder's Sequence Parameter Set (SPS), Picture Parameter Set (PPS), and Video Parameter Set (VPS) metadata in every video segment instead of in the init fragment. This lets you use different SPS/PPS/

VPS settings for your assets during content playback.

Type: boolean Required: False

segmentDurationSeconds

Duration (in seconds) of each fragment. Actual fragments will be rounded to the nearest multiple of the source segment duration.

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: DashEncryption (p. 25) Required: False

segmentTemplateFormat

Determines the type of SegmentTemplate included in the Media Presentation Description (MPD). When set to NUMBER_WITH_TIMELINE, a full timeline is presented in each SegmentTemplate, with $Number$

(30)

Properties

media URLs. When set to TIME_WITH_TIMELINE, a full timeline is presented in each SegmentTemplate, with $Time$ media URLs. When set to NUMBER_WITH_DURATION, only a duration is included in each SegmentTemplate, with $Number$ media URLs.

Type: string Required: False

Values: NUMBER_WITH_TIMELINE | TIME_WITH_TIMELINE | NUMBER_WITH_DURATION

periodTriggers

A list of triggers that controls when the outgoing Dynamic Adaptive Streaming over HTTP (DASH) Media Presentation Description (MPD) will be partitioned into multiple periods. If set to NONE, the entire duration of the ouput manifest is included in a single period. If set to ADS, multiple periods are added to the output manifest based on SCTE-35 ad markers in the source video stream.

Type: Array of type string Required: False

Values: ADS

dashManifests

A list of DASH manifest configurations available from this endpoint.

Type: Array of type DashManifest (p. 25) Required: True

HlsEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

constantInitializationVector

A 128-bit, 16-byte hex value represented by a 32-character string, used in conjunction with the key for encrypting blocks. If you don't specify a constant initialization vector (IV), MediaPackage periodically rotates the IV.

Type: string Required: False

encryptionMethod

HLS encryption type.

Type: string Required: False

Values: AES_128 | SAMPLE_AES

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 33) Required: True

(31)

Properties

HlsManifest

Parameters for an HLS manifest.

repeatExtXKey

Repeat the EXT-X-KEY directive for every media segment. This might result in an increase in client requests to the DRM server.

Type: boolean Required: False

adMarkers

This setting controls ad markers in the packaged content. NONE omits SCTE-35 ad markers from the output. PASSTHROUGH copies SCTE-35 ad markers from the source content to the output.

SCTE35_ENHANCED generates ad markers and blackout tags in the output, based on SCTE-35 messages in the source content.

Type: string Required: False

Values: NONE | SCTE35_ENHANCED | PASSTHROUGH

manifestName

A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.

Type: string Required: False

programDateTimeIntervalSeconds

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify.

Additionally, ID3Timed metadata messages are generated every 5 seconds starting when the content was ingested.

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

Omit this attribute or enter 0 to indicate that the EXT-X-PROGRAM-DATE-TIME tags are not included in the manifest.

Type: integer Required: False

streamSelection

Video bitrate limitations for outputs from this packaging configuration.

Type: StreamSelection (p. 33) Required: False

includeIframeOnlyStream

Applies to stream sets with a single video track only. When enabled, the output includes an additional I- frame only stream, along with the other tracks.

(32)

Properties

Type: boolean Required: False

HlsPackage

Parameters for a packaging configuration that uses HTTP Live Streaming (HLS) packaging.

useAudioRenditionGroup

When true, AWS Elemental MediaPackage bundles all audio tracks in a rendition group. All other tracks in the stream can be used with any audio rendition from the group.

Type: boolean Required: False

segmentDurationSeconds

Duration (in seconds) of each fragment. Actual fragments will be rounded to the nearest multiple of the source fragment duration.

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: HlsEncryption (p. 27) Required: False

hlsManifests

A list of HLS manifest configurations available from this endpoint.

Type: Array of type HlsManifest (p. 28) Required: True

includeDvbSubtitles

When enabled, MediaPackage passes through digital video broadcasting (DVB) subtitles into the output.

Type: boolean Required: False

MssEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 33) Required: True

(33)

Properties

MssManifest

Parameters for a Microsoft Smooth manifest.

manifestName

A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.

Type: string Required: False

streamSelection

Video bitrate limitations for outputs from this packaging configuration.

Type: StreamSelection (p. 33) Required: False

MssPackage

Parameters for a packaging configuration that uses Microsoft Smooth Streaming (MSS) packaging.

segmentDurationSeconds

Duration (in seconds) of each fragment. Actual fragments are rounded to the nearest multiple of the source fragment duration.

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: MssEncryption (p. 29) Required: False

mssManifests

A list of Microsoft Smooth manifest configurations available from this endpoint.

Type: Array of type MssManifest (p. 30) Required: True

PackagingConfiguration

PackagingConfiguration.

packagingGroupId

The ID of the packaging group associated with this packaging configuration.

Type: string Required: False

(34)

Properties

dashPackage

Parameters for DASH-ISO packaging.

Type: DashPackage (p. 26) Required: False

id

Unique identifier that you assign to the packaging configuration.

Type: string Required: False

arn

The Amazon Resource Name (ARN) for the packaging configuration. You can get this from the response to any request to the packaging configuration.

Type: string Required: False

cmafPackage

Parameters for CMAF packaging.

Type: CmafPackage (p. 24) Required: False

hlsPackage

Parameters for Apple HLS packaging.

Type: HlsPackage (p. 29) Required: False

mssPackage

Parameters for Microsoft Smooth Streaming packaging.

Type: MssPackage (p. 30) Required: False

tags

The tags to assign to the packaging configuration.

Type: Tags (p. 34) Required: False

PackagingConfigurationCreateParameters

Parameters for creating a packaging configuration.

(35)

Properties

packagingGroupId

The ID of the packaging group associated with this packaging configuration.

Type: string Required: True

dashPackage

Parameters for DASH-ISO packaging.

Type: DashPackage (p. 26) Required: False

id

Unique identifier that you assign to the packaging configuration.

Type: string Required: True

cmafPackage

Parameters for CMAF packaging.

Type: CmafPackage (p. 24) Required: False

hlsPackage

Parameters for Apple HLS packaging.

Type: HlsPackage (p. 29) Required: False

mssPackage

Parameters for Microsoft Smooth Streaming packaging.

Type: MssPackage (p. 30) Required: False

tags

The tags to assign to the packaging configuration.

Type: Tags (p. 34) Required: False

PackagingConfigurationList

A collection of PackagingConfiguration records.

(36)

Properties

nextToken

Pagination token. Use this token to request the next page of packaging configuration results.

Type: string Required: False

packagingConfigurations

A list of PackagingConfiguration records.

Type: Array of type PackagingConfiguration (p. 30) Required: False

SpekeKeyProvider

A configuration for accessing an external Secure Packager and Encoder Key Exchange (SPEKE) service that will provide encryption keys.

systemIds

List of unique identifiers for the DRM systems to use, as defined in the CPIX specification.

Type: Array of type string Required: True

roleArn

The ARN for the IAM role granted by the key provider that provides access to the key provider API.

This role must have a trust policy that allows AWS Elemental MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. Valid format:

arn:aws:iam::{accountID}:role/{name}

Type: string Required: True

url

URL for the key provider’s key retrieval API endpoint. Must start with https://.

Type: string Required: True

StreamSelection

Limitations for outputs from the endpoint, based on the video bitrate.

streamOrder

Order in which the different video bitrates are presented to the player.

Type: string Required: False

Values: ORIGINAL | VIDEO_BITRATE_ASCENDING | VIDEO_BITRATE_DESCENDING

(37)

Packaging_configurations id

maxVideoBitsPerSecond

The upper limit of the bitrates that this endpoint serves. If the video track exceeds this threshold, then AWS Elemental MediaPackage excludes it from output. If you don't specify a value, it defaults to 2147483647 bits per second.

Type: integer Required: False

minVideoBitsPerSecond

The lower limit of the bitrates that this endpoint serves. If the video track is below this threshold, then AWS Elemental MediaPackage excludes it from output. If you don't specify a value, it defaults to 0 bits per second.

Type: integer Required: False

Tags

A collection of tags associated with a resource.

key-value pairs

Type: string

Packaging_configurations id

URI

/packaging_configurations/id

HTTP methods

GET

Operation ID: DescribePackagingConfiguration Provides details about a packaging configuration.

Path parameters

Name Type Required Description

id String True Identifier for the object

that you're working on.

Responses

Status code Response model Description

200 PackagingConfiguration (p. 37)200 OK response

(38)

HTTP methods

Status code Response model Description

The list of tags is returned successfully.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of a temporary overload or maintenance.

DELETE

Operation ID: DeletePackagingConfiguration Permanently deletes a packaging configuration.

(39)

HTTP methods

Path parameters

Name Type Required Description

id String True Identifier for the object

that you're working on.

Responses

Status code Response model Description

202 None 202 Accepted response

AWS Elemental MediaPackage accepted the request but has not processed it yet.

403 None 403 Forbidden response

AWS Elemental MediaPackage cannot authorize the request, possibly due to insufficient authentication credentials.

404 None 404 Not Found response

AWS Elemental MediaPackage did not find a representation of the target resource.

422 None 422 Unprocessable Entity

response

AWS Elemental MediaPackage could not process the

instructions in the body of the request.

429 None 429 Too Many Requests

response

Too many requests have been sent in a given amount of time.

500 None 500 Internal Server Error

response

An unexpected condition prevented AWS Elemental MediaPackage from fulfilling the request.

503 None Service unavailable

response

AWS Elemental MediaPackage can't currently complete the request, usually because of

(40)

Schemas

Status code Response model Description

a temporary overload or maintenance.

OPTIONS

Enable cross-origin resource sharing (CORS) by returning correct headers.

Responses

Status code Response model Description

200 None 200 OK response

The list of tags is returned successfully.

Schemas

Response bodies

PackagingConfiguration schema

{ "packagingGroupId": "string", "dashPackage": {

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"segmentTemplateFormat": enum, "periodTriggers": [

enum ],

"dashManifests": [ {

"minBufferTimeSeconds": integer, "manifestName": "string", "profile": enum,

"manifestLayout": enum, "streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ]

}, "id": "string", "arn": "string", "cmafPackage": {

(41)

Schemas

"includeEncoderConfigurationInSegments": boolean, "segmentDurationSeconds": integer,

"encryption": {

"constantInitializationVector": "string", "spekeKeyProvider": {

"systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

]

}, "hlsPackage": {

"useAudioRenditionGroup": boolean, "segmentDurationSeconds": integer, "encryption": {

"constantInitializationVector": "string", "encryptionMethod": enum,

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

} },

"hlsManifests": [ {

"repeatExtXKey": boolean, "adMarkers": enum, "manifestName": "string",

"programDateTimeIntervalSeconds": integer, "streamSelection": {

"streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer },

"includeIframeOnlyStream": boolean }

],

"includeDvbSubtitles": boolean }, "mssPackage": {

"segmentDurationSeconds": integer, "encryption": {

"spekeKeyProvider": { "systemIds": [ "string"

],

"roleArn": "string", "url": "string"

(42)

Properties

} },

"mssManifests": [ {

"manifestName": "string", "streamSelection": { "streamOrder": enum,

"maxVideoBitsPerSecond": integer, "minVideoBitsPerSecond": integer }

} ] }, "tags": { }}

Properties

CmafEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

constantInitializationVector

An optional 128-bit, 16-byte hex value represented by a 32-character string, used in conjunction with the key for encrypting blocks. If you don't specify a value, then MediaPackage creates the constant initialization vector (IV).

Type: string Required: False

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 46) Required: True

CmafPackage

Parameters for a packaging configuration that uses Common Media Application Format (CMAF) packaging.

includeEncoderConfigurationInSegments

When includeEncoderConfigurationInSegments is set to true, MediaPackage places your encoder's Sequence Parameter Set (SPS), Picture Parameter Set (PPS), and Video Parameter Set (VPS) metadata in every video segment instead of in the init fragment. This lets you use different SPS/PPS/

VPS settings for your assets during content playback.

Type: boolean Required: False

segmentDurationSeconds

Duration (in seconds) of each segment. Actual segments will be rounded to the nearest multiple of the source fragment duration.

(43)

Properties

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: CmafEncryption (p. 39) Required: False

hlsManifests

A list of HLS manifest configurations available from this endpoint.

Type: Array of type HlsManifest (p. 42) Required: True

DashEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 46) Required: True

DashManifest

Parameters for a DASH manifest.

minBufferTimeSeconds

Minimum amount of content (measured in seconds) that a player must keep available in the buffer.

Type: integer Required: False

manifestName

A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.

Type: string Required: False

profile

The DASH profile type. When set to HBBTV_1_5, the content is compliant with HbbTV 1.5.

Type: string Required: False

Values: NONE | HBBTV_1_5

(44)

Properties

manifestLayout

Determines the position of some tags in the Media Presentation Description (MPD). When set to FULL, elements like SegmentTemplate and ContentProtection are included in each Representation. When set to COMPACT, duplicate elements are combined and presented at the AdaptationSet level.

Type: string Required: False

Values: FULL | COMPACT

streamSelection

Limitations for outputs from the endpoint, based on the video bitrate.

Type: StreamSelection (p. 47) Required: False

DashPackage

Parameters for a packaging configuration that uses Dynamic Adaptive Streaming over HTTP (DASH) packaging.

includeEncoderConfigurationInSegments

When includeEncoderConfigurationInSegments is set to true, MediaPackage places your encoder's Sequence Parameter Set (SPS), Picture Parameter Set (PPS), and Video Parameter Set (VPS) metadata in every video segment instead of in the init fragment. This lets you use different SPS/PPS/

VPS settings for your assets during content playback.

Type: boolean Required: False

segmentDurationSeconds

Duration (in seconds) of each fragment. Actual fragments will be rounded to the nearest multiple of the source segment duration.

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: DashEncryption (p. 40) Required: False

segmentTemplateFormat

Determines the type of SegmentTemplate included in the Media Presentation Description (MPD). When set to NUMBER_WITH_TIMELINE, a full timeline is presented in each SegmentTemplate, with $Number$

media URLs. When set to TIME_WITH_TIMELINE, a full timeline is presented in each SegmentTemplate, with $Time$ media URLs. When set to NUMBER_WITH_DURATION, only a duration is included in each SegmentTemplate, with $Number$ media URLs.

(45)

Properties

Type: string Required: False

Values: NUMBER_WITH_TIMELINE | TIME_WITH_TIMELINE | NUMBER_WITH_DURATION

periodTriggers

A list of triggers that controls when the outgoing Dynamic Adaptive Streaming over HTTP (DASH) Media Presentation Description (MPD) will be partitioned into multiple periods. If set to NONE, the entire duration of the ouput manifest is included in a single period. If set to ADS, multiple periods are added to the output manifest based on SCTE-35 ad markers in the source video stream.

Type: Array of type string Required: False

Values: ADS

dashManifests

A list of DASH manifest configurations available from this endpoint.

Type: Array of type DashManifest (p. 40) Required: True

HlsEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

constantInitializationVector

A 128-bit, 16-byte hex value represented by a 32-character string, used in conjunction with the key for encrypting blocks. If you don't specify a constant initialization vector (IV), MediaPackage periodically rotates the IV.

Type: string Required: False

encryptionMethod

HLS encryption type.

Type: string Required: False

Values: AES_128 | SAMPLE_AES

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 46) Required: True

HlsManifest

Parameters for an HLS manifest.

(46)

Properties

repeatExtXKey

Repeat the EXT-X-KEY directive for every media segment. This might result in an increase in client requests to the DRM server.

Type: boolean Required: False

adMarkers

This setting controls ad markers in the packaged content. NONE omits SCTE-35 ad markers from the output. PASSTHROUGH copies SCTE-35 ad markers from the source content to the output.

SCTE35_ENHANCED generates ad markers and blackout tags in the output, based on SCTE-35 messages in the source content.

Type: string Required: False

Values: NONE | SCTE35_ENHANCED | PASSTHROUGH

manifestName

A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.

Type: string Required: False

programDateTimeIntervalSeconds

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify.

Additionally, ID3Timed metadata messages are generated every 5 seconds starting when the content was ingested.

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

Omit this attribute or enter 0 to indicate that the EXT-X-PROGRAM-DATE-TIME tags are not included in the manifest.

Type: integer Required: False

streamSelection

Video bitrate limitations for outputs from this packaging configuration.

Type: StreamSelection (p. 47) Required: False

includeIframeOnlyStream

Applies to stream sets with a single video track only. When enabled, the output includes an additional I- frame only stream, along with the other tracks.

Type: boolean

(47)

Properties

Required: False

HlsPackage

Parameters for a packaging configuration that uses HTTP Live Streaming (HLS) packaging.

useAudioRenditionGroup

When true, AWS Elemental MediaPackage bundles all audio tracks in a rendition group. All other tracks in the stream can be used with any audio rendition from the group.

Type: boolean Required: False

segmentDurationSeconds

Duration (in seconds) of each fragment. Actual fragments will be rounded to the nearest multiple of the source fragment duration.

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: HlsEncryption (p. 42) Required: False

hlsManifests

A list of HLS manifest configurations available from this endpoint.

Type: Array of type HlsManifest (p. 42) Required: True

includeDvbSubtitles

When enabled, MediaPackage passes through digital video broadcasting (DVB) subtitles into the output.

Type: boolean Required: False

MssEncryption

Holds encryption information so that access to the content can be controlled by a DRM solution.

spekeKeyProvider

Parameters for the SPEKE key provider.

Type: SpekeKeyProvider (p. 46) Required: True

(48)

Properties

MssManifest

Parameters for a Microsoft Smooth manifest.

manifestName

A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.

Type: string Required: False

streamSelection

Video bitrate limitations for outputs from this packaging configuration.

Type: StreamSelection (p. 47) Required: False

MssPackage

Parameters for a packaging configuration that uses Microsoft Smooth Streaming (MSS) packaging.

segmentDurationSeconds

Duration (in seconds) of each fragment. Actual fragments are rounded to the nearest multiple of the source fragment duration.

Type: integer Required: False

encryption

Parameters for encrypting content.

Type: MssEncryption (p. 44) Required: False

mssManifests

A list of Microsoft Smooth manifest configurations available from this endpoint.

Type: Array of type MssManifest (p. 45) Required: True

PackagingConfiguration

PackagingConfiguration.

packagingGroupId

The ID of the packaging group associated with this packaging configuration.

Type: string Required: False

參考文獻

相關文件

Too good security is trumping deployment Practical security isn’ t glamorous... USENIX Security

z Choose a delivery month that is as close as possible to, but later than, the end of the life of the hedge. z When there is no futures contract on the asset being hedged, choose

‰At the delivery month of a futures contract is approached, the futures price _________ the spot price of the underlying asset. Î When the delivery period is reached, the futures

If x or F is a vector, then the condition number is defined in a similar way using norms and it measures the maximum relative change, which is attained for some, but not all

The aim of the competition is to offer students a platform to express creatively through writing poetry in English. It also provides schools with a channel to

 When citing a foreword/introduction/preface/afterword, begin the citation with the name of the person who wrote it, then the word “Foreword” (or whatever it is), without

• A call gives its holder the right to buy a number of the underlying asset by paying a strike price.. • A put gives its holder the right to sell a number of the underlying asset

• A put gives its holder the right to sell a number of the underlying asset for the strike price.. • An embedded option has to be traded along with the