

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

# 使用 CloudFront 傳遞隨需視訊
<a name="on-demand-video"></a>

若要使用 CloudFront 傳遞隨需視訊 (VOD) 串流，請使用以下服務：
+ Amazon S3，將內容以其原始格式存放，並存放已轉碼的視訊。
+ 將影片轉碼為串流格式的編碼器 （例如 AWS Elemental MediaConvert)。
+ CloudFront，將已轉碼的視訊傳遞給檢視器。對於 Microsoft Smooth Streaming，請參閱[為 Microsoft Smooth Streaming 設定隨需視訊](#on-demand-streaming-smooth)。

**使用 CloudFront 建立 VOD 解決方案**

1. 將內容上傳至 Amazon S3 儲存貯體。若要進一步了解如何使用 Amazon S3，請參閱 [Amazon Simple Storage Service 使用者指南](https://docs.aws.amazon.com/AmazonS3/latest/userguide/)。

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

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

## 為 Microsoft Smooth Streaming 設定隨需視訊
<a name="on-demand-streaming-smooth"></a>

您可利用下列選項，使用 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 分配的內容](AddRemoveReplaceObjects.md)。

如需關於 Smooth Streaming 用戶端的詳細資訊，請參閱 Microsoft 文件網站上的 [Smooth Streaming](https://learn.microsoft.com/en-us/shows/iis-net-site-videos/smooth-streaming)。

**在 Microsoft IIS Web 伺服器不是原始伺服器時，使用 CloudFront 來分配 Smooth Streaming 檔案**

1. 將您的媒體檔案轉碼成 Smooth Streaming 片段的 MP4 格式。

1. 請執行下列其中一項：
   + **如果您使用的是 CloudFront 主控台：**建立或更新分佈時，在一個或多個分佈的快取行為中，啟用 Smooth Streaming。
   + **如果您使用的是 CloudFront API：**針對一個或多個分佈的快取行為，將 `SmoothStreaming` 元素新增至其 `DistributionConfig` 複雜類型中。

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

1. 建立一個 `clientaccesspolicy.xml` 或 `crossdomainpolicy.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 (讓服務可跨網域邊界使用)](https://docs.microsoft.com/en-us/previous-versions/windows/silverlight/dotnet-windows-silverlight/cc197955(v=vs.95))。

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

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