Media Capture and Streams API (Media Stream)
媒體捕獲和流 API,通常稱為 媒體流 API 或 MediaStream API,是一個與 WebRTC 相關的 API,它支援流式傳輸音訊和影片資料。
它提供了用於處理流及其組成軌道、與資料格式相關的約束、非同步使用資料時的成功和錯誤回撥,以及在此過程中觸發的事件的介面和方法。
概念與用法
該 API 基於對 MediaStream 物件的處理,該物件代表音訊或影片相關資料的流。請參閱 獲取媒體流 中的示例。
一個 MediaStream 由零個或多個 MediaStreamTrack 物件組成,代表各種音訊或影片軌道。每個 MediaStreamTrack 可能有一個或多個通道。通道代表媒體流的最小單位,例如與給定揚聲器關聯的音訊訊號,如立體聲音軌中的左或右。
MediaStream 物件具有單個輸入和一個單個輸出。由 getUserMedia() 生成的 MediaStream 物件稱為本地,其源輸入是使用者的一個攝像頭或麥克風。非本地 MediaStream 可能代表媒體元素,如 <video> 或 <audio>,透過 WebRTC RTCPeerConnection API 獲取的來自網路的流,或者使用 Web Audio API MediaStreamAudioDestinationNode 建立的流。
MediaStream 物件的輸出連結到使用者。它可以是媒體元素,如 <audio> 或 <video>,WebRTC RTCPeerConnection API,或者 Web Audio API 的 MediaStreamAudioSourceNode。
介面
在這些參考文章中,您將找到關於構成媒體捕獲和流 API 的每個介面所需瞭解的基礎資訊。
事件
指南和教程
功能、約束和設定 文章討論了約束和功能的概念,以及媒體設定,幷包含一個 約束練習器,您可以使用它來試驗將不同的約束集應用於來自計算機 A/V 輸入裝置(如攝像頭和麥克風)的音訊和影片軌道的後果。
使用 getUserMedia() 拍攝靜態照片 文章展示瞭如何使用 getUserMedia() 訪問支援 getUserMedia() 的計算機或手機上的攝像頭並用其拍照。
規範
| 規範 |
|---|
| 媒體捕獲和流 |
| 從 DOM 元素捕獲媒體 |
瀏覽器相容性
api.MediaStream
載入中…
api.MediaStreamTrack
載入中…
api.MediaDevices
載入中…
api.MediaDeviceInfo
載入中…
api.InputDeviceInfo
載入中…
api.CanvasCaptureMediaStreamTrack
載入中…
另見
- WebRTC - 該 API 的介紹頁面
- 使用 WebRTC 拍攝靜態照片:一個關於使用
getUserMedia()的演示和教程。