Interfejs Google Meet Media API umożliwia dostęp do multimediów w czasie rzeczywistym z konferencji w Google Meet. Umożliwia to realizację różnych przypadków użycia, takich jak aplikacje dokumentujące elementy akcji, oferujące w czasie rzeczywistym statystyki dotyczące bieżącego spotkania lub przesyłające dźwięk i obraz na nowe urządzenie.
Przypadki użycia
Aplikacje zarejestrowane w konsoli Google Cloud mogą używać interfejsu Meet Media API do łączenia się z konferencjami Meet, co umożliwia im:
- Odtwarzanie strumieni wideo. Na przykład:
- Przesyłanie strumieni wideo wygenerowanych w konferencjach Meet do własnych modeli AI.
- Filtrowanie strumieni na potrzeby niestandardowych nagrań.
- Odtwarzanie strumieni audio. Na przykład:
- Przesyłaj dźwięk bezpośrednio do Gemini i twórz własnego chatbota AI na spotkania.
- Przesyłanie strumieni audio wygenerowanych na konferencjach Meet do własnej usługi transkrypcji
- generować napisy w różnych językach.
- tworzenie na podstawie zarejestrowanego dźwięku kanałów z językiem migowym generowanych przez model.
- Twórz własne modele redukcji szumów, aby usuwać szum i artefakty z tła nagrań konferencyjnych.
- Używanie metadanych uczestników Na przykład:
- wykrywanie, którzy uczestnicy są na konferencji, co umożliwia lepsze wykorzystanie informacji i analizy;
Często spotykane terminy
- Numer projektu Cloud
- Niezmienne wygenerowane
int64
identyfikator projektu Google Cloud. Te wartości są generowane przez konsolę Google Cloud dla każdej zarejestrowanej aplikacji. - Konferencja
- Wygenerowana na serwerze instancja połączenia w miejscu spotkania. Użytkownicy zwykle uważają, że w tym przypadku jest to jedno spotkanie.
- Kanał danych o zasobach konferencji
Zamiast wysyłać żądania zasobów przez HTTP, jak w przypadku interfejsu Google Meet REST API, klienci interfejsu Meet Media API wysyłają żądania zasobów od serwera przez kanały danych.
Dla każdego typu zasobu można otworzyć dedykowany kanał danych. Po otwarciu klient może wysyłać żądania przez kanał. Aktualizacje zasobów będą przesyłane tym samym kanałem.
- Źródło dźwięku (CSRC)
W przypadku wirtualnych strumieni multimediów nie można zakładać, że strumień multimediów zawsze wskazuje tego samego uczestnika. Wartość CSRC w nagłówku każdego pakietu RTP wskazuje prawdziwe źródło pakietu.
Gdy użytkownik dołącza do konferencji, Meet przypisuje mu unikalną wartość CSRC. Ta wartość pozostaje stała, dopóki użytkownik nie wyjdzie.
- Kanały danych
Kanały danych WebRTC umożliwiają wymianę dowolnych danych (tekstu, plików itp.) niezależnie od strumieni audio i wideo. Kanały danych korzystają z tego samego połączenia co strumienie danych, co stanowi skuteczny sposób na dodanie wymiany danych do aplikacji WebRTC.
- Interactive Connectivity Establishment (ICE)
Protokół służący do nawiązywania połączeń, znajdowania wszystkich możliwych tras, po których 2 komputery mogą się komunikować za pomocą sieci peer-to-peer (P2P), a następnie utrzymywania połączenia.
- strumień multimediów,
Strumień danych multimedialnych WebRTC to przepływ danych multimedialnych, zwykle audio lub wideo, przechwyconych z urządzenia, takiego jak kamera lub mikrofon. Składa się z jednej lub większej liczby ścieżek strumienia multimedialnego, z których każda reprezentuje jedno źródło multimediów, np. ścieżkę wideo lub ścieżkę audio.
- Ścieżka strumienia multimediów
Składa się z pojedynczego, jednokierunkowego przepływu pakietów RTP. Ścieżka strumienia multimediów może zawierać dźwięk lub obraz, ale nie oba naraz. Dwukierunkowe połączenie protokołem Secure Real-time Transport Protocol (SRTP) składa się zwykle z 2 ścieżek strumienia multimediów: wychodzącej z lokalnego do zdalnego urządzenia i przychodzącej ze zdalnego do lokalnego.
- Miejsce spotkań
Wirtualne miejsce lub trwały obiekt (np. sala konferencyjna), w którym odbywa się konferencja. W jednym pokoju może odbywać się tylko jedna aktywna rozmowa wideo. Zaplecze konferencyjne pomaga też użytkownikom spotykać się i znajdować udostępnione zasoby.
- Uczestnik
Osoba, która dołączyła do konferencji lub korzysta z trybu towarzyszącego, ogląda jako widz lub urządzenie w sali konferencyjnej połączone z rozmową. Gdy uczestnik dołącza do konferencji, przypisujemy mu unikalny identyfikator.
- Powiązane strumienie
Istnieje limit liczby wirtualnych strumieni audio i wirtualnych strumieni wideo, które może otworzyć klient.
Liczba uczestników w konferencji może przekroczyć tę liczbę. W takich sytuacjach serwery Meet przesyłają strumienie audio i wideo uczestników uznanych za „najbardziej odpowiednich”. Trafność jest określana na podstawie różnych cech, takich jak udostępnianie ekranu i czas, w którym uczestnik ostatnio przemówił.
- Selective Forwarding Unit (SFU)
Jednostka przekierowywania selektywnego (SFU) to komponent po stronie serwera w systemie konferencyjnym WebRTC, który zarządza dystrybucją strumienia danych. Uczestnicy łączą się tylko z serwerem SFU, który selektywnie przesyła odpowiednie strumienie do innych uczestników. Dzięki temu zmniejsza się obciążenie procesora i potrzeba na przepustowość, co umożliwia skalowanie konferencji.
- protokół SDP (Session Description Protocol),
Mechanizm sygnalizacji używany przez WebRTC do negocjowania połączenia P2P.
RFC 8866
.- Odpowiedź SDP
Odpowiedź na ofertę SDP. Odpowiedź odrzuca lub akceptuje strumienie otrzymane od zdalnego urządzenia. Rozmowy te dotyczą również tego, które strumienie mają być przesyłane z powrotem do oferującego. Pamiętaj, że odpowiedź SDP nie może dodawać sygnalizowanych strumieni z pierwotnej oferty. Jeśli oferujący sygnał równorzędny sygnalizuje, że akceptuje do 3 strumieni audio od swojego zdalnego odpowiednika, ten ostatni nie może sygnalizować 4 strumieni audio do transmisji.
- Oferta SDP
Początkowy SDP w procesie negocjacji peer-to-peer oferty i odpowiedzi. Oferta jest tworzona przez inicjującego peera i określa warunki sesji peer-to-peer. Oferta jest zawsze tworzona przez klienta interfejsu Meet Media API i przesyłana na serwery Meet.
Oferta może na przykład określać liczbę strumieni audio lub wideo, które dostawca wysyła (lub może odbierać), oraz czy kanały danych mają być otwarte.
- Źródło synchronizacji (SSRC)
SSRC to 32-bitowy identyfikator, który jednoznacznie identyfikuje pojedyncze źródło strumienia multimediów w sesji RTP (Real-time Transport Protocol). W WebRTC identyfikatory SSRC służą do rozróżniania różnych strumieni multimediów pochodzących od różnych uczestników lub nawet różnych ścieżek tego samego uczestnika (np. różnych kamer).
- RtpTransceiver
Jak opisano w artykule
RFC 8829
, transceiver to abstrakcja strumieni RTP w sesji peer-to-peer.Jeden transceiver jest mapowany na jeden opis multimediów w SDP i opisany za pomocą tego opisu. Transceiver składa się z
RtpSender
iRtpReceiver
.Ponieważ RTP jest dwukierunkowy, każdy peer ma własny moduł transceivera dla tego samego połączenia RTP. Wartość
RtpSender
danego transceivera dla lokalnego peera jest mapowana na wartośćRtpReceiver
konkretnego transceivera w odległym peerze. Odwrotna zależność jest również prawdziwa.RtpSender
tego samego transceivera w urządzeniu zdalnym jest mapowany naRtpReceiver
w urządzeniu lokalnym.Każdy opis multimediów ma własny dedykowany transceiver. Dlatego sesja peer-to-peer z wieloma strumieniami RTP ma wiele transceiverów z wieloma
RtpSenders
iRtpReceiver
dla każdego peera.- Wirtualne strumienie mediów
Wirtualne strumienie multimediów to zbiorcze strumienie multimediów generowane przez jednostki selektywnego przekierowywania (SFU) w konferencjach WebRTC. Zamiast wysyłania indywidualnych strumieni do wszystkich pozostałych uczestników, SFU multiplexuje wybrane strumienie uczestników w mniejszą liczbę strumieni wirtualnych wychodzących. Upraszcza to topologię połączeń i zmniejsza obciążenie uczestników, umożliwiając skalowanie konferencji. Każdy strumień wirtualny może zawierać multimedia od wielu uczestników, którymi zarządza dynamicznie SFU.
Powiązane artykuły
Aby dowiedzieć się, jak zacząć tworzyć klienta Meet Media API, wykonaj czynności opisane w sekcji Jak zacząć.
Aby dowiedzieć się, jak skonfigurować i uruchomić przykładowego klienta referencyjnego interfejsu Meet Media API, przeczytaj artykuł Szybki start z klientem referencyjnym w C++.
Aby zapoznać się z koncepcją, przeczytaj artykuł Meet Media API – koncepcje.
Więcej informacji o WebRTC znajdziesz w artykule WebRTC dla ciekawskich.
Więcej informacji o tworzeniu aplikacji z interfejsami Google Workspace API, w tym o uwierzytelnianiu i autoryzacji, znajdziesz w artykule Tworzenie aplikacji w Google Workspace.