IVS 私有擷取 - Amazon IVS

IVS 私有擷取

對於需要安全即時視訊擷取的工作負載,您可以使用界面 VPC (虛擬私有雲) 端點,在 Amazon VPC 和 IVS 之間建立安全的私有連線。這會將 IVS 擷取流量保留在 AWS 網路內,不經由公有網際網路。界面 VPC 端點由 AWS PrivateLink 提供,這是一種允許 AWS 服務間使用 Amazon VPC 中具有私有 IP 的彈性網路界面進行私有通訊的 AWS 技術。如需詳細資訊,請參閱 Amazon Virtual Private Cloud使用介面 VPC 端點存取 AWS 服務 (AWS PrivateLink)。

使用介面 VPC (虛擬私有雲) 端點,在 Amazon VPC 和 IVS 之間建立安全的私有連線。

您可以從 Amazon VPC 或透過 AWS Direct Connect 將 RTMP(S) 串流擷取至 IVS,然後私下將視訊傳送至 IVS 低延遲通道或 IVS 即時階段。您需要支付標準介面 VPC 端點每小時用量和資料處理費用;如需詳細資訊,請參閱介面端點定價。啟用此功能無需支付 Amazon IVS 的額外費用。

請確保您的 Amazon VPC 位於支援的區域:

  • ap-northeast-1

  • ap-northeast-2

  • ap-south-1

  • ap-southeast-1

  • ap-southeast-2

  • eu-central-1

  • eu-north-1

  • eu-west-1

  • eu-west-3

  • sa-east-1

  • us-east-1

  • us-east-2

  • us-west-2

注意:雖然 Amazon VPC 必須位於上述支援的區域之一,但 IVS 控制平面資源無需與 Amazon VPC 位於相同的區域或 AWS 帳戶。如需詳細資訊,請參閱全球解決方案、區域控制

若要透過介面 VPC 端點擷取串流,請使用由 VPC 端點的 DNS 名稱和 IVS 資源 (頻道或階段擷取組態) 的串流金鑰組成的私有擷取 URL,格式如下:

rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>

若要將串流傳送至頻道,請如設定串流軟體中所述建立頻道並檢索其串流金鑰。若要使用 RTMP(S) 或 E-RTMP(S) 將串流傳送至階段,請建立 RTMP 擷取組態並使用其相關聯的串流金鑰。

以下是使用界面 VPC 端點從 EC2 執行個體串流到 IVS 頻道或階段的快速演練:

步驟 1:建立介面 VPC 端點

每個 VPC 端點需要與您帳戶中的 VPC 關聯。如果您的帳戶已存在預設 VPC,可直接使用;否則,請建立新的 VPC。若要在 VPC 端點中使用 IPv6 或雙堆疊,請確保您的 VPC 已為子網路指派 IPv6 CIDR。

若要建立 VPC 端點,請參閱建立 VPC 端點 (Amazon VPC 文件) 中的指示。進入建立端點頁面後:

  1. 選取 AWS 服務。然後在服務區段中,搜尋 IVS。您應該會看到 com.amazonaws.<region>.ivs.contribute 等服務。

  2. 網路設定區段中,選取您要建立端點的 VPC。在子網路區段中,選取要為端點設定的子網路及其他網路設定。

  3. 安全群組區段中,選取允許從串流來源傳入流量至 TCP 連接埠 443 和 1935 的安全群組。稍後,可在建立端點之後編輯此設定,因此,若暫不確定使用哪個安全群組,可先保留未選取狀態。

選取建立端點後,您將回到 VPC 端點概觀頁面,其中將顯示您剛建立的 VPC 端點:

  • 新端點的狀態會先顯示為待定約 30 秒,然後會自動接受,且其狀態會變更為綠色的可用狀態。

  • 在 VPC 端點資訊面板的右側,您會看到與 VPC 端點關聯的多個 DNS 名稱。複製並儲存列出的第一個 DNS 名稱;後續步驟中您需要將其指定為串流擷取伺服器 URL。

步驟 2:啟動 EC2 執行個體

客戶可以使用多個選項從 AWS 廣播串流。此處範例使用安裝了 FFmpeg 的 Ubuntu EC2 執行個體。

首先,建立 EC2 執行個體 (t2.micro 即可)。請務必在建立 VPC 端點的相同 VPC 內建立此執行個體。

您指派給此執行個體的安全群組將需要輸出至 TCP 連接埠 443 和 1935 的 VPC 端點。如果使用 SSH 存取執行個體,還需在 TCP 連接埠 22 上啟用輸入,並在 TCP 連接埠 80 上針對下述步驟 3 中的封裝管理器操作啟用輸出。

啟動執行個體 初始化完成後,請使用 SSH 或 AWS Session Manager 連線到該執行個體。

步驟 3:在執行個體上安裝 FFmpeg

連線至執行個體後,請在機器上執行下列命令 (假設您使用 Ubuntu 建立執行個體) 以安裝 FFmpeg:

sudo add-apt-repository ppa:savoury1/ffmpeg4 sudo apt-get update sudo apt-get install ffmpeg

步驟 4:將串流傳送至 IVS 頻道或階段

私有擷取 URL 格式為:

rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>

例如:

rtmps://vpce-0a8dfb0b7a4611439-xyzabc12.contribute.ivs.us-west-2.vpce.amazonaws.com/app/sk-usw2-abc123example456

執行以下範例 FFmpeg 命令,以步驟 1 中的 DNS 名稱取代 <VPC_ENDPOINT_DNS_NAME>,並以適當的串流金鑰取代 <STREAM_KEY> (適用於頻道或擷取組態):

ffmpeg -re -f lavfi -i "testsrc=duration=360:size=1024x768:rate=30" -f lavfi -i "sine=frequency=1000" -pix_fmt yuv420p -profile:v baseline -level 3.0 -r 30 -g 60 -shortest -vcodec libx264 -acodec aac -f flv "rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>"

若上述操作均成功,串流應已啟動。透過 VPC 端點擷取的串流處理方式與透過公共 IVS 端點擷取的串流相同,唯一差異在於擷取路徑。

使用完畢後,請務必刪除已建立的 EC2 執行個體和 VPC 端點,以避免產生不必要的費用。