Google Meet Media API memungkinkan Anda mengakses media real-time dari konferensi Google Meet. Hal ini memungkinkan berbagai kasus penggunaan, seperti aplikasi yang mendokumentasikan item tindakan, menawarkan insight real-time tentang rapat saat ini, atau melakukan streaming audio dan video ke platform baru.
Kasus penggunaan
Aplikasi yang terdaftar di konsol Google Cloud dapat menggunakan Meet Media API untuk terhubung ke konferensi Meet, sehingga dapat:
- Menggunakan streaming video. Misalnya:
- Feed streaming video yang dihasilkan dalam konferensi Meet ke dalam model AI Anda sendiri.
- Memfilter streaming untuk rekaman kustom.
- Menggunakan streaming audio. Misalnya:
- Masukkan audio langsung ke Gemini dan buat chatbot AI rapat Anda sendiri.
- Mengirimkan streaming audio yang dihasilkan di konferensi Meet ke layanan transkripsi Anda sendiri
- Buat teks dalam berbagai bahasa.
- Buat feed bahasa isyarat yang dibuat model dari audio yang direkam.
- Buat model denoiser Anda sendiri untuk menghapus latar belakang dan artefak bising dari konferensi.
- Menggunakan metadata peserta. Misalnya:
- Mendeteksi peserta mana yang berada dalam konferensi, sehingga memungkinkan intelijen dan analisis yang lebih baik.
Istilah umum
- Nomor project Cloud
- ID
int64
yang dibuat dan tidak dapat diubah untuk project Google Cloud. Nilai ini dibuat oleh konsol Google Cloud untuk setiap aplikasi terdaftar. - Konferensi
- Instance panggilan yang dibuat server dalam ruang rapat. Pengguna biasanya menganggap skenario ini sebagai satu rapat.
- Saluran Data Referensi Konferensi
Daripada meminta resource melalui HTTP, seperti halnya Google Meet REST API, klien Meet Media API meminta resource dari server melalui saluran data.
Saluran data khusus dapat dibuka untuk setiap jenis resource. Setelah dibuka, klien dapat mengirim permintaan melalui saluran. Pembaruan resource akan dikirim melalui saluran yang sama.
- Sumber Kontributor (CSRC)
Dengan streaming media virtual, Anda tidak dapat mengasumsikan bahwa streaming media selalu mengarah ke peserta yang sama. Nilai CSRC di setiap header paket RTP mengidentifikasi sumber sebenarnya dari paket.
Meet menetapkan nilai CSRC unik kepada setiap peserta dalam konferensi saat mereka bergabung. Nilai ini tetap konstan hingga pengguna keluar.
- Saluran data
Saluran Data WebRTC memungkinkan pertukaran data arbitrer (teks, file, dll.) secara independen dari streaming audio dan video. Data Channel menggunakan koneksi yang sama dengan streaming media, yang memberikan cara yang efisien untuk menambahkan pertukaran data ke aplikasi WebRTC.
- Interactive Connectivity Establishment (ICE)
Protokol untuk membangun konektivitas, menemukan semua kemungkinan rute bagi dua komputer untuk berkomunikasi satu sama lain melalui jaringan peer-to-peer (P2P), lalu memastikan Anda tetap terhubung.
- Streaming media
Aliran Media WebRTC mewakili aliran data media, biasanya audio atau video, yang diambil dari perangkat seperti kamera atau mikrofon. File ini terdiri dari satu atau beberapa jalur streaming media, yang masing-masing mewakili satu sumber media seperti jalur video atau jalur audio).
- Jalur streaming media
Terdiri dari satu aliran paket RTP searah. Trek streaming media dapat berupa audio atau video, tetapi tidak keduanya. Koneksi Secure Real-time Transport Protocol (SRTP) dua arah biasanya terdiri dari dua jalur streaming media, keluar dari peer lokal ke peer jarak jauh, dan masuk dari peer jarak jauh ke peer lokal.
- Ruang rapat
Tempat virtual atau objek persisten (seperti ruang rapat) tempat konferensi diadakan. Hanya satu konferensi aktif yang dapat diadakan di satu ruang kapan saja. Ruang pertemuan juga membantu pengguna bertemu dan menemukan referensi bersama.
- Peserta
Orang yang bergabung ke konferensi atau yang menggunakan Mode Pendamping, menonton sebagai penonton, atau perangkat ruang yang terhubung ke panggilan. Saat peserta bergabung ke konferensi, ID unik akan ditetapkan.
- Streaming yang relevan
Ada batas jumlah Streaming Audio Virtual dan Streaming Video Virtual yang dapat dibuka klien.
Jumlah peserta dalam konferensi dapat melebihi jumlah ini. Dalam situasi ini, server Meet akan mengirimkan streaming audio dan video dari peserta yang dianggap "paling relevan". Relevansi ditentukan dari berbagai karakteristik, seperti berbagi layar dan seberapa baru peserta berbicara.
- Selective Forwarding Unit (SFU)
Selective Forwarding Unit (SFU) adalah komponen sisi server dalam konferensi WebRTC yang mengelola distribusi streaming media. Peserta hanya terhubung ke SFU, yang secara selektif meneruskan streaming yang relevan ke peserta lain. Hal ini mengurangi kebutuhan bandwidth dan pemrosesan klien, sehingga memungkinkan konferensi yang skalabel.
- Session Description Protocol (SDP)
Mekanisme sinyal yang digunakan WebRTC untuk menegosiasikan koneksi P2P.
RFC 8866
mengaturnya.- Jawaban SDP
Respons terhadap penawaran SDP. Jawaban menolak atau menerima streaming yang diterima dari peer jarak jauh. Ia juga menegosiasikan aliran data yang direncanakan untuk dikirim kembali ke peer penawaran. Perhatikan bahwa jawaban SDP tidak dapat menambahkan streaming yang diberi sinyal dari penawaran awal. Secara anekdotal, jika peer penawaran memberi sinyal bahwa peer tersebut menerima hingga tiga streaming audio dari peer jarak jauhnya, peer jarak jauh ini tidak dapat memberi sinyal empat streaming audio untuk transmisi.
- Penawaran SDP
SDP awal dalam alur negosiasi peer-to-peer penawaran-jawaban. Penawaran dibuat oleh peer yang memulai dan menentukan persyaratan sesi peer-to-peer. Penawaran selalu dibuat oleh klien Meet Media API dan dikirim ke server Meet.
Misalnya, penawaran dapat menunjukkan jumlah streaming audio atau video yang dikirim (atau dapat diterima) oleh penawar dan apakah saluran data akan dibuka.
- Sumber Sinkronisasi (SSRC)
SSRC adalah ID 32-bit yang secara unik mengidentifikasi satu sumber streaming media dalam sesi RTP (Real-time Transport Protocol). Di WebRTC, SSRC digunakan untuk membedakan berbagai streaming media yang berasal dari peserta yang berbeda atau bahkan trek yang berbeda dari peserta yang sama (seperti kamera yang berbeda).
- RtpTransceiver
Seperti yang dijelaskan dalam
RFC 8829
, transceiver adalah abstraksi di sekitar streaming RTP dalam sesi peer-to-peer.Satu transceiver dipetakan ke, dan dijelaskan oleh, satu deskripsi media di SDP. Transceiver terdiri dari
RtpSender
danRtpReceiver
.Karena RTP bersifat dua arah, setiap peer memiliki instance transceivernya sendiri untuk koneksi RTP yang sama.
RtpSender
transceiver tertentu untuk peer lokal dipetakan keRtpReceiver
transceiver tertentu di peer jarak jauh. Hal sebaliknya juga berlaku.RtpSender
dari transceiver yang sama dari peer jarak jauh dipetakan keRtpReceiver
dari peer lokal.Setiap deskripsi media memiliki transceiver khusus. Oleh karena itu, sesi peer-to-peer dengan beberapa aliran RTP memiliki beberapa transceiver dengan beberapa
RtpSenders
danRtpReceiver
untuk setiap peer.- Streaming Media Virtual
Streaming Media Virtual adalah streaming media gabungan yang dihasilkan oleh Unit Pengiriman Selektif (SFU) dalam konferensi WebRTC. Daripada setiap peserta mengirim streaming individual ke semua orang, SFU akan melakukan multipleks streaming peserta yang dipilih ke streaming virtual keluar yang lebih sedikit. Hal ini menyederhanakan topologi koneksi dan mengurangi beban peserta, sehingga memungkinkan konferensi yang skalabel. Setiap streaming virtual dapat berisi media dari beberapa peserta, yang dikelola secara dinamis oleh SFU.
Topik terkait
Untuk mempelajari cara mulai mengembangkan klien Meet Media API, ikuti langkah-langkah di bagian Memulai.
Untuk mempelajari cara menyiapkan dan menjalankan contoh klien referensi Meet Media API, baca panduan memulai klien referensi C++.
Untuk mendapatkan ringkasan konseptual, lihat konsep Meet Media API.
Untuk mempelajari WebRTC lebih lanjut, lihat WebRTC Untuk Orang yang Ingin Tahu.
Untuk mempelajari pengembangan dengan Google Workspace API, termasuk menangani autentikasi dan otorisasi, lihat Mengembangkan di Google Workspace.