sgcWebRTC Aramalar ve veriler, eşler arası. İçinde tarayıcı yok.

sgcWebRTC, Delphi ve C++ Builder için WebRTC medya motorudur. Uygulamalarınıza gerçek zamanlı sesli ve görüntülü aramalar, ekran paylaşımı ve SCTP veri kanalları ekleyin; DTLS-SRTP ile şifrelenir ve herhangi bir tarayıcıdaki RTCPeerConnection ile birlikte çalışır. İşletim sisteminin kendi medya API'lerini çağıran derlenmiş Object Pascal kodudur; sürecinizde WebView ve JavaScript köprüsü yoktur.

  • Delphi
  • C++ Builder
  • Windows, Linux, macOS
  • iOS ve Android
  • STUN / TURN / ICE
  • WebView gerekmez
SİNYALLEŞME KANALINIZ WebSocket, HTTP, her şey SDP teklifi SDP yanıtı + trickle ICE adayları Delphi uygulaması TsgcRTCPeerConnection audio · Opus video · H.264 veri kanalı 'chat' süreçte WebView yok Tarayıcı veya Delphi RTCPeerConnection OnAudio OnVideoFrame OnMessage JSEP, RFC 8829 DTLS-SRTP RTP media + SCTP data STUN genel adres TURN engelde aktarım ICE Sinyalleşme sunucunuzdan geçer. Medya doğrudan eşler arasında akar.
  • 1Tüm eş bağlantısı için tek bileşen
  • 5Platform: Windows, Linux, macOS, iOS ve Android
  • 5Kodek: Opus, G.711, VP8, H.264 ve Motion JPEG
  • 100%RTP, RTCP ve SCTP paketlerinin şifreli olması
  • 0Sürecinizde tarayıcı veya WebView
Çalışırken izleyin

sgcWebRTC'yi iki dakikada görün.

Delphi'den eşler arası medya ve veri kanalları: STUN, TURN, ICE ve RTCPeerConnection, tarayıcıdan yerel uygulamaya. Sesli anlatımlı ve altyazılı. Oynat'a basana kadar hiçbir şey indirilmez.

Tek bileşen

Tüm eş bağlantısı tek bir nesnede.

sgcWebRTC palete yeni bileşen eklemez. sgcWebSockets Enterprise ile birlikte gelen aynı TsgcRTCPeerConnection üzerindeki W3C biçimli yüzeyin geri kalanını açar: sinyalleşme, bağlanabilirlik, şifreleme, veri kanalları ve medya.

Tarayıcı uyumlu sinyalleşme

CreateOffer, CreateAnswer, SetLocalDescription, SetRemoteDescription ve AddIceCandidate gerçek SDP üretir ve işler. Yeniden müzakere, ICE yeniden başlatma ve W3C perfect-negotiation glare kuralı yerleşiktir.

Bileşeni görüntüleyin →

STUN, TURN ve ICE

Trickle veya trickle olmayan ICE toplama, şu özellik üzerinden: RTCOptions.ICEServers, doğrudan yol engellendiğinde STUN'dan server-reflexive, TURN'dan relayed adaylarla.

DTLS-SRTP şifrelemesi

Aday gösterilen ICE çifti üzerinden bir DTLS el sıkışması SRTP anahtarlarını türetir ve her RTP, RTCP ve SCTP paketi ilk paketten itibaren şifrelenir. Medya için kapatılamaz; bir tarayıcının uyguladığı model de aynıdır.

Ses ve görüntü izleri

AddTrack bir Opus veya G.711 ses izi, ya da bir VP8, H.264 veya Motion JPEG görüntü izi ekler. H.264, platformun donanım kodlayıcısını kullanır: Media Foundation, VideoToolbox veya MediaCodec.

Kodek ve platform matrisi →

SCTP veri kanalları

CreateDataChannel sıralı veya sırasız, güvenilir veya kısmen güvenilir bir kanal açar (RFC 8831/8832). Send, SendBytes, OnMessage ve OnMessageBinary metin ve ikili yükleri taşır.

Uyarlanabilir bit hızı

Google Congestion Control tarzında gecikme tabanlı bir tahminleyici, görüntü kodlayıcısının hedef bit hızını yönlendirir; RTCP NACK ve PLI, RFC 4588 RTX ve RED/ULPFEC ile desteklenir.

Hızlı Başlangıç

Bir teklif ve bir veri kanalı.

Bir ICE sunucusu ayarlayın, SDP ve ICE olaylarını bağlayın, bir veri kanalı açın, ardından teklifi oluşturun. Delphi ve C++ Builder'da aynı API.

uses
  sgcP2P;
var
  oRTC: TsgcRTCPeerConnection;
begin
  oRTC := TsgcRTCPeerConnection.Create(nil);
  oRTC.RTCOptions.ICEServers.AddURL('stun:stun.l.google.com:19302');
  oRTC.OnLocalDescription := OnLocalDescriptionHandler;
  oRTC.OnICECandidate := OnICECandidateHandler;
  oRTC.OnConnectionStateChange := OnConnectionStateChangeHandler;
  oRTC.OnDataChannel := OnDataChannelHandler;
  oRTC.CreateDataChannel('chat'); // forces RTCOptions.DTLS on
  oRTC.CreateOffer; // gathers ICE candidates, builds the SDP offer
end;

procedure TForm1.OnLocalDescriptionHandler(Sender: TObject;
  const aType, aSDP: string);
begin
  // send aType + aSDP to the remote peer over your own signaling channel
end;

procedure TForm1.OnDataChannelHandler(Sender: TObject;
  aChannel: TsgcRTCDataChannel);
begin
  aChannel.OnMessage := OnChannelMessageHandler;
  aChannel.Send('hello');
end;
// includes: sgcP2P.hpp
TsgcRTCPeerConnection *oRTC = new TsgcRTCPeerConnection(NULL);
oRTC->RTCOptions->ICEServers->AddURL("stun:stun.l.google.com:19302");
oRTC->OnLocalDescription = OnLocalDescriptionHandler;
oRTC->OnICECandidate = OnICECandidateHandler;
oRTC->OnConnectionStateChange = OnConnectionStateChangeHandler;
oRTC->OnDataChannel = OnDataChannelHandler;
oRTC->CreateDataChannel("chat"); // forces RTCOptions->DTLS on
oRTC->CreateOffer(); // gathers ICE candidates, builds the SDP offer

void __fastcall TForm1::OnLocalDescriptionHandler(TObject *Sender,
  const String aType, const String aSDP)
{
  // send aType + aSDP to the remote peer over your own signaling channel
}

void __fastcall TForm1::OnDataChannelHandler(TObject *Sender,
  TsgcRTCDataChannel *aChannel)
{
  aChannel->OnMessage = OnChannelMessageHandler;
  aChannel->Send("hello");
}
  1. Bir STUN veya TURN sunucusuna yönlendirinICE sunucularını RTCOptions.ICEServers içine ekleyin. Adaylar bunlara karşı toplanır, trickle ile veya hepsi birden.
  2. SDP'yi kendi kanalınızdan taşıyınOnLocalDescription teklifi veya yanıtı, OnICECandidate her adayı size verir. Bunları, bir tarayıcı uygulamasının yaptığı gibi, herhangi bir sinyalleşme sunucusu üzerinden gönderin.
  3. Eşler arası konuşunDTLS el sıkışması tamamlanınca veri kanalları açılır, ses ve görüntü izleri şifreli olarak doğrudan eşler arasında akar.

Bu, değişimin yalnızca bir tarafıdır. Diğer taraf, sinyalleşme aktarıcısı ve üstündeki medya izleri görev kılavuzundadır.

İki Delphi uygulaması, eşler arası

Nerede işe yarar

Tarayıcı gömmeden WebRTC.

Delphi'de WebRTC'ye yönelik diğer yaklaşımlar tam bir tarayıcı motoru gömer ve JavaScript yığınını Pascal'dan yönetir. sgcWebRTC, işletim sisteminin medya API'lerini doğrudan çağırır; bu da ikili dosyayı küçük tutar ve aynı bileşenin hiç tarayıcı kurulu olmayan yerlerde de çalışmasını sağlar.

Delphi uygulamasından tarayıcıya

Standart SDP ve JSEP durum makinesi (RFC 8829) sayesinde yerel bir Delphi veya C++ Builder istemcisi bir web sayfasındaki RTCPeerConnection'ı arayabilir, tersi de mümkündür.

Delphi uygulamasından Delphi uygulamasına

İki yerel uygulama ses, görüntü ve veri kanallarını doğrudan değiş tokuş eder; sunucunuzdan yalnızca sinyalleşme geçer.

Görev kılavuzunu okuyun →

Mobil, başsız ve kiosk

Gömülü Chromium ikili dosyası olmadığı için aynı bileşen Android ve iOS'ta, ayrıca tarayıcı kurulu olmayan başsız hizmetlerde ve kiosk cihazlarında çalışır.

Ekran paylaşımı ve uzaktan destek

Windows'ta masaüstünü, bir monitörü, bir pencereyi veya bir bölgeyi imleç dahil yakalayın ve yanında bir veri kanalıyla birlikte görüntü izi olarak yayınlayın.

Sesli ve görüntülü aramalar

Windows, Linux, Apple platformları ve Android üzerindeki yerel kamera ve mikrofon yakalama arka uçları izleri doğrudan besler, oluşturucu arka uçlar ise uzaktaki görüntüyü gösterir.

Düşük gecikmeli veri bağlantıları

Veri kanallarını tek başlarına sohbet, telemetri, dosya aktarımı veya oyun durumu için kullanın; güvenilirlik ve sıralama kanal bazında seçilir.

Lisanslama

sgcWebSockets Enterprise için bir eklenti.

sgcWebRTC, ICE ve TURN bağlanabilirliğiyle birlikte sgcWebSockets Enterprise'ta zaten gelen TsgcRTCPeerConnection üzerindeki medya motorunun kilidini açar. Standard veya Professional sürümlerinde kullanılamaz. Her lisans tam kaynak kodu ve bir yıllık güncelleme içerir.

sgcWebSockets Enterprise

Üzerine kurulduğu temel: STUN, TURN ve ICE istemcileri, temel TsgcRTCPeerConnection, ayrıca WebSocket, HTTP/2, MQTT ve kitaplığın geri kalanı.

€699 / geliştirici

sgcWebRTC

SDP sinyalleşmesi, DTLS-SRTP, SCTP veri kanalları, ses ve görüntü izleri, ekran yakalama ve bant genişliği tahmini. Single, Team ve Site lisansları.

€299 / geliştirici

All-Access paketi

Tüm eSeGeCe ürünleri bir yıl boyunca, Delphi ve .NET, sgcWebSockets Enterprise ve sgcWebRTC dahil, Premium Destek ile.

€1,059 / geliştirici

Deneme yükleyicisi IDE sürümü başınadır ve WebRTC bileşenlerini zaten içerir, bu yüzden ayrı bir indirme yoktur.

sgcWebRTC fiyatlarını görün

Delphi uygulamanızın arkasına gerçek bir eş bağlantısı koyun.

Ses, görüntü ve veri kanalları, uçtan uca şifreli, zaten kullandığınız dilden.

Blogdan Son Yazılar

Tüm yazıları görüntüleyin →

eSeGeCe'nin sgcWebRTC görünümünü görüyorsunuz.

Bana başka bir açı gösterin →
30 Günlük Para İade GarantisiMemnun kalmadınız mı? Satın alımdan sonraki 30 gün içinde tam para iadesi talep edin. İade politikasına bakın