Media Capture and Streams API (Media Stream)
Die Media Capture and Streams API, oft auch Media Streams API oder MediaStream API genannt, ist eine mit WebRTC zusammenhängende API, die das Streaming von Audio- und Videodaten unterstützt.
Sie stellt Interfaces und Methoden für die Arbeit mit Streams und den darin enthaltenen Tracks bereit. Dazu gehören Constraints für Datenformate, Erfolgs- und Fehler-Callbacks bei der asynchronen Verarbeitung der Daten sowie Events, die währenddessen ausgelöst werden.
Konzepte und Verwendung
Die API basiert auf der Arbeit mit einem MediaStream-Objekt, das einen Strom von Audio- oder Videodaten repräsentiert. Ein Beispiel finden Sie unter Den Medienstream abrufen.
Ein MediaStream besteht aus null oder mehr MediaStreamTrack-Objekten, die verschiedene Audio- oder Video-Tracks repräsentieren. Jeder MediaStreamTrack kann einen oder mehrere Kanäle haben. Ein Kanal ist die kleinste Einheit eines Medienstreams, etwa das Audiosignal eines bestimmten Lautsprechers – beispielsweise links oder rechts bei einem Stereo-Audiotrack.
MediaStream-Objekte haben einen Eingang und einen Ausgang. Ein durch getUserMedia() erzeugtes MediaStream-Objekt wird als lokal bezeichnet. Als Eingangsquelle dient ihm eine Kamera oder ein Mikrofon der nutzenden Person. Ein nicht lokaler MediaStream kann ein Medienelement wie <video> oder <audio> repräsentieren, einen über das Netzwerk übertragenen und über die WebRTC-API RTCPeerConnection empfangenen Stream oder einen Stream, der mithilfe von MediaStreamAudioDestinationNode aus der Web Audio API erstellt wurde.
Der Ausgang des MediaStream-Objekts ist mit einem Empfänger verbunden. Das kann ein Medienelement wie <audio> oder <video>, die WebRTC-API RTCPeerConnection oder ein MediaStreamAudioSourceNode aus der Web Audio API sein.
Interfaces
In diesen Referenzartikeln finden Sie die grundlegenden Informationen zu den einzelnen Interfaces der Media Capture and Streams API.
Events
Leitfäden und Tutorials
Der Artikel Fähigkeiten, Constraints und Einstellungen erläutert die Konzepte Constraints und Fähigkeiten sowie Medieneinstellungen. Er enthält außerdem ein Tool zum Testen von Constraints. Damit können Sie ausprobieren, wie sich verschiedene Constraint-Sätze auf die Audio- und Videotracks der A/V-Eingabegeräte Ihres Computers, etwa Webcam und Mikrofon, auswirken.
Der Artikel Standbilder mit getUserMedia() aufnehmen zeigt, wie Sie mit getUserMedia() auf die Kamera eines Computers oder Mobiltelefons zugreifen, das getUserMedia() unterstützt, und damit ein Foto aufnehmen.
Spezifikationen
| Spezifikation |
|---|
| Media Capture and Streams> |
| Media Capture from DOM Elements> |
Browser-Kompatibilität
>api.MediaStream
api.MediaStreamTrack
api.MediaDevices
api.MediaDeviceInfo
api.InputDeviceInfo
api.CanvasCaptureMediaStreamTrack
Siehe auch
- WebRTC – die Einführungsseite zur API
- Standbilder mit WebRTC aufnehmen: eine Demonstration und ein Tutorial zur Verwendung von
getUserMedia().