2 Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele

Preview:

Citation preview

2

Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele

3

Warum?

4

Gemeinsamkeiten bisheriger Lösungen

1.Nicht ins Spiel integriert2. Serverbasiert3. Kanal-basiert

5

Nicht ins Spiel integriert

Audio-server

Spieler1

Spieler3

Spieler4

Spieler2

Spiele-server

Sprache ist losgelöst vom Spiel

Spieledaten

Audiodaten

6

Spielewelt Reale Welt

Serverbasierte Audiokommunikation

S

S2

13

4

1 2

34

Hohe Kosten für AnbieterHohe Delays weit entfernte Spieler (z.B. #4)

7

Kanal-basiert : Modell

Informations-quelle

Transmitter Kanal Receiver Ziel

Störung

8

9

Problem: Viele Teilnehmer, aber nur ein Kanal

10

1-Kanal-Modell

Informations-quelle

Transmitter Receiver Ziel

Informations-quelle

Transmitter Kanal Receiver Ziel

Informations-quelle

Transmitter Receiver ZielStörung

N

ii=1

Signal

11

1. Sprache losgelöst vom Spiel 2. Hohe Kosten und Delay3. Fehlende Kontrolle

Resultierende Probleme

12

1. Kosten senken 2. Kontrolle verbessern3. Sprache ins Spiel integrieren

Drei Ziele

13

Peer-to-Peer – Die Lösung für alles?

14

1. Kosten senken

15

Reale Welt

Peer-to-Peer

2

13

4

1 2

34

Spielewelt

Keine Kosten für AnbieterDirekte Wege

16

2. Kontrolle verbessern

17

N-Kanal-Modell

Informations-quelle

Transmitter Receiver Ziel

Informations-quelle

Transmitter Kanal Receiver Ziel

Informations-quelle

Transmitter Receiver Ziel

Störung

Kanal

Kanal

18

3. Integration ins Spiel

19

20

Neue Probleme

1. Wie kontrolliert man eine P2P-Audio- Konferenz?

2. Wie nutzt man die geringe Bandbreite der Clients effizient?

21

Wie kontrolliert man eine P2P-Audio-Konferenz?

22

Session Initiation Protocol (SIP)

• Unterschied zwischen Signalisierung und Audiostrom

Signalisierung /

Audio

Zentral Dezentral

Zentral

Dezentral

Serverbasierte Lösungen

Hybrid

Hybrid Komplett dezentrale Lösungen(z.B. Skype)

23

Hybrides dezentrales Audiomixing

Mixer Mixer

Client Client

Registrar

KonferenzSignalisierun

g

Audiostrom

24

Wie nutzt man die geringe Bandbreite der

Clients effizient?

25

Intuitive Lösung:Metaphern der

Übertragung von Sprache

26

Walkie Talkies = 1-Kanal-Modell

27

Full-Mesh

1 2

3

4

5

Bandbreite Knoten 1

KBit KBit4×16 =64

s s

Spielewelt

28

%Sprache per Luft = N-Kanal-

Modell

29

Hörreichweite Area of Interest bei

Sprache

• Hörreichweite definiert wann eine Verbindung aufgebaut werden muss

• Beschränkt die Anzahl der Verbindungen

1

30

Partial-mesh

Bandbreite Knoten 1

KBit KBit1×16 =32

s s

1 2

3

4

5

Spielewelt

31

Proxemik

32

Proxemik-Zonen

1m

3m

10m

Persönliche

Zone

Soziale Zone

Öffentliche Zone

33

Schall in der Luft

1m 3m

Persönliche Zone Soziale Zone Öffentliche Zone

Lau

tstä

rke

Entfernung

100%

0%

34

Schall in der Luft

1m 3m

Persönliche Zone Soziale Zone Öffentliche Zone

Lau

tstä

rke

Entfernung

100%

0%

35

Öffentliche Zone

• Aufbau der logischen SIP Verbindung • Kein Austausch von Audioinformationen• Techniken:

– Silence-Suppression mit RTP – SIP-HOLD

5

36

Soziale Zone

• Anpassung der Lautstärke • Metapher der Luftübertragung• Viele Spieler, mittlere Sprachqualität (8

KBit / s)

5

37

Persönliche Zone

• Keine Anpassung der Lautstärke • Wenig Spieler, hohe Audioqualität (16 Kbit / s)

5

38

Partial-mesh mit drei Zonen

Bandbreite Knoten 1

KBit KBit1×16 =32

s s

1 2

3

4

5

Spielewelt

Bandbreite Knoten 4

KBit KBit1×8 =8

s s

39

Implementierung

40

Konferenzbrücke

1d

2dSlot1

Slot2

Slot3

Slot4

4d

3dSlot3Slot3Slot3

Mic

41

Mixing-Konzept

N

i jj=1

R(t)= V(t)

Walkie-Talkie Luftübertragung

N

i jj=1

jR(t)= V(t)d

42

Silence Suppression

Proxemik-Logik

SozialeZone

PrivateZone

Lautstärke anpassen

16 KBit Codec

8 KBit Codec

Konferenzverlassen

Sip Anruf

ÖffentlicheZone

Konferenzbetreten

Sip Anrufbeenden

43

Messung Proxemik-Zonen

0 20 40 60 80 100 1200

2

4

6

8

10

12

14

16

B - -> A

A - -> B

G e sa m t

Ze it in Se kund e n

Ba

nd

bre

ite in

Kb

yte

/s

Priva te Zo ne So zia le Zo ne

SIP A nruf

Ö ffe ntlic he Zo ne

44

45

Vielen Dank für Ihre

Aufmerksamkeit

Fragen?

46

47

Zusätzliche Folien

48

Ausblick

• P2PSIP (DHT)• 3D-Positionierung (HRTF)• Variable Bitrate (Speex VBR)• Supernodes• Evaluierung im tatsächlichen

Spiel

49

SIP im Protokollstapel

V o iP A nwe nd ung

Sig na lisie rung Sp ra c he

SDP SIP RTP

RTC P

IP

Üb e rm ittlung sne tze

UDPTC P

50

SIP SignalisierungUse r

A g e nt AUse r

A g e nt B

(1) IN V ITE

(2) 100 TRYIN G

(3) 180 RIN G IN G

(4) 200 O K

(5) A C K

(6) BYE

(7) 200 O K

RTP / RTC P

51

Messung SIP als Netzwerkschicht

0 1000 2000 3000 4000 5000 6000 7000

0

2

4

6

8

10

12

14

16

18

20

Pa ke t-Num m e r

Rou

nd

-Trip

-Tim

e (

ms)

RTT

52

SIP als Netzwerkschicht

Re g istra rPro xy

Prä se nzd ie nst Lo ka tio nsd ie nstInsta nt-M e ssa g ing -Die nst

Prä se nzd ie nst Lo ka tio nsd ie nstInsta nt-M e ssa g ing -Die nst

SIP

C lie nt

Pub lish

C lie nt

No tify

C lie nt

M ESSA G E

C lie nt

M ESSA G E

C lie nt

REG ISTER

Vo IP

C lie nt

53

Partial mesh worst case

Bandbreite Knoten 1

KBit KBit4×16 =64

s s1 2

3 4

Spielewelt

54

PjSIP

PJ SUA -LIB

PJ LIB

PJ M EDIA -C O DEC

PJ M EDIAPJ SIP-UTIL

PJ SIP-C O RE

PJ SIP-SIM PLE

PJ SIP-UA

55

Ventrillo Administration

Recommended