2 Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele
3 Warum?
4 Gemeinsamkeiten bisheriger Lösungen 1.Nicht ins Spiel integriert 2. Serverbasiert 3. Kanal-basiert
5 Nicht ins Spiel integriert Audio- server Spieler 1 Spieler 3 Spieler 4 Spieler 2 Spiele- server Sprache ist losgelöst vom Spiel Spieledaten Audiodaten
6 SpieleweltReale Welt Serverbasierte Audiokommunikation S S Hohe Kosten für Anbieter Hohe Delays weit entfernte Spieler (z.B. #4)
7 Kanal-basiert : Modell Informations- quelle TransmitterKanalReceiver Ziel Störung
8
9 Problem: Viele Teilnehmer aber nur 1 Kanal
10 1-Kanal-Modell Informations- quelle TransmitterReceiver Ziel Informations- quelle TransmitterKanalReceiver Ziel Informations- quelle TransmitterReceiver Ziel Störung
11 1. Sprache losgelöst vom Spiel 2. Hohe Kosten und Delay 3. Fehlende Kontrolle Resultierende Probleme
12 1. Sprache ins Spiel integrieren 2. Kosten und Delay senken 3. Kontrolle verbessern 3 Ziele
13 Peer-to-Peer – Die Lösung für alles?
14 1. Kosten senken
15 Reale Welt Peer-to-Peer Spielewelt Keine Kosten für Anbieter Direkte Wege
16 2. Kontrolle verbessern
17 Peer-to-Peer: direkte Kanäle
18 N-Kanal-Modell Informations- quelle TransmitterReceiver Ziel Informations- quelle TransmitterKanalReceiver Ziel Informations- quelle TransmitterReceiver Ziel Störung Kanal
19 3. Integration ins Spiel
20
21 Neue Probleme 1.Wie kontrolliert man eine P2P-Audio- Konferenz? 2.Wie nutzt man die geringe Bandbreite der Clients effizient?
Wie kontrolliert man eine P2P-Audio-Konferenz?
23 SIP
24 Session Initiation Protocol Unterschied zwischen Signalisierung und Audiostrom Signalisierung / Audio ZentralDezentral Zentral Dezentral Serverbasierte Lösungen Hybrid HybirdKomplett dezentrale Lösungen (z.B. Skype)
25 Hybrides dezentrales Audiomixing Mixer Client Registrar Konf Signalisierung Audiostrom
Wie nutzt man die geringe Bandbreite der Clients effizient?
27 Intuitive Lösung: Metaphern der Übertragung von Sprache
28 Walkie Talkies = 1-Kanal-Modell
29 Full-Mesh Bandbreite Knoten 1 Spielewelt
30 % Sprache per Luft = N-Kanal-Modell
31 Hörreichweite Area of Interest bei Sprache Hörreichweite definiert wann eine Verbindung aufgebaut werden muss Beschränkt die Anzahl der Verbindungen 1
32 Partialmesh Bandbreite Knoten Spielewelt
33 Proxemik
34 Proxemik-Zonen 1m 3m 10m Persönliche Zone Soziale Zone Öffentliche Zone
35 Schall in der Luft 1m3m Persönliche ZoneSoziale ZoneÖffentliche Zone Lautstärke Entfernung 100% 0%
36 Schall in der Luft 1m3m Persönliche ZoneSoziale ZoneÖffentliche Zone Lautstärke Entfernung 100% 0%
37 Öffentliche Zone Aufbau der logischen SIP Verbindung Kein Austausch von Audioinformationen Techniken: – Silence-Suppression mit RTP – SIP-HOLD 5
38 Soziale Zone Anpassung der Lautstärke Metapher der Luftübertragung Viele Spieler, mittlere Sprachqualität (8 KBit / s) 5
39 Persönliche Zone Keine Anpassung der Lautstärke Wenig Spieler, hohe Audioqualität (16 Kbit / s) 5
40 Partialmesh mit 3 Zonen Bandbreite Knoten Spielewelt Bandbreite Knoten 4
41 Implementierung
42 Architektur PjSIP Irrlicht OpenSer
43 Mixing Konzept Walkie-TalkieLuftübertragung
44 Konferenz Brücke Slot1 Slot2 Slot3 Slot4 Slot3 Mic
45 Silence Suppression Proxemik Logik Soziale Zone Private Zone Lautstärke anpassen 16 KBit Codec 8 KBit Codec Konferenz verlassen Sip Anruf Öffentliche Zone Konferenz betreten Sip Anruf beenden
46 Messung Proxemik-Zonen
47
48 Fragen?
49 Vielen Dank für Ihre Aufmerksamkeit
50 Zusätzliche Folien
51 Ausblick P2PSIP (DHT) 3D-Positionierung (HRTF) Variable Bitrate (Speex VBR) Supernodes Evaluierung im tatsächlichen Spiel
52 SIP im Protokollstapel
53 SIP Signalisierung
54 Messung SIP als Netzwerkschicht
55 SIP als Netzwerkschicht
56 Partialmesh Worstcase Bandbreite Knoten Spielewelt
57 PjSIP
58 Ventrillo Administration