使用 AWS CLI 的 MediaPackage 示例 - AWS Command Line Interface

本文档仅适用于 AWS CLI 版本 1。有关 AWS CLI 版本 2 的相关文档,请参阅版本 2 用户指南

使用 AWS CLI 的 MediaPackage 示例

以下代码示例演示了如何通过将 AWS Command Line Interface与 MediaPackage 结合使用,来执行操作和实现常见场景。

操作 是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接,您可以从中找到有关如何在上下文中设置和运行代码的说明。

主题

操作

以下代码示例演示了如何使用 create-channel

AWS CLI

创建通道

以下 create-channel 命令在当前账户中创建一个名为 sportschannel 的通道。

aws mediapackage create-channel --id sportschannel

输出:

{ "Arn": "arn:aws:mediapackage:us-west-2:111222333:channels/6d345804ec3f46c9b454a91d4a80d0e0", "HlsIngest": { "IngestEndpoints": [ { "Id": "6d345804ec3f46c9b454a91d4a80d0e0", "Password": "generatedwebdavpassword1", "Url": "https://f31c86aed53b815a.mediapackage.us-west-2.amazonaws.com/in/v2/6d345804ec3f46c9b454a91d4a80d0e0/6d345804ec3f46c9b454a91d4a80d0e0/channel", "Username": "generatedwebdavusername1" }, { "Id": "2daa32878af24803b24183727211b8ff", "Password": "generatedwebdavpassword2", "Url": "https://6ebbe7e04c4b0afa.mediapackage.us-west-2.amazonaws.com/in/v2/6d345804ec3f46c9b454a91d4a80d0e0/2daa32878af24803b24183727211b8ff/channel", "Username": "generatedwebdavusername2" } ] }, "Id": "sportschannel", "Tags": { "region": "west" } }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的创建通道

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 CreateChannel

以下代码示例演示了如何使用 create-origin-endpoint

AWS CLI

创建源端点

以下 create-origin-endpoint 命令使用 JSON 文件中提供的包设置和指定的端点设置创建一个名为 cmafsports 的源端点。

aws mediapackage create-origin-endpoint \ --channel-id sportschannel \ --id cmafsports \ --cmaf-package file://file/path/cmafpkg.json --description "cmaf output of sports" \ --id cmaf_sports \ --manifest-name sports_channel \ --startover-window-seconds 300 \ --tags region=west,media=sports \ --time-delay-seconds 10

输出:

{ "Arn": "arn:aws:mediapackage:us-west-2:111222333:origin_endpoints/1dc6718be36f4f34bb9cd86bc50925e6", "ChannelId": "sportschannel", "CmafPackage": { "HlsManifests": [ { "AdMarkers": "PASSTHROUGH", "Id": "cmaf_sports_endpoint", "IncludeIframeOnlyStream": true, "ManifestName": "index", "PlaylistType": "EVENT", "PlaylistWindowSeconds": 300, "ProgramDateTimeIntervalSeconds": 300, "Url": "https://c4af3793bf76b33c.mediapackage.us-west-2.amazonaws.com/out/v1/1dc6718be36f4f34bb9cd86bc50925e6/cmaf_sports_endpoint/index.m3u8" } ], "SegmentDurationSeconds": 2, "SegmentPrefix": "sportschannel" }, "Description": "cmaf output of sports", "Id": "cmaf_sports", "ManifestName": "sports_channel", "StartoverWindowSeconds": 300, "Tags": { "region": "west", "media": "sports" }, "TimeDelaySeconds": 10, "Url": "", "Whitelist": [] }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的创建端点

以下代码示例演示了如何使用 delete-channel

AWS CLI

删除通道

以下 delete-channel 命令删除名为 test 的通道。

aws mediapackage delete-channel \ --id test

此命令不生成任何输出。

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的删除通道

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DeleteChannel

以下代码示例演示了如何使用 delete-origin-endpoint

AWS CLI

删除源端点

以下 delete-origin-endpoint 命令删除名为 tester2 的源端点。

aws mediapackage delete-origin-endpoint \ --id tester2

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的删除端点

以下代码示例演示了如何使用 describe-channel

AWS CLI

描述通道

以下 describe-channel 命令显示名为 test 的通道的所有详细信息。

aws mediapackage describe-channel \ --id test

输出:

{ "Arn": "arn:aws:mediapackage:us-west-2:111222333:channels/584797f1740548c389a273585dd22a63", "HlsIngest": { "IngestEndpoints": [ { "Id": "584797f1740548c389a273585dd22a63", "Password": "webdavgeneratedpassword1", "Url": "https://9be9c4405c474882.mediapackage.us-west-2.amazonaws.com/in/v2/584797f1740548c389a273585dd22a63/584797f1740548c389a273585dd22a63/channel", "Username": "webdavgeneratedusername1" }, { "Id": "7d187c8616fd455f88aaa5a9fcf74442", "Password": "webdavgeneratedpassword2", "Url": "https://7bf454c57220328d.mediapackage.us-west-2.amazonaws.com/in/v2/584797f1740548c389a273585dd22a63/7d187c8616fd455f88aaa5a9fcf74442/channel", "Username": "webdavgeneratedusername2" } ] }, "Id": "test", "Tags": {} }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的“查看通道详细信息”<https://docs.aws.amazon.com/mediapackage/latest/ug/channels-view.html>。

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribeChannel

以下代码示例演示了如何使用 describe-origin-endpoint

AWS CLI

描述源端点

以下 describe-origin-endpoint 命令显示名为 cmaf_sports 的源端点的所有详细信息。

aws mediapackage describe-origin-endpoint \ --id cmaf_sports

输出:

{ "Arn": "arn:aws:mediapackage:us-west-2:111222333:origin_endpoints/1dc6718be36f4f34bb9cd86bc50925e6", "ChannelId": "sportschannel", "CmafPackage": { "HlsManifests": [ { "AdMarkers": "NONE", "Id": "cmaf_sports_endpoint", "IncludeIframeOnlyStream": false, "PlaylistType": "EVENT", "PlaylistWindowSeconds": 60, "ProgramDateTimeIntervalSeconds": 0, "Url": "https://c4af3793bf76b33c.mediapackage.us-west-2.amazonaws.com/out/v1/1dc6718be36f4f34bb9cd86bc50925e6/cmaf_sports_endpoint/index.m3u8" } ], "SegmentDurationSeconds": 2, "SegmentPrefix": "sportschannel" }, "Id": "cmaf_sports", "ManifestName": "index", "StartoverWindowSeconds": 0, "Tags": { "region": "west", "media": "sports" }, "TimeDelaySeconds": 0, "Url": "", "Whitelist": [] }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的查看单个端点

以下代码示例演示了如何使用 list-channels

AWS CLI

列出所有通道

以下 list-channels 命令列出了当前 AWS 账户中配置的所有通道。

aws mediapackage list-channels

输出:

{ "Channels": [ { "Arn": "arn:aws:mediapackage:us-west-2:111222333:channels/584797f1740548c389a273585dd22a63", "HlsIngest": { "IngestEndpoints": [ { "Id": "584797f1740548c389a273585dd22a63", "Password": "webdavgeneratedpassword1", "Url": "https://9be9c4405c474882.mediapackage.us-west-2.amazonaws.com/in/v2/584797f1740548c389a273585dd22a63/584797f1740548c389a273585dd22a63/channel", "Username": "webdavgeneratedusername1" }, { "Id": "7d187c8616fd455f88aaa5a9fcf74442", "Password": "webdavgeneratedpassword2", "Url": "https://7bf454c57220328d.mediapackage.us-west-2.amazonaws.com/in/v2/584797f1740548c389a273585dd22a63/7d187c8616fd455f88aaa5a9fcf74442/channel", "Username": "webdavgeneratedusername2" } ] }, "Id": "test", "Tags": {} } ] }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的查看通道详细信息

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 ListChannels

以下代码示例演示了如何使用 list-origin-endpoints

AWS CLI

列出通道上的所有源端点

以下 list-origin-endpoints 命令列出了名为 test 的通道中配置的所有源端点。

aws mediapackage list-origin-endpoints \ --channel-id test

输出:

{ "OriginEndpoints": [ { "Arn": "arn:aws:mediapackage:us-west-2:111222333:origin_endpoints/247cff871f2845d3805129be22f2c0a2", "ChannelId": "test", "DashPackage": { "ManifestLayout": "FULL", "ManifestWindowSeconds": 60, "MinBufferTimeSeconds": 30, "MinUpdatePeriodSeconds": 15, "PeriodTriggers": [], "Profile": "NONE", "SegmentDurationSeconds": 2, "SegmentTemplateFormat": "NUMBER_WITH_TIMELINE", "StreamSelection": { "MaxVideoBitsPerSecond": 2147483647, "MinVideoBitsPerSecond": 0, "StreamOrder": "ORIGINAL" }, "SuggestedPresentationDelaySeconds": 25 }, "Id": "tester2", "ManifestName": "index", "StartoverWindowSeconds": 0, "Tags": {}, "TimeDelaySeconds": 0, "Url": "https://8343f7014c0ea438.mediapackage.us-west-2.amazonaws.com/out/v1/247cff871f2845d3805129be22f2c0a2/index.mpd", "Whitelist": [] }, { "Arn": "arn:aws:mediapackage:us-west-2:111222333:origin_endpoints/869e237f851549e9bcf10e3bc2830839", "ChannelId": "test", "HlsPackage": { "AdMarkers": "NONE", "IncludeIframeOnlyStream": false, "PlaylistType": "EVENT", "PlaylistWindowSeconds": 60, "ProgramDateTimeIntervalSeconds": 0, "SegmentDurationSeconds": 6, "StreamSelection": { "MaxVideoBitsPerSecond": 2147483647, "MinVideoBitsPerSecond": 0, "StreamOrder": "ORIGINAL" }, "UseAudioRenditionGroup": false }, "Id": "tester", "ManifestName": "index", "StartoverWindowSeconds": 0, "Tags": {}, "TimeDelaySeconds": 0, "Url": "https://8343f7014c0ea438.mediapackage.us-west-2.amazonaws.com/out/v1/869e237f851549e9bcf10e3bc2830839/index.m3u8", "Whitelist": [] } ] }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的查看与通道关联的所有端点

以下代码示例演示了如何使用 list-tags-for-resource

AWS CLI

列出分配给资源的标签

以下 list-tags-for-resource 命令列出分配给指定资源的标签。

aws mediapackage list-tags-for-resource \ --resource-arn arn:aws:mediapackage:us-west-2:111222333:channels/6d345804ec3f46c9b454a91d4a80d0e0

输出:

{ "Tags": { "region": "west" } }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的在 AWS Elemental MediaPackage 中标记资源

以下代码示例演示了如何使用 rotate-ingest-endpoint-credentials

AWS CLI

轮换采集凭证

以下 rotate-ingest-endpoint-credentials 命令轮换指定采集端点的 WebDAV 用户名和密码。

aws mediapackage rotate-ingest-endpoint-credentials \ --id test \ --ingest-endpoint-id 584797f1740548c389a273585dd22a63

输出:

{ "Arn": "arn:aws:mediapackage:us-west-2:111222333:channels/584797f1740548c389a273585dd22a63", "HlsIngest": { "IngestEndpoints": [ { "Id": "584797f1740548c389a273585dd22a63", "Password": "webdavregeneratedpassword1", "Url": "https://9be9c4405c474882.mediapackage.us-west-2.amazonaws.com/in/v2/584797f1740548c389a273585dd22a63/584797f1740548c389a273585dd22a63/channel", "Username": "webdavregeneratedusername1" }, { "Id": "7d187c8616fd455f88aaa5a9fcf74442", "Password": "webdavgeneratedpassword2", "Url": "https://7bf454c57220328d.mediapackage.us-west-2.amazonaws.com/in/v2/584797f1740548c389a273585dd22a63/7d187c8616fd455f88aaa5a9fcf74442/channel", "Username": "webdavgeneratedusername2" } ] }, "Id": "test", "Tags": {} }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的轮换凭证

以下代码示例演示了如何使用 tag-resource

AWS CLI

标记资源

以下 tag-resource 命令将 region=west 键值对添加到指定资源。

aws mediapackage tag-resource \ --resource-arn arn:aws:mediapackage:us-west-2:111222333:channels/6d345804ec3f46c9b454a91d4a80d0e0 \ --tags region=west

此命令不生成任何输出。

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的在 AWS Elemental MediaPackage 中标记资源

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 TagResource

以下代码示例演示了如何使用 untag-resource

AWS CLI

从资源中删除标签

以下 untag-resource 命令从指定通道中移除具有键 region 的标签。

aws mediapackage untag-resource \ --resource-arn arn:aws:mediapackage:us-west-2:111222333:channels/6d345804ec3f46c9b454a91d4a80d0e0 \ --tag-keys region

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的在 AWS Elemental MediaPackage 中标记资源

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 UntagResource

以下代码示例演示了如何使用 update-channel

AWS CLI

更新通道

以下 update-channel 命令更新名为 sportschannel 的通道以包含描述 24x7 sports

aws mediapackage update-channel \ --id sportschannel \ --description "24x7 sports"

输出:

{ "Arn": "arn:aws:mediapackage:us-west-2:111222333:channels/6d345804ec3f46c9b454a91d4a80d0e0", "Description": "24x7 sports", "HlsIngest": { "IngestEndpoints": [ { "Id": "6d345804ec3f46c9b454a91d4a80d0e0", "Password": "generatedwebdavpassword1", "Url": "https://f31c86aed53b815a.mediapackage.us-west-2.amazonaws.com/in/v2/6d345804ec3f46c9b454a91d4a80d0e0/6d345804ec3f46c9b454a91d4a80d0e0/channel", "Username": "generatedwebdavusername1" }, { "Id": "2daa32878af24803b24183727211b8ff", "Password": "generatedwebdavpassword2", "Url": "https://6ebbe7e04c4b0afa.mediapackage.us-west-2.amazonaws.com/in/v2/6d345804ec3f46c9b454a91d4a80d0e0/2daa32878af24803b24183727211b8ff/channel", "Username": "generatedwebdavusername2" } ] }, "Id": "sportschannel", "Tags": {} }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的编辑通道

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 UpdateChannel

以下代码示例演示了如何使用 update-origin-endpoint

AWS CLI

更新源端点

以下 update-origin-endpoint 命令更新名为 cmaf_sports 的源端点。它将延迟时间改为 0 秒。

aws mediapackage update-origin-endpoint \ --id cmaf_sports \ --time-delay-seconds 0

输出:

{ "Arn": "arn:aws:mediapackage:us-west-2:111222333:origin_endpoints/1dc6718be36f4f34bb9cd86bc50925e6", "ChannelId": "sportschannel", "CmafPackage": { "HlsManifests": [ { "AdMarkers": "NONE", "Id": "cmaf_sports_endpoint", "IncludeIframeOnlyStream": false, "PlaylistType": "EVENT", "PlaylistWindowSeconds": 60, "ProgramDateTimeIntervalSeconds": 0, "Url": "https://c4af3793bf76b33c.mediapackage.us-west-2.amazonaws.com/out/v1/1dc6718be36f4f34bb9cd86bc50925e6/cmaf_sports_endpoint/index.m3u8" } ], "SegmentDurationSeconds": 2, "SegmentPrefix": "sportschannel" }, "Id": "cmaf_sports", "ManifestName": "index", "StartoverWindowSeconds": 0, "Tags": { "region": "west", "media": "sports" }, "TimeDelaySeconds": 0, "Url": "", "Whitelist": [] }

有关更多信息,请参阅《AWS Elemental MediaPackage 用户指南》中的编辑端点