Meet Media API'ye genel bakış

Google Meet Media API, Google Meet konferanslarından gerçek zamanlı medyaya erişmenize olanak tanır. Bu sayede, yapılacaklar listesini belgeleyen, mevcut toplantıyla ilgili anlık analizler sunan veya ses ve videoyu yeni bir yüzeye aktaran uygulamalar gibi çeşitli kullanım alanları sunulur.

Kullanım alanları

Google Cloud Console'a kayıtlı uygulamalar, Meet konferanslarına bağlanmak için Meet Media API'yi kullanabilir. Bu sayede:

  • Video akışlarını kullanma. Örneğin:
    • Meet konferanslarında oluşturulan video akışlarını kendi yapay zeka modellerinize besleyin.
    • Özel kayıtlar için akışları filtreleyin.
  • Ses akışlarını tüketin. Örneğin:
    • Sesi doğrudan Gemini'ye aktarın ve kendi toplantı yapay zeka sohbet botunuzu oluşturun.
    • Meet konferanslarında oluşturulan ses akışlarını kendi transkript hizmetinize besleme
    • Farklı dillerde altyazı oluşturabilirsiniz.
    • Kaydedilen seslerden model tarafından oluşturulan işaret dili feed'leri oluşturma
    • Konferanstan arka planı ve gürültülü yapıları kaldırmak için kendi gürültü giderme modellerinizi oluşturun.
  • Katılımcı meta verilerini kullanma. Örneğin:
    • Konferansta hangi katılımcıların olduğunu algılayarak daha iyi analizler elde edin.

Sık kullanılan terimler

Cloud proje numarası
Google Cloud projesi için oluşturulan ve değiştirilemeyen bir int64 tanımlayıcısı. Bu değerler, kayıtlı her uygulama için Google Cloud Console tarafından oluşturulur.
Konferans
Toplantı alanındaki bir aramanın sunucu tarafından oluşturulan örneği. Kullanıcılar genellikle bu senaryoyu tek bir toplantı olarak değerlendirir.
Konferans Kaynağı Veri Kanalı

Meet Media API istemcileri, Google Meet REST API'de olduğu gibi HTTP üzerinden kaynak istemek yerine sunucudan veri kanalları üzerinden kaynak ister.

Her kaynak türü için özel bir veri kanalı açılabilir. İstemci, açıldıktan sonra kanal üzerinden istek gönderebilir. Kaynak güncellemeleri aynı kanal üzerinden iletilir.

Katkıda Bulunan Kaynak (CSRC)

Sanal medya akışlarında, bir medya akışının her zaman aynı katılımcıyı gösterdiğini varsayamazsınız. Her RTP paketinin başlığındaki CSRC değeri, paketin gerçek kaynağını tanımlar.

Meet, konferansa katılan her katılımcıya benzersiz bir CSRC değeri atar. Bu değer, kullanıcı siteyi terk edene kadar sabit kalır.

Veri kanalları

WebRTC Veri Kanalları, ses ve video akışlarından bağımsız olarak rastgele verilerin (metin, dosya vb.) aktarılmasını sağlar. Veri kanalları, medya akışlarıyla aynı bağlantıyı kullanır. Bu sayede WebRTC uygulamalarına veri alışverişi eklemenin etkili bir yolunu sunar.

Etkileşimli Bağlantı Kurma (ICE)

Bağlantı kurmak için kullanılan bir protokoldür. İki bilgisayarın eşler arası (P2P) ağ üzerinden birbirleriyle iletişim kurması için tüm olası yolları bulur ve ardından bağlantınızın devam etmesini sağlar.

Medya akışı

WebRTC medya akışı, kamera veya mikrofon gibi bir cihazdan alınan genellikle ses veya video olan bir medya verisi akışını temsil eder. Her biri video parçası veya ses parçası gibi tek bir medya kaynağını temsil eden bir veya daha fazla medya akışı parçasından oluşur.

Medya akışı kanalı

Tek yönlü tek bir RTP paketi akışından oluşur. Medya akışı kanalı ses veya video olabilir ancak ikisini birden olamaz. İki yönlü Güvenli Gerçek Zamanlı İletim Protokolü (SRTP) bağlantısı genellikle iki medya akış parçasından oluşur: yerel eşe uzak eşten çıkış ve uzak eşe yerel eşten giriş.

Toplantı alanı

Konferansın düzenlendiği sanal bir yer veya kalıcı bir nesne (ör. toplantı odası). Aynı anda yalnızca bir alanda tek bir etkin konferans yapılabilir. Toplantı alanları, kullanıcıların bir araya gelmesine ve paylaşılan kaynakları bulmasına da yardımcı olur.

Katılımcı

Konferans'a katılan veya Tamamlayıcı Mod'u kullanan, izleyici olarak izleyen bir kullanıcı ya da görüşmeye bağlı bir oda cihazı. Bir katılımcı konferansa katıldığında benzersiz bir kimlik atanır.

Alakalı yayınlar

Bir istemcinin açabileceği sanal ses akışları ve sanal video akışları sayısı sınırlıdır.

Konferans'taki katılımcı sayısının bu sayıyı aşması mümkündür. Bu durumlarda Meet sunucuları, "en alakalı" olarak değerlendirilen katılımcıların ses ve video akışlarını iletir. Alaka düzeyi, ekran paylaşımı ve katılımcının ne kadar süre önce konuştuğu gibi çeşitli özelliklerden belirlenir.

Seçici Yönlendirme Birimi (SFU)

Seçmeli Yönlendirme Birimi (SFU), WebRTC konferans görüşmesinde medya akışının dağıtımını yöneten sunucu tarafı bir bileşendir. Katılımcılar yalnızca SFU'ya bağlanır. SFU, alakalı akışları diğer katılımcılara seçerek yönlendirir. Bu, istemci işleme ve bant genişliği ihtiyaçlarını azaltarak ölçeklenebilir konferanslar yapılmasını sağlar.

Oturum Açıklama Protokolü (SDP)

WebRTC'nin P2P bağlantısı için pazarlık yapmak üzere kullandığı sinyal mekanizması. RFC 8866 tarafından yönetilir.

SDP yanıtı

SDP teklifine verilen yanıt. Yanıt, uzak eşleşirden alınan tüm akışları reddeder veya kabul eder. Ayrıca, teklif veren eşe geri aktarmayı planladığı akışlar için pazarlık yapar. SDP yanıtının, ilk tekliften sinyallenmiş akışlar ekleyemeyebileceğini unutmayın. Bir teklif eden eş, uzaktaki eşinden en fazla üç ses akışı kabul ettiğini bildirirse bu uzak eş, aktarım için dört ses akışı sinyali gönderemez.

SDP teklifi

Teklif-yanıt eşler arası pazarlık akışında ilk SDP. Teklif, başlatan eş tarafından oluşturulur ve eşler arası oturumun şartlarını belirler. Teklif her zaman Meet Media API istemcisi tarafından oluşturulur ve Meet sunucularına gönderilir.

Örneğin, bir teklifte teklif verenin gönderdiği (veya alabileceği) ses veya video akışlarının sayısı ve veri kanallarının açılıp açılmayacağı belirtilebilir.

Senkronizasyon Kaynağı (SSRC)

SSRC, bir RTP (Gerçek Zamanlı İletim Protokolü) oturumunda medya akışının tek bir kaynağını benzersiz şekilde tanımlayan 32 bitlik bir tanımlayıcıdır. WebRTC'de SSRC'ler, farklı katılımcılardan gelen farklı medya akışlarını veya hatta aynı katılımcının farklı parçalarını (farklı kameralar gibi) ayırt etmek için kullanılır.

RtpTransceiver

RFC 8829 bölümünde ayrıntılı olarak açıklandığı gibi, alıcı/verici, eşler arası oturumdaki RTP akışları etrafında bir soyutlamadır.

Tek bir alıcı/verici, SDP'de tek bir medya açıklamasıyla eşlenir ve açıklanır. Alıcı/verici, bir RtpSender ve bir RtpReceiver'ten oluşur.

RTP iki yönlü olduğundan her eş, aynı RTP bağlantısı için kendi alıcı/verici örneğine sahiptir. Yerel eş için belirli bir alıcı/vericinin RtpSender değeri, uzak eşteki belirli bir alıcı/vericinin RtpReceiver değeriyle eşlenir. Bunun tam tersi de geçerlidir. Uzak eşlemenin aynı alıcı/vericisinin RtpSender, yerel eşlemenin RtpReceiver ile eşlenir.

Her medya açıklamasının kendi özel alıcı-verici cihazı vardır. Bu nedenle, birden fazla RTP yayını içeren bir eşler arası oturumda, her eş için birden fazla RtpSenders ve RtpReceiver içeren birden fazla alıcı/verici bulunur.

Sanal Medya Akışları

Sanal medya akışları, WebRTC konferanslarında bir seçici yönlendirme birimi (SFU) tarafından oluşturulan birleştirilmiş medya akışlarıdır. SFU, her katılımcının diğer herkese ayrı ayrı akış göndermesi yerine, seçili katılımcı akışlarını daha az sayıda giden sanal akışta birleştirir. Bu sayede bağlantı topolojisi basitleştirilir ve katılımcılar üzerindeki yük azaltılır. Böylece ölçeklenebilir konferanslar düzenlenebilir. Her sanal yayın, SFU tarafından dinamik olarak yönetilen birden fazla katılımcının medyasını içerebilir.