Mit der Google Meet Media API können Sie auf Echtzeitmedien aus Google Meet-Konferenzen zugreifen. Dies ermöglicht eine Vielzahl von Anwendungsfällen, z. B. Apps, die Aufgaben dokumentieren, Echtzeitdaten zum aktuellen Meeting liefern oder Audio- und Videoinhalte auf eine neue Oberfläche streamen.
Anwendungsfälle
In der Google Cloud Console registrierte Apps können über die Meet Media API eine Verbindung zu Meet-Konferenzen herstellen. So sind folgende Aktionen möglich:
- Videostreams ansehen Beispiel:
- Videostreams, die in Meet-Konferenzen generiert wurden, in Ihre eigenen KI-Modelle einspeisen.
- Streams nach benutzerdefinierten Aufnahmen filtern
- Audiostreams abspielen Beispiel:
- Sie können Audioinhalte direkt in Gemini einspeisen und Ihren eigenen KI-Chatbot für Besprechungen erstellen.
- Audiostreams, die in Meet-Konferenzen generiert wurden, in Ihren eigenen Transkriptionsservice einspeisen
- Untertitel in verschiedenen Sprachen generieren
- Erstelle aus den aufgenommenen Audiodaten modellgegenerte Gebärdensprachfeeds.
- Erstellen Sie eigene Geräuschunterdrückungsmodelle, um Hintergrundgeräusche und Artefakte aus der Videokonferenz zu entfernen.
- Teilnehmermetadaten verwenden Beispiel:
- Erkennen, welche Teilnehmer an der Konferenz teilnehmen, um bessere Informationen und Analysen zu erhalten.
Allgemeine Begriffe
- Cloud-Projektnummer
- Eine unveränderliche generierte
int64
-Kennung für ein Google Cloud-Projekt. Diese Werte werden von der Google Cloud Console für jede registrierte App generiert. - Konferenz
- Eine servergenerierte Instanz eines Anrufs in einem Videokonferenzbereich. Nutzer betrachten dieses Szenario in der Regel als ein einziges Meeting.
- Conference Resource Data Channel
Anstatt Ressourcen wie bei der Google Meet REST API über HTTP anzufordern, fordern Meet Media API-Clients Ressourcen über Datenkanäle vom Server an.
Für jeden Ressourcentyp kann ein spezieller Datenkanal geöffnet werden. Danach kann der Client Anfragen über den Channel senden. Ressourcenaktualisierungen werden über denselben Kanal übertragen.
- Mitwirkende Quelle (Contributing Source, CSRC)
Bei virtuellen Medienstreams kann nicht davon ausgegangen werden, dass ein Medienstream immer auf denselben Teilnehmer verweist. Der CSRC-Wert im Header jedes RTP-Pakets gibt die tatsächliche Quelle des Pakets an.
Meet weist jedem Teilnehmer einer Konferenz beim Beitritt einen eindeutigen CSRC-Wert zu. Dieser Wert bleibt konstant, bis der Nutzer die Website verlässt.
- Datenkanäle
WebRTC-Datenkanäle ermöglichen den Austausch beliebiger Daten (Text, Dateien usw.) unabhängig von Audio- und Videostreams. Datenkanäle verwenden dieselbe Verbindung wie Medienstreams. So können WebRTC-Anwendungen effizient um einen Datenaustausch erweitert werden.
- Interactive Connectivity Establishment (ICE)
Ein Protokoll zum Herstellen einer Verbindung, das alle möglichen Routen für die Kommunikation zwischen zwei Computern über ein Peer-to-Peer-Netzwerk (P2P) findet und dafür sorgt, dass die Verbindung aufrechterhalten wird.
- Medienstream
Ein WebRTC-Medienstream stellt einen Mediendatenfluss dar, in der Regel Audio- oder Videodaten, die von einem Gerät wie einer Kamera oder einem Mikrofon erfasst werden. Er besteht aus einem oder mehreren Medienstream-Tracks, die jeweils eine einzelne Medienquelle wie einen Video- oder Audiotrack repräsentieren.
- Mediastream-Track
Besteht aus einem einzelnen, unidirektionalen Fluss von RTP-Paketen. Ein Mediastream-Track kann Audio oder Video sein, aber nicht beides. Eine bidirektionale Secure Real-time Transport Protocol-Verbindung (SRTP) besteht in der Regel aus zwei Medienstream-Tracks, einem ausgehenden Track vom lokalen zum Remote-Peer und einem eingehenden Track vom Remote-Peer zum lokalen Peer.
- Konferenzraum
Ein virtueller Ort oder ein dauerhaftes Objekt (z. B. ein Konferenzraum), an dem eine Konferenz stattfindet. In einem Gruppenbereich kann immer nur eine aktive Konferenz stattfinden. Ein Gruppenbereich hilft Nutzern auch, sich zu treffen und gemeinsame Ressourcen zu finden.
- Teilnehmer
Eine Person, die an einer Videokonferenz teilnimmt oder den Companion-Modus verwendet, sich als Zuschauer ansieht oder ein Gerät in einem Konferenzraum, das mit einem Anruf verbunden ist. Wenn ein Teilnehmer der Konferenz beitritt, wird ihm eine eindeutige ID zugewiesen.
- Relevante Streams
Die Anzahl der virtuellen Audiostreams und virtuellen Videostreams, die ein Client öffnen kann, ist begrenzt.
Es ist durchaus möglich, dass die Anzahl der Teilnehmer in einer Videokonferenz diese Zahl überschreitet. In diesen Fällen übertragen Meet-Server die Audio- und Videostreams der Teilnehmer, die als „am relevantesten“ eingestuft werden. Die Relevanz wird anhand verschiedener Merkmale bestimmt, z. B. anhand der Bildschirmfreigabe und der Frage, wie lange es her ist, dass ein Teilnehmer gesprochen hat.
- Selective Forwarding Unit (SFU)
Eine Selective Forwarding Unit (SFU) ist eine serverseitige Komponente in WebRTC-Konferenzen, die die Verteilung von Medienstreams verwaltet. Die Teilnehmer stellen nur eine Verbindung zur SFU her, die relevante Streams selektiv an andere Teilnehmer weiterleitet. Dadurch werden die Anforderungen an die Clientverarbeitung und die Bandbreite reduziert, was skalierbare Konferenzen ermöglicht.
- Session Description Protocol (SDP)
Der Signalisierungsmechanismus, mit dem WebRTC eine P2P-Verbindung aushandelt.
RFC 8866
gilt.- SDP-Antwort
Die Antwort auf ein SDP-Angebot. Mit der Antwort werden alle empfangenen Streams vom Remote-Peer abgelehnt oder akzeptiert. Außerdem wird ausgehandelt, welche Streams an das anbietende Peer übertragen werden sollen. Hinweis: In der SDP-Antwort können keine gesendeten Streams aus dem ursprünglichen Angebot hinzugefügt werden. Wenn ein Angebotspartner signalisiert, dass er bis zu drei Audiostreams von seinem Remote-Peer akzeptiert, kann dieser Remote-Peer keine vier Audiostreams für die Übertragung signalisieren.
- SDP-Angebot
Das ursprüngliche SDP im Peer-to-Peer-Verhandlungsablauf für Angebot und Antwort. Das Angebot wird vom ausführenden Peer erstellt und legt die Bedingungen der Peer-to-Peer-Sitzung fest. Das Angebot wird immer vom Meet Media API-Client erstellt und an Meet-Server gesendet.
Ein Angebot kann beispielsweise die Anzahl der Audio- oder Videostreams angeben, die der Anbieter sendet (oder empfangen kann) und ob Datenkanäle geöffnet werden sollen.
- Synchronisationsquelle (SSRC)
Eine SSRC ist eine 32-Bit-Kennung, die eine einzelne Quelle eines Medienstreams innerhalb einer RTP-Sitzung (Real-Time Transport Protocol) eindeutig identifiziert. In WebRTC werden SSRCs verwendet, um zwischen verschiedenen Medienstreams zu unterscheiden, die von verschiedenen Teilnehmern stammen, oder sogar zwischen verschiedenen Tracks desselben Teilnehmers (z. B. von verschiedenen Kameras).
- RtpTransceiver
Wie unter
RFC 8829
beschrieben, ist ein Transceiver eine Abstraktion von RTP-Streams in einer Peer-to-Peer-Sitzung.Ein einzelner Transceiver wird einer einzelnen Medienbeschreibung im SDP zugeordnet und durch diese beschrieben. Ein Transceiver besteht aus einem
RtpSender
und einemRtpReceiver
.Da RTP bidirektional ist, hat jeder Peer eine eigene Transceiver-Instanz für dieselbe RTP-Verbindung. Die
RtpSender
eines bestimmten Transceivers für den lokalen Peer wird derRtpReceiver
eines bestimmten Transceivers im Remote-Peer zugeordnet. Auch das Gegenteil kann der Fall sein. DieRtpSender
desselben Transceivers des Remote-Peers wird derRtpReceiver
des lokalen Peers zugeordnet.Jede Medienbeschreibung hat einen eigenen Transceiver. Daher hat eine Peer-to-Peer-Sitzung mit mehreren RTP-Streams mehrere Transceiver mit mehreren
RtpSenders
undRtpReceiver
für jeden Peer.- Virtuelle Medienstreams
Virtuelle Medienstreams sind aggregierte Medienstreams, die von einer Selective Forwarding Unit (SFU) in WebRTC-Konferenzen generiert werden. Anstatt dass jeder Teilnehmer einzelne Streams an alle anderen sendet, multiplext die SFU ausgewählte Teilnehmerstreams auf weniger ausgehende virtuelle Streams. Dadurch wird die Verbindungstopologie vereinfacht und die Belastung der Teilnehmer reduziert, was skalierbare Konferenzen ermöglicht. Jeder virtuelle Stream kann Medien von mehreren Teilnehmern enthalten, die dynamisch von der SFU verwaltet werden.
Weitere Informationen
Wie Sie mit der Entwicklung eines Meet Media API-Clients beginnen, erfahren Sie unter Erste Schritte.
Informationen zum Einrichten und Ausführen eines Beispiel-Referenzclients für die Meet Media API finden Sie im Schnellstart für C++-Referenzclient.
Eine Übersicht über die Konzepte finden Sie unter Meet Media API-Konzepte.
Weitere Informationen zu WebRTC finden Sie unter WebRTC für Interessierte.
Informationen zum Entwickeln mit Google Workspace APIs, einschließlich der Authentifizierung und Autorisierung, finden Sie unter Mit Google Workspace entwickeln.