Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(61)

Side by Side Diff: chrome/test/data/webrtc/peerconnection.js

Issue 2985263002: Reland of RTCVideoEncoder: Report H264 profile information to WebRTC (Closed)
Patch Set: Add default argument to SetDefaultVideoCodec Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/test/data/webrtc/munge_sdp.js ('k') | content/renderer/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /** 1 /**
2 * Copyright 2014 The Chromium Authors. All rights reserved. 2 * Copyright 2014 The Chromium Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be 3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file. 4 * found in the LICENSE file.
5 */ 5 */
6 6
7 /** 7 /**
8 * The one and only peer connection in this page. 8 * The one and only peer connection in this page.
9 * @private 9 * @private
10 */ 10 */
(...skipping 23 matching lines...) Expand all
34 */ 34 */
35 var gDefaultAudioCodec = null; 35 var gDefaultAudioCodec = null;
36 36
37 /** 37 /**
38 * The default video codec that should be used when creating an offer. 38 * The default video codec that should be used when creating an offer.
39 * @private 39 * @private
40 */ 40 */
41 var gDefaultVideoCodec = null; 41 var gDefaultVideoCodec = null;
42 42
43 /** 43 /**
44 * Flag to indicate if HW or SW video codec is preferred.
45 * @private
46 */
47 var gDefaultPreferHwVideoCodec = null;
48
49 /**
44 * Flag to indicate if Opus Dtx should be enabled. 50 * Flag to indicate if Opus Dtx should be enabled.
45 * @private 51 * @private
46 */ 52 */
47 var gOpusDtx = false; 53 var gOpusDtx = false;
48 54
49 /** @private */ 55 /** @private */
50 var gNegotiationNeededCount = 0; 56 var gNegotiationNeededCount = 0;
51 57
52 // Public interface to tests. These are expected to be called with 58 // Public interface to tests. These are expected to be called with
53 // ExecuteJavascript invocations from the browser tests and will return answers 59 // ExecuteJavascript invocations from the browser tests and will return answers
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 returnToTest('ok'); 121 returnToTest('ok');
116 } 122 }
117 123
118 /** 124 /**
119 * Sets the default video codec to be used when creating an offer and returns 125 * Sets the default video codec to be used when creating an offer and returns
120 * "ok" to test. 126 * "ok" to test.
121 * @param {string} videoCodec promotes the specified codec to be the default 127 * @param {string} videoCodec promotes the specified codec to be the default
122 * video codec, e.g. the first one in the list on the 'm=video' SDP offer 128 * video codec, e.g. the first one in the list on the 'm=video' SDP offer
123 * line. |videoCodec| is the case-sensitive codec name, e.g. 'VP8' or 129 * line. |videoCodec| is the case-sensitive codec name, e.g. 'VP8' or
124 * 'H264'. 130 * 'H264'.
131 * @param {bool} preferHwVideoCodec specifies what codec to use from the
132 * 'm=video' line when there are multiple codecs with the name |videoCodec|.
133 * If true, it will return the last codec with that name, and if false, it
134 * will return the first codec with that name.
125 */ 135 */
126 function setDefaultVideoCodec(videoCodec) { 136 function setDefaultVideoCodec(videoCodec, preferHwVideoCodec) {
127 gDefaultVideoCodec = videoCodec; 137 gDefaultVideoCodec = videoCodec;
138 gDefaultPreferHwVideoCodec = preferHwVideoCodec;
128 returnToTest('ok'); 139 returnToTest('ok');
129 } 140 }
130 141
131 /** 142 /**
132 * Creates a data channel with the specified label. 143 * Creates a data channel with the specified label.
133 * Returns 'ok-created' to test. 144 * Returns 'ok-created' to test.
134 */ 145 */
135 function createDataChannel(label) { 146 function createDataChannel(label) {
136 peerConnection_().createDataChannel(label); 147 peerConnection_().createDataChannel(label);
137 returnToTest('ok-created'); 148 returnToTest('ok-created');
(...skipping 11 matching lines...) Expand all
149 function(localOffer) { 160 function(localOffer) {
150 success('createOffer'); 161 success('createOffer');
151 162
152 setLocalDescription(peerConnection, localOffer); 163 setLocalDescription(peerConnection, localOffer);
153 if (gDefaultAudioCodec !== null) { 164 if (gDefaultAudioCodec !== null) {
154 localOffer.sdp = setSdpDefaultAudioCodec(localOffer.sdp, 165 localOffer.sdp = setSdpDefaultAudioCodec(localOffer.sdp,
155 gDefaultAudioCodec); 166 gDefaultAudioCodec);
156 } 167 }
157 if (gDefaultVideoCodec !== null) { 168 if (gDefaultVideoCodec !== null) {
158 localOffer.sdp = setSdpDefaultVideoCodec(localOffer.sdp, 169 localOffer.sdp = setSdpDefaultVideoCodec(localOffer.sdp,
159 gDefaultVideoCodec); 170 gDefaultVideoCodec,
171 gDefaultPreferHwVideoCodec);
160 } 172 }
161 if (gOpusDtx) { 173 if (gOpusDtx) {
162 localOffer.sdp = setOpusDtxEnabled(localOffer.sdp); 174 localOffer.sdp = setOpusDtxEnabled(localOffer.sdp);
163 } 175 }
164 returnToTest('ok-' + JSON.stringify(localOffer)); 176 returnToTest('ok-' + JSON.stringify(localOffer));
165 }, 177 },
166 function(error) { failure('createOffer', error); }, 178 function(error) { failure('createOffer', error); },
167 constraints); 179 constraints);
168 } 180 }
169 181
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after
540 function parseJson_(json) { 552 function parseJson_(json) {
541 // Escape since the \r\n in the SDP tend to get unescaped. 553 // Escape since the \r\n in the SDP tend to get unescaped.
542 jsonWithEscapedLineBreaks = json.replace(/\r\n/g, '\\r\\n'); 554 jsonWithEscapedLineBreaks = json.replace(/\r\n/g, '\\r\\n');
543 try { 555 try {
544 return JSON.parse(jsonWithEscapedLineBreaks); 556 return JSON.parse(jsonWithEscapedLineBreaks);
545 } catch (exception) { 557 } catch (exception) {
546 failTest('Failed to parse JSON: ' + jsonWithEscapedLineBreaks + ', got ' + 558 failTest('Failed to parse JSON: ' + jsonWithEscapedLineBreaks + ', got ' +
547 exception); 559 exception);
548 } 560 }
549 } 561 }
OLDNEW
« no previous file with comments | « chrome/test/data/webrtc/munge_sdp.js ('k') | content/renderer/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698