Apprtc demo: add DSCP support.

BUG=2669
TEST=Manual Test
R=juberti@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/4389004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5194 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
braveyao@webrtc.org
2013-11-29 02:38:20 +00:00
parent 03c7a35ac0
commit 54e8bfafba

View File

@ -144,7 +144,7 @@ def make_media_stream_constraints(audio, video):
logging.info('Applying media constraints: ' + str(stream_constraints))
return stream_constraints
def make_pc_constraints(compat):
def make_pc_constraints(compat, dscp):
constraints = { 'optional': [] }
# For interop with FireFox. Enable DTLS in peerConnection ctor.
if compat.lower() == 'true':
@ -153,6 +153,11 @@ def make_pc_constraints(compat):
# of compat is false for loopback mode.
else:
constraints['optional'].append({'DtlsSrtpKeyAgreement': False})
# DSCP for QoS support
if dscp.lower() == 'true':
constraints['optional'].append({'googDscp': True})
return constraints
def make_offer_constraints():
@ -377,6 +382,9 @@ class MainPage(webapp2.RequestHandler):
# Set compat to false as DTLS does not work for loopback.
compat = 'false'
# Set DSCP for QoS support in WebRTC
dscp = self.request.get('dscp')
# token_timeout for channel creation, default 30min, max 2 days, min 3min.
token_timeout = self.request.get_range('tt',
min_value = 3,
@ -428,7 +436,7 @@ class MainPage(webapp2.RequestHandler):
turn_url = turn_url + 'turn?' + 'username=' + user + '&key=4080218913'
token = create_channel(room, user, token_timeout)
pc_config = make_pc_config(stun_server, turn_server, ts_pwd)
pc_constraints = make_pc_constraints(compat)
pc_constraints = make_pc_constraints(compat, dscp)
offer_constraints = make_offer_constraints()
media_constraints = make_media_stream_constraints(audio, video)
template_values = {'error_messages': error_messages,