

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

# 什麼是使用 WebRTC 的 Amazon Kinesis Video Streams？
<a name="what-is-kvswebrtc"></a>

WebRTC 是一種開放技術規格，可讓瀏覽器和行動應用程式之間透過簡單 API 進行即時通訊 (RTC)。利用對等技術在連線的對等節點之間進行即時資料交換，並提供人與人互動所需的低延遲媒體串流。WebRTC 規格除了有可靠和安全即時媒體和資料串流的通訊協定規格，還包含一組 IETF 通訊協定，包括用於建立點對點連線的 [Interactive Connectivity Establishment](https://www.ietf.org/rfc/rfc5245.txt)、[Traversal Using Relay around NAT (TURN)](https://tools.ietf.org/html/rfc5766) 和 [Session Traversal Utilities for NAT (STUN)](https://www.ietf.org/rfc/rfc5389.txt)。

[Amazon Kinesis Video Streams](https://docs.aws.amazon.com//kinesisvideostreams/latest/dg/what-is-kinesis-video.html) 以全受管功能提供符合標準的 WebRTC 實作。您可以使用 Amazon Kinesis Video Streams with WebRTC 安全地即時串流媒體，或在任何攝影機 IoT 裝置與符合 WebRTC 標準的行動或 Web 播放器之間，執行雙向音訊或視訊互動。因為是全受管功能，您不需要建置、執行或擴展任何與 WebRTC 相關的雲端基礎設施，例如訊號或媒體轉送伺服器，即可在應用程式和裝置之間安全地串流媒體。

使用 Kinesis Video Streams 搭配 WebRTC，您可以輕鬆地為即時peer-to-peer媒體串流建置應用程式，或為各種使用案例在攝影機 IoT 裝置、網頁瀏覽器和行動裝置之間建立即時音訊或視訊互動。這些應用程式可以幫助家長監控嬰兒的房間、讓屋主使用視訊門鈴檢查誰在門口、讓攝影功能掃地機器人的擁有者在手機上觀看即時攝影機串流，以從遠端控制機器人，諸如此類。

如果您是第一次使用 Kinesis Video Streams with WebRTC，我們建議您閱讀以下章節：
+ [運作方式](kvswebrtc-how-it-works.md)
+ [Amazon Kinesis Video Streams with WebRTC SDK in C for embedded device](kvswebrtc-sdk-c.md)
+ [適用於 Web 應用程式的 JavaScript 中的 Amazon Kinesis Video Streams with WebRTC SDK WebRTC](kvswebrtc-sdk-js.md)
+ [適用於 Android 的 Amazon Kinesis Video Streams WebRTC 開發套件](kvswebrtc-sdk-android.md)
+ [適用於 iOS 的 Amazon Kinesis Video Streams WebRTC 開發套件](kvswebrtc-sdk-ios.md)
+ [控制平台 API](https://docs.aws.amazon.com//kinesisvideostreams/latest/dg/API_Operations_Amazon_Kinesis_Video_Streams.html)
+ [資料平面 REST API](https://docs.aws.amazon.com//kinesisvideostreams/latest/dg/API_Operations_Amazon_Kinesis_Video_Signaling_Channels.html)
+ [資料平面 Websocket API](https://docs.aws.amazon.com//kinesisvideostreams-webrtc-dg/latest/devguide/kvswebrtc-websocket-apis.html)

# 區域可用性
<a name="availability"></a>

**注意**  
中尚不支援 Amazon Kinesis Video Streams with WebRTC AWS GovCloud (US) Region。

Amazon Kinesis Video Streams with WebRTC 可在下列區域使用：




****  

| 區域名稱 | AWS 區域碼 | 
| --- | --- | 
| 美國東部 (俄亥俄) | us-east-2 | 
| 美國東部 (維吉尼亞北部) | us-east-1 | 
| 美國西部 (奧勒岡) | us-west-2 | 
| Africa (Cape Town) | af-south-1 | 
| 亞太地區 (香港) | ap-east-1 | 
| 亞太區域 (孟買) | ap-south-1 | 
| 亞太區域 (首爾) | ap-northeast-2 | 
| 亞太區域 (新加坡) | ap-southeast-1 | 
| 亞太區域 (雪梨) | ap-southeast-2 | 
| 亞太地區 (馬來西亞) | ap-southeast-5 | 
| 亞太區域 (東京) | ap-northeast-1 | 
| 加拿大 (中部) | ca-central-1 | 
| 歐洲 (法蘭克福) | eu-central-1 | 
| 歐洲 (愛爾蘭) | eu-west-1 | 
| 歐洲 (倫敦) | eu-west-2 | 
| 歐洲 (巴黎) | eu-west-3 | 
| 歐洲 (西班牙) | eu-south-2 | 
| 南美洲 (聖保羅) | sa-east-1 | 
| Middle East (Bahrain) | me-south-1 | 

# 運作方式
<a name="kvswebrtc-how-it-works"></a>

Amazon Kinesis Video Streams with WebRTC 可在 Web 瀏覽器、行動裝置和其他支援 WebRTC 的應用程式之間進行即時視訊通訊。它提供安全且可擴展的基礎設施，用於建置影片串流應用程式、處理訊號、媒體串流等任務，以及與其他 AWS 服務的整合。本節說明 服務的基礎架構、元件和工作流程，協助解釋其設計原則和機制。

**Topics**
+ [重要概念](#how-kvswebrtc-concepts)
+ [技術概念](#how-webrtc-concepts)
+ [STUN、TURN 和 ICE 如何一起運作](#how-webrtc-components-interwork)
+ [元件](#how-kvswebrtc-works)

## 重要概念
<a name="how-kvswebrtc-concepts"></a>

以下是 Amazon Kinesis Video Streams with WebRTC 特有的關鍵術語和概念。

**訊號頻道**  
訊號頻道可讓應用程式交換訊號訊息，以探索、設定、控制和終止點對點連線。訊號訊息是兩個應用程式彼此交換以建立點對點連線的中繼資料。此中繼資料包括本機媒體資訊，例如媒體轉碼器和轉碼參數，以及兩個應用程式相互連線以進行即時串流可能使用的網路候選路徑。  
串流應用程式可以維持與訊號頻道之間的持續連線，並等待其他應用程式來連接它們。或者，只在需要即時串流媒體時才連線到訊號頻道。訊號頻道可讓應用程式採用一個主節點連線到多個檢視器的概念，在一對少數的模型中相互連線。啟動連線的應用程式負起主節點的責任，使用 `ConnectAsMaster` API 並等待檢視器。然後，最多 10 個應用程式可以負起檢視器的責任，叫用 `ConnectAsViewer` API 來連線到該訊號頻道。連線到訊號頻道後，主節點應用程式和檢視器應用程式可以互相傳送訊號訊息，以建立點對點連線來即時媒體串流。

**對等節點**  
設定為透過 Kinesis Video Streams with WebRTC 進行即時雙向串流的任何裝置或應用程式 （例如，行動或 Web 應用程式、網路攝影機、家用安全攝影機、嬰兒監視器等）。

**主**  
啟動連線並連線至訊號頻道的對等節點，能夠探索任何連接訊號頻道的檢視器並與之交換媒體。  
目前，一個訊號頻道只能有一個主節點。

**觀眾**  
連線至訊號頻道的對等節點，只能夠探索訊號頻道的主節點並與之交換媒體。檢視器無法透過給定的訊號頻道來探索其他檢視器或與之互動。一個訊號頻道最多可以有 10 個連線的檢視器。

## 技術概念
<a name="how-webrtc-concepts"></a>

當您開始使用 Kinesis Video Streams with WebRTC 時，您也可以從了解 WebRTC 技術包含的幾個相互關聯的通訊協定和 APIs 中受益。

**Session Traversal Utilities for NAT (STUN)**  
一種通訊協定，用來探索您的公有地址，並判斷路由器中會阻止直接連接對等節點的任何限制。

**Traversal Using Relays around NAT (TURN)**  
一種伺服器，可對 TURN 伺服器建立連線，並透過該伺服器轉送資訊，以避開對稱 NAT 限制。

**Session Description Protocol (SDP)**  
一種標準，描述連線的多媒體內容，例如解析度、格式，轉碼器、加密等，讓對等節點在資料開始傳輸時可以了解彼此。

**SDP 提議**  
由代理程式傳送的 SDP 訊息，以產生工作階段描述來建立或修改工作階段。描述所需媒體通訊的各方面。

**SDP 回答**  
由回答者傳送的 SDP 訊息，以回應來自提議者的提議。回答指出接受哪些方面。例如，是否接受提議中的所有音訊和視訊串流。

**互動式連線建立 (ICE)**  
允許 Web 瀏覽器與對等節點連接的框架。

**ICE 候選項**  
可供傳送端對等節點用來通訊的方法。

## STUN、TURN 和 ICE 如何一起運作
<a name="how-webrtc-components-interwork"></a>

假設有 A 和 B 兩個對等節點，兩者都使用 WebRTC 點對點雙向媒體串流 (例如，視頻聊天應用程式)。當 A 想打電話給 B 時會發生什麼情況？

為了連線至 B 的應用程式，A 的應用程式必須產生 SDP 提議。SDP 提議包含 A 的應用程式想建立的工作階段的相關資訊，包括使用什麼轉碼器、這是音訊還是視訊工作階段等。還包含 ICE 候選項清單，這是可供 B 的應用程式嘗試用來連線至 A 的 IP 和連接埠配對。

為了建置 ICE 候選項清單，A 的應用程式會向 STUN 伺服器提出一連串請求。伺服器傳回發出請求的公有 IP 地址和連接埠配對。A 的應用程式將每一對新增至 ICE 候選項清單，換句話說，收集 ICE 候選項。A 的應用程式一旦完成收集 ICE 候選項，就可以傳回 SDP。

接下來，A 的應用程式必須透過這些應用程式通訊的訊號頻道，將 SDP 傳送到 B 的應用程式。WebRTC 標準並未規定此交換的傳輸通訊協定。可以透過 HTTPS，安全 WebSocket 或任何其他通訊協定來執行。

現在，B 的應用程式必須產生 SDP 回答。B 的應用程式遵循 A 在上一步使用的相同步驟：收集 ICE 候選項等。然後，B 的應用程式需要將此 SDP 回答傳回至 A 的應用程式。

A 和 B 交換 SDPs之後，他們會執行一系列的連線檢查。在每個應用程式中，ICE 演算法採用在對方 SDP 中收到的清單中的候選 IP/連接埠配對，並將 STUN 請求傳送至此配對。如果另一個應用程式有所回應，則起源應用程序會認為檢查成功，並將該 IP/連接埠配對標示為有效的 ICE 候選項。

在所有 IP/連接埠配對上完成連線檢查後，應用程式會交涉並決定使用其中一個剩餘的有效配對。選取配對後，媒體就會開始在應用程式之間流動。

如果任一應用程式找不到通過連線檢查的 IP/連接埠配對，則會向 TURN 伺服器提出 STUN 請求，以取得媒體轉送地址。轉送位址是公有 IP 地址和連接埠，可轉送往返於應用程式收到的封包，以設定轉送地址。然後，此轉送地址會新增至候選項清單，並透過訊號頻道交換。

## 元件
<a name="how-kvswebrtc-works"></a>

Kinesis Video Streams with WebRTC 包含下列元件：
+ **控制平台**

  控制平面元件負責建立和維護 Kinesis Video Streams with WebRTC 訊號頻道。如需詳細資訊，請參閱 [Amazon Kinesis Video Streams API 參考](https://docs.aws.amazon.com//kinesisvideostreams/latest/dg/API_Operations_Amazon_Kinesis_Video_Streams.html)。
+ **訊號**

  訊號元件管理 WebRTC 訊號端點，可讓應用程式彼此安全地連線，以進行點對點即時媒體串流。訊號元件包含 [Amazon Kinesis Video Signaling REST API](https://docs.aws.amazon.com//kinesisvideostreams/latest/dg/API_Operations_Amazon_Kinesis_Video_Signaling_Channels.html) 和一組 [Websocket API](https://docs.aws.amazon.com//kinesisvideostreams-webrtc-dg/latest/devguide/kvswebrtc-websocket-apis.html)。
+ **STUN**

  此元件管理 STUN 端點，當應用程式位於 NAT 或防火牆後方時，這些端點可讓應用程式探索其公有 IP 地址。
+ **TURN**

  此元件管理 TURN 端點，當應用程式無法點對點串流媒體時，這些端點可支援透過雲端轉送媒體。
+ **Kinesis Video Streams WebRTC 開發套件**

  這些是您可以在裝置和應用程式用戶端下載、安裝和設定的軟體程式庫，可讓具有 WebRTC 功能的攝影機 IoT 裝置進行低延遲的點對點媒體串流。這些SDKs也可讓 Android、iOS 和 Web 應用程式用戶端將 Kinesis Video Streams 與 WebRTC 訊號、TURN 和 STUN 功能與任何 WebRTC 相容的行動或 Web 播放器整合。
  + [Amazon Kinesis Video Streams with WebRTC SDK in C for embedded device](kvswebrtc-sdk-c.md)
  + [適用於 Web 應用程式的 JavaScript 中的 Amazon Kinesis Video Streams with WebRTC SDK WebRTC](kvswebrtc-sdk-js.md)
  + [適用於 Android 的 Amazon Kinesis Video Streams WebRTC 開發套件](kvswebrtc-sdk-android.md)
  + [適用於 iOS 的 Amazon Kinesis Video Streams WebRTC 開發套件](kvswebrtc-sdk-ios.md)

# 系統要求
<a name="kvswebrtc-requirements"></a>

本節涵蓋搭配 WebRTC 使用 Amazon Kinesis Video Streams 的基本系統需求，包括網路需求和環境。它也包含偵錯連線的相關資訊。

## 網路要求
<a name="networking-requirements"></a>

Kinesis Video Streams with WebRTC 訊號頻道服務端點的一般聯網需求如下：
+ 託管於 的端點的 HTTPS 呼叫 `https://*.kinesisvideo.{region}.amazonaws.com`
+ WebSocket 與端點的整合 `wss://*.kinesisvideo.{region}.amazonaws.com`
+ `STUN` 伺服器位於 `stun:stun.kinesisvideo.{aws-region}.amazonaws.com:443`
+ `TURN` 伺服器位於 `turn:_._.kinesisvideo.{aws-region}.amazonaws.com:443`和 `turns:_._.kinesisvideo.{aws-region}.amazonaws.com:443`

**注意**  
`STUN` 和 `TURN` 伺服器目前不支援 IPv6 地址。

在對等之間用作 RTCPeerConnection 一部分的通訊協定可以是 TCP 或 UDP 型。

大多數應用程式會決定每個peer-to-peer的 IP 地址，以及做為 ICE 候選項目交換的連接埠和通訊協定，嘗試建立直接的點對點連線。這些候選項目用於嘗試使用這些候選項目彼此連線。他們會嘗試每個配對，直到可以建立連線為止。

## 網路環境
<a name="network-environment"></a>

如果來自檢視器的訊息已傳送至主伺服器，且記錄`No valid ICE candidate`了 等日誌，則找不到有效的連線路由。如果防火牆防止直接連線，或無法連線網路，就可能會發生這種情況。

執行下列動作來疑難排解連線問題：
+ 如果您不是`TURN`在主端使用 ，請務必啟用 `TURN`。

  `TURN` 根據預設， 會在 C 開發套件中啟用。在 JavaScript 開發套件中，選取 NAT 周遊`TURN only`中的 `STUN/TURN`或 。
+ 對於受限的網路，例如企業網路，請嘗試其他可用的網路 （有線或無線）。

  如果您要連線至 VPN，請中斷與 VPN 的連線。

**注意**  
您可以忽略 Kinesis Video Streams TURN 伺服器傳回的 403 `Forbidden IP`錯誤。伺服器會拒絕包含 `localhost` IPs 的 ICE 候選配對，例如 `192.168.*`或 `10.0.0.*`。  
這可能會導致某些但不是全部的 ICE 候選配對失敗。

## 偵錯進行中連線
<a name="debug-ongoing-connection"></a>

有幾個領域可能會導致已建立、持續的 WebRTC 連線發生問題，但聯網是最常見的。

您可以將 `export AWS_KVS_LOG_LEVEL=1`設定為環境變數，從 SDK 確認 VERBOSE 層級日誌。

**注意**  
如果在分配的逾時內找不到候選配對，ICE 代理程式會傳回錯誤狀態 `0x5a00000d`。

如需日誌層級的詳細資訊，請參閱 [GitHub](https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c/blob/master/README.md#setup-desired-log-level)。

```
export AWS_KVS_LOG_LEVEL=1
./kvsWebrtcClientMasterGstSample TestChannel
```

您將看到類似以下的日誌。您可以從這些日誌確認互動式連線建立 (ICE) 候選 (IP 地址和連接埠） 和選取的候選配對。

```
2023-02-13 05:57:16 DEBUG   iceAgentReadyStateSetup(): Selected pair w1UdV9fE+_/CuBel1pl, local candidate type: srflx. Round trip time 7 ms. Local candidate priority: 1694498815, ice candidate pair priority: 7240977859836116990
2023-02-13 05:57:16 INFO    onConnectionStateChange(): New connection state 3
2023-02-13 05:57:16 DEBUG   rtcPeerConnectionGetMetrics(): ICE local candidate Stats requested at 16762678365731494
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Local Candidate IP Address: XXX.XXX.XXX.XXX
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Local Candidate type: srflx
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Local Candidate port: 38563
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Local Candidate priority: 1694498815
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Local Candidate transport protocol: udp
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Local Candidate relay protocol: N/A
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Local Candidate Ice server source: stun.kinesisvideo.ap-northeast-1.amazonaws.com
2023-02-13 05:57:16 DEBUG   rtcPeerConnectionGetMetrics(): ICE remote candidate Stats requested at 16762678365732111
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Remote Candidate IP Address: XXX.XXX.XXX.XXX
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Remote Candidate type: srflx
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Remote Candidate port: 45867
2023-02-13 05:57:16 VERBOSE signalingClientGetCurrentState(): Signaling Client Get Current State
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Remote Candidate priority: 1685921535
2023-02-13 05:57:16 DEBUG   logSelectedIceCandidatesInformation(): Remote Candidate transport protocol: udp
```

# Amazon Kinesis Video Streams with WebRTC 服務配額
<a name="kvswebrtc-limits"></a>

Kinesis Video Streams with WebRTC 具有下列服務配額：

**重要**  
下列服務配額是可增加的軟性 **【s】**，或無法增加的硬性 **【h】**。您會在下表中看到個別服務配額旁的 【s】 和 【h】。

**注意**  
TPS 代表*每秒的交易*。

**Topics**
+ [控制平面 API 服務配額](#limits-control-plane)
+ [訊號 API 服務配額](#limits-signaling-service)
+ [TURN 服務配額](#limits-turn-service)
+ [WebRTC 擷取服務配額](#limits-ingestion)
+ [疑難排解](#troubleshooting)

## 控制平面 API 服務配額
<a name="limits-control-plane"></a>

下列各節描述控制平面 API 的服務配額。


| API | 每個 的最大 API 請求率 AWS 帳戶 |  AWS 帳戶 每個 的頻道數目上限 AWS 區域 | 每個頻道的 API 請求上限 | 
| --- | --- | --- | --- | 
| CreateSignalingChannel | 50 TPS [s] | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/kinesisvideostreams-webrtc-dg/latest/devguide/kvswebrtc-limits.html)  | N/A | 
| DeleteSignalingChannel | 50 TPS [h] | N/A | 5 TPS [h] | 
| DescribeMediaStorageConfiguration | 50 TPS [h] | N/A | 5 TPS [h] | 
| DescribeSignalingChannel | 300 TPS [h] | N/A | 5 TPS [h] | 
| GetSignalingChannelEndpoint | 300 TPS [h] | N/A | N/A | 
| ListSignalingChannels | 50 TPS [h] | N/A | N/A | 
| ListTagsForResource | 50 TPS [h]  | N/A | 5 TPS [h] | 
| TagResource | 50 TPS [h]  | N/A | 5 TPS [h] | 
| UntagResource | 50 TPS [h]  | N/A | 5 TPS [h] | 
| UpdateMediaStorageConfiguration | 10 TPS [h] | N/A | 5 TPS [h] | 
| UpdateSignalingChannel | 50 TPS [h] | N/A | 5 TPS [h] | 

## 訊號 API 服務配額
<a name="limits-signaling-service"></a>

下一節說明 Kinesis Video Streams with WebRTC 中訊號元件的服務配額。如需詳細資訊，請參閱[運作方式](kvswebrtc-how-it-works.md)。


| API | 終止連線之前的 GO\$1AWAY 訊息寬限期上限 | 每個頻道的 API 請求率上限 | 每個頻道的並行連線數目上限 | 連線持續時間上限 | 閒置連線逾時期間上限 | 
| --- | --- | --- | --- | --- | --- | 
| ConnectAsMaster | 1 分鐘 （小時） | 3 TPS (h) | 1 (h) | 1 小時 (h) | 10 分鐘 （小時） | 
| ConnectAsViewer | 1 分鐘 （小時） | 3 TPS (h) | 10 （秒） | 1 小時 (h) | 10 分鐘 （小時） | 


| API | API 請求率上限 | 訊息承載大小上限 | 
| --- | --- | --- | 
| SendAlexaOffertoMaster | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/kinesisvideostreams-webrtc-dg/latest/devguide/kvswebrtc-limits.html) | N/A | 
| SendICECandidate | 每個 WebSocket 連線 20 TPS (h) | 10k (h) | 
| SendSDPAnswer | 每個 WebSocket 連線 5 TPS (h) | 10k (h) | 
| SendSDPOffer | 每個 WebSocket 連線 5 TPS (h) | 10k (h) | 

## TURN 服務配額
<a name="limits-turn-service"></a>

下一節說明在 Kinesis Video Streams with WebRTC 中使用轉接圍繞 NAT (TURN) 元件的周遊服務配額。如需詳細資訊，請參閱[運作方式](kvswebrtc-how-it-works.md)。


| API 或 參數 | Value | 
| --- | --- | 
| GetIceServerConfig |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/kinesisvideostreams-webrtc-dg/latest/devguide/kvswebrtc-limits.html)  | 
| 位元速率 | 5Mbps (h) | 
| 登入資料生命週期 | 5 分鐘 （小時） | 
| 配置數量 | 每個訊號通道 50 個 (h) | 

## WebRTC 擷取服務配額
<a name="limits-ingestion"></a>

下一節說明 Amazon Kinesis Video Streams WebRTC 中媒體錄製元件的服務配額。如需詳細資訊，請參閱[搭配 WebRTC 使用 Amazon Kinesis Video Streams 來擷取和存放媒體](webrtc-ingestion.md)。

**JoinStorageSession**
+ API：
  + 每 AWS 帳戶 50 TPS (h)
  + 每個頻道 - 2 TPS (h)
+ 串流工作階段配額：
  + 位元速率 - 1 Mbps （秒）
  + 工作階段持續時間 - 1 小時 (h)
  + 閒置逾時 - 3 分鐘 (h)

**JoinStorageSessionAsViewer**
+ API：
  + 每 AWS 帳戶 50 TPS (h)
  + 每個頻道 - 2 TPS (h)
+ 串流工作階段配額：
  + 工作階段中並行用戶端上限 - 3 個計數 (h)
  + 工作階段持續時間 - 1 小時 (h)
  + 閒置逾時 - 1 分鐘 (h)

## 疑難排解
<a name="troubleshooting"></a>

您只能將**一個**主要和**一或多個**檢視器連接到單一訊號頻道。

無法將多個主控端連接到單一訊號頻道。

# 使用 WebRTC 存取 Kinesis Video Streams
<a name="kvswebrtc-accessing"></a>

您可以使用下列任何方式搭配 WebRTC 使用 Kinesis Video Streams：

**AWS 管理主控台**  
[入門 AWS 管理主控台](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/getting-started.html)  
主控台是瀏覽器型界面，可用來存取和使用 AWS 服務，包括 Kinesis Video Streams with WebRTC。

**AWS SDKs**  
AWS 提供軟體開發套件 (SDKs)，其中包含適用於各種程式設計語言和平台 （例如 Java、Python、Ruby、.NET、iOS、Android 等） 的程式庫和範本程式碼。SDKs提供使用 WebRTC 建立 Kinesis Video Streams 程式設計存取的便利方式。如需 AWS SDKs 的相關資訊，包括如何下載和安裝，請參閱[適用於 Amazon Web Services 的工具](https://aws.amazon.com/tools/)。

**Kinesis Video Streams with WebRTC HTTPS API**  
您可以使用 Kinesis Video Streams with WebRTC 並以 AWS 程式設計方式存取 Kinesis Video Streams with WebRTC APIs，這可讓您直接向服務發出 API 請求。如需詳細資訊，請參閱 [Amazon Kinesis Video Streams API 參考](https://docs.aws.amazon.com//kinesisvideostreams/latest/dg/API_Reference.html)。