WebRTC ve Görüntülü İletişim
Janto Phone, oyuncular arasında gerçek zamanlı video aktarımı sağlamak için modern WebRTC (Web Real-Time Communication) teknolojisini kullanır. Bu sistem, herhangi bir harici yayın servisine ihtiyaç duymadan, oyuncuların kendi aralarında Peer-to-Peer (P2P) bağlantı kurmasını sağlar.
Temel Özellikler
1. Görüntülü Aramalar (Video Call)
Rehber üzerinden başlatılan görüntülü aramalarda, her iki oyuncunun oyun içi kamerası (Scripted Camera) anlık olarak birbirine aktarılır.
- P2P Bağlantı: Görüntü verisi doğrudan oyuncular arasında aktığı için sunucu trafiği minimumda tutulur.
- Dinamik Kamera: Kamera açısı, zoom seviyesi ve selfie/arka kamera geçişleri gerçek zamanlı senkronize edilir.
2. Instagram Canlı Yayınları (Live Streaming)
Vinshot (Instagram) uygulaması içinden başlatılan yayınlarda, yayıncı oyuncunun ekranı WebRTC üzerinden izleyicilere ulaştırılır.
- Çoklu İzleyici Desteği: Yayıncının WebRTC stream'i, yayına katılan tüm izleyicilere dağıtılır.
- Düşük Gecikme: WebRTC teknolojisi sayesinde gecikme süresi 500ms'nin altındadır.
3. Ekran Paylaşımı (Screen Share)
Bir oyuncu kendi telefon ekranını yakındaki diğer oyunculara Mirror (yansıtma) özelliği ile paylaşabilir.
Teknik Altyapı
Sistem, yüksek performanslı bir veri transfer katmanı üzerine kuruludur:
- Görüntü İşleme: Oyun görüntüsü modern render teknikleri ile anlık olarak işlenir.
- Video Streaming: İşlenen içerik standart video stream protokollerine dönüştürülür.
- P2P Sinyalleşme: Bağlantı verileri gelişmiş bir sinyalleşme protokolü ile oyuncular arasında eşleştirilir.
- Bağlantı Kanalları: Güvenli ve stabil bağlantı için global standarda sahip bağlantı sunucuları kullanılır.
Konfigürasyon ve Ayarlar
WebRTC özelliklerini janto-phone/config/config.lua dosyasındaki Config.Features altından yönetebilirsiniz:
Config.Features = {
VideoCall = true, -- Görüntülü aramayı aç/kapat
ScreenShare = true, -- Ekran paylaşımını aç/kapat
InstagramLive = true, -- Instagram canlı yayınlarını aç/kapat
}TURN Server Gereksinimi
Eğer sunucunuzda veya oyuncularınızda bağlantı sorunları (karanlık ekran, "connecting" durumunda kalma) yaşanıyorsa, ağ kısıtlamalarını aşmak için bir TURN Server kurmanız gerekebilir. TURN server ayarları janto-ui içindeki VideoCallScreen.tsx (ve ilgili live sayfaları) üzerinden özelleştirilebilir.
Sıkça Sorulan Sorular
Ses iletimi WebRTC üzerinden mi yapılıyor?
Hayır. Ses iletimi, performansı ve oyun içi 3D ses uyumluluğunu korumak adına her zaman sunucudaki mevcut ses sistemi üzerinden gerçekleştirilir. WebRTC sadece video verisi için kullanılır. Ses ve görüntü arasındaki senkronizasyon otomatik olarak sağlanır.
Görüntü neden bazen düşük kalitede?
WebRTC, bağlantı hızına göre çözünürlüğü dinamik olarak ayarlar. Eğer oyuncuların internet hızı düşükse, sistem donmaları önlemek için görüntü kalitesini otomatik olarak düşürecektir.