使用 CloudFront 隨需交付影片 - Amazon CloudFront

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 CloudFront 隨需交付影片

若要使用 CloudFront 傳遞隨需視訊 (VOD) 串流,請使用以下服務:

  • Amazon S3,將內容以其原始格式存放,並存放已轉碼的視訊。

  • 將影片轉碼為串流格式的編碼器 (例如 AWS Elemental MediaConvert)。

  • CloudFront,將已轉碼的視訊傳遞給檢視器。對於 Microsoft Smooth Streaming,請參閱設定 Microsoft Smooth Streaming 隨需影片

使用 CloudFront 建立 VOD 解決方案
  1. 將內容上傳至 Amazon S3 儲存貯體。若要進一步了解如何使用 Amazon S3,請參閱 Amazon Simple Storage Service 使用者指南

  2. 使用 MediaConvert 任務將內容轉碼。此任務會將視訊轉換為您的檢視器使用之播放器所需的格式。您也可以使用任務來建立具有不同解析度和位元速率的資產。這些資產用於調整式位元速率 (ABR) 串流,這種串流會根據檢視器的可用頻寬,調整觀看品質。MediaConvert 會將經過轉碼的視訊存放在 S3 儲存貯體。

  3. 使用 CloudFront 分佈傳遞轉換後的內容。檢視器可以隨時在任何裝置上觀看內容。

提示

您可以探索如何使用 AWS CloudFormation 範本來部署 VOD AWS 解決方案以及所有相關聯的元件。若要查看使用範本的步驟,請參閱 AWS隨需視訊指南中的自動化部署

設定 Microsoft Smooth Streaming 隨需影片

您可利用下列選項,使用 CloudFront 來分配已轉碼為 Microsoft Smooth Streaming 格式的隨需視訊 (VOD) 內容:

  • 指定執行 Microsoft IIS 並支援 Smooth Streaming 的 Web 伺服器做為分佈的來源。

  • 在 CloudFront 分佈的快取行為中啟用 Smooth Streaming。由於您可以在分佈中使用多個快取行為,因此您可以將一個分佈用於 Smooth Streaming 媒體檔案及其他內容。

重要

如果您指定執行 Microsoft IIS 的 Web 伺服器做為原始伺服器,請「勿」在 CloudFront 分佈的快取行為中啟用 Smooth Streaming。如果啟用 Smooth Streaming 做為快取行為,CloudFront 就無法使用 Microsoft IIS 伺服器做為原始伺服器。

如果您在快取行為中啟用 Smooth Streaming (也就是說,您沒有執行 Microsoft IIS 的伺服器),請注意以下事項:

  • 如果內容與該快取行為 Path Pattern (路徑模式) 的值相符,您仍然可以使用相同的快取行為來分配其他內容。

  • CloudFront 可以使用 Amazon S3 儲存貯體或適用於 Smooth Streaming 媒體檔案的自訂原始伺服器。如果啟用 Smooth Streaming 用於快取行為,CloudFront 就無法使用 Microsoft IIS 伺服器做為原始伺服器。

  • 您不能使 Smooth Streaming 格式的媒體檔案無效。如果想要在過期之前更新檔案,您必須重新命名。如需詳細資訊,請參閱新增、移除或取代 CloudFront 分發的內容

如需 Smooth Streaming 用戶端的相關資訊,請參閱 Microsoft 文件網站上的 Smooth Streaming

在 Microsoft IIS Web 伺服器不是原始伺服器時,使用 CloudFront 來分配 Smooth Streaming 檔案
  1. 將您的媒體檔案轉碼成 Smooth Streaming 片段的 MP4 格式。

  2. 請執行下列其中一項:

    • 如果您使用的是 CloudFront 主控台:建立或更新分佈時,在一個或多個分佈的快取行為中,啟用 Smooth Streaming。

    • 如果您使用的是 CloudFront API:針對一個或多個分佈的快取行為,將 SmoothStreaming 元素新增至其 DistributionConfig 複雜類型中。

  3. 將 Smooth Streaming 檔案上傳到原始伺服器。

  4. 建立一個 clientaccesspolicy.xmlcrossdomainpolicy.xml 檔案,並將它加入到可在分佈的根目錄中存取的位置,例如,https://d111111abcdef8.cloudfront.net/clientaccesspolicy.xml。以下為政策的範例:

    <?xml version="1.0" encoding="utf-8"?> <access-policy> <cross-domain-access> <policy> <allow-from http-request-headers="*"> <domain uri="*"/> </allow-from> <grant-to> <resource path="/" include-subpaths="true"/> </grant-to> </policy> </cross-domain-access> </access-policy>

    如需詳細資訊,請參閱 Microsoft Developer Network 網站上的 Making a Service Available Across Domain Boundaries (讓服務可跨網域邊界使用)

  5. 對於您的應用程式 (例如,媒體播放器) 中的連結,請以下列格式為媒體檔案指定 URL:

    https://d111111abcdef8.cloudfront.net/video/presentation.ism/Manifest