

文档 AWS SDK 示例 GitHub 存储库中还有更多 [S AWS DK 示例](https://github.com/awsdocs/aws-doc-sdk-examples)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用的代码示 MediaPackage 例 AWS SDKs
<a name="mediapackage_code_examples"></a>

以下代码示例向您展示了如何 AWS Elemental MediaPackage 使用 AWS 软件开发套件 (SDK)。

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

**更多资源**
+  **[ MediaPackage 用户指南](https://docs.aws.amazon.com/mediapackage/latest/ug/what-is.html)** —有关的更多信息 MediaPackage.
+ **[MediaPackage API 参考](https://docs.aws.amazon.com/mediapackage/latest/apireference/what-is.html)**-有关所有可用 MediaPackage 操作的详细信息。
+ **[AWS 开发者中心](https://aws.amazon.com/developer/code-examples/?awsf.sdk-code-examples-product=product%23elemental-mediapackage)** — 您可以按类别或全文搜索筛选的代码示例。
+ **[AWS SDK 示例](https://github.com/awsdocs/aws-doc-sdk-examples)** — 包含首选语言完整代码的 GitHub 存储库。包括有关设置和运行代码的说明。

**Contents**
+ [基本功能](mediapackage_code_examples_basics.md)
  + [操作](mediapackage_code_examples_actions.md)
    + [`ListChannels`](mediapackage_example_mediapackage_ListChannels_section.md)
    + [`ListOriginEndpoints`](mediapackage_example_mediapackage_ListOriginEndpoints_section.md)

# 使用的基本示 MediaPackage 例 AWS SDKs
<a name="mediapackage_code_examples_basics"></a>

以下代码示例说明如何使用 with 的基础 AWS Elemental MediaPackage 知识 AWS SDKs。

**Contents**
+ [操作](mediapackage_code_examples_actions.md)
  + [`ListChannels`](mediapackage_example_mediapackage_ListChannels_section.md)
  + [`ListOriginEndpoints`](mediapackage_example_mediapackage_ListOriginEndpoints_section.md)

# MediaPackage 使用的操作 AWS SDKs
<a name="mediapackage_code_examples_actions"></a>

以下代码示例演示了如何使用执行单个 MediaPackage操作 AWS SDKs。每个示例都包含一个指向的链接 GitHub，您可以在其中找到有关设置和运行代码的说明。

 以下示例仅包括最常用的操作。有关完整列表，请参阅 [AWS Elemental MediaPackage API 参考](https://docs.aws.amazon.com/mediapackage/latest/apireference/what-is.html)。

**Topics**
+ [`ListChannels`](mediapackage_example_mediapackage_ListChannels_section.md)
+ [`ListOriginEndpoints`](mediapackage_example_mediapackage_ListOriginEndpoints_section.md)

# `ListChannels`与 AWS SDK 或 CLI 配合使用
<a name="mediapackage_example_mediapackage_ListChannels_section"></a>

以下代码示例演示如何使用 `ListChannels`。

------
#### [ CLI ]

**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 用户指南*中的[查看频道详情](https://docs.aws.amazon.com/mediapackage/latest/ug/channels-view.html)。  
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[ListChannels](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/mediapackage/list-channels.html)*中的。

------
#### [ Rust ]

**适用于 Rust 的 SDK**  
 还有更多相关信息 GitHub。在 [AWS 代码示例存储库](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/rustv1/examples/mediapackage#code-examples)中查找完整示例，了解如何进行设置和运行。
列出频道 ARNs 和描述。  

```
async fn show_channels(client: &Client) -> Result<(), Error> {
    let list_channels = client.list_channels().send().await?;

    println!("Channels:");

    for c in list_channels.channels() {
        let description = c.description().unwrap_or_default();
        let arn = c.arn().unwrap_or_default();

        println!("  Description : {}", description);
        println!("  ARN :         {}", arn);
        println!();
    }

    Ok(())
}
```
+  有关 API 的详细信息，请参阅适用[ListChannels](https://docs.rs/aws-sdk-mediapackage/latest/aws_sdk_mediapackage/client/struct.Client.html#method.list_channels)于 *Rust 的AWS SDK API 参考*。

------

# `ListOriginEndpoints`与 AWS SDK 或 CLI 配合使用
<a name="mediapackage_example_mediapackage_ListOriginEndpoints_section"></a>

以下代码示例演示如何使用 `ListOriginEndpoints`。

------
#### [ CLI ]

**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 用户指南*中的[查看与频道关联的所有端点](https://docs.aws.amazon.com/mediapackage/latest/ug/endpoints-view-all.html)。  
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[ListOriginEndpoints](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/mediapackage/list-origin-endpoints.html)*中的。

------
#### [ Rust ]

**适用于 Rust 的 SDK**  
 还有更多相关信息 GitHub。在 [AWS 代码示例存储库](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/rustv1/examples/mediapackage#code-examples)中查找完整示例，了解如何进行设置和运行。
列出您的端点描述和 URLs.  

```
async fn show_endpoints(client: &Client) -> Result<(), Error> {
    let or_endpoints = client.list_origin_endpoints().send().await?;

    println!("Endpoints:");

    for e in or_endpoints.origin_endpoints() {
        let endpoint_url = e.url().unwrap_or_default();
        let endpoint_description = e.description().unwrap_or_default();
        println!("  Description: {}", endpoint_description);
        println!("  URL :        {}", endpoint_url);
        println!();
    }

    Ok(())
}
```
+  有关 API 的详细信息，请参阅适用[ListOriginEndpoints](https://docs.rs/aws-sdk-mediapackage/latest/aws_sdk_mediapackage/client/struct.Client.html#method.list_origin_endpoints)于 *Rust 的AWS SDK API 参考*。

------