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

Side by Side Diff: webrtc/api/webrtcsdp.cc

Issue 2625003003: Replace ASSERT(false) by RTC_NOTREACHED(). (Closed)
Patch Set: Created 3 years, 11 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 | « webrtc/api/test/fakeaudiocapturemodule.cc ('k') | webrtc/api/webrtcsdp_unittest.cc » ('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 2011 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2011 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #include "webrtc/api/webrtcsdp.h" 11 #include "webrtc/api/webrtcsdp.h"
12 12
13 #include <ctype.h> 13 #include <ctype.h>
14 #include <limits.h> 14 #include <limits.h>
15 #include <stdio.h> 15 #include <stdio.h>
16 16
17 #include <algorithm> 17 #include <algorithm>
18 #include <memory> 18 #include <memory>
19 #include <string> 19 #include <string>
20 #include <unordered_map> 20 #include <unordered_map>
21 #include <vector> 21 #include <vector>
22 22
23 #include "webrtc/api/jsepicecandidate.h" 23 #include "webrtc/api/jsepicecandidate.h"
24 #include "webrtc/api/jsepsessiondescription.h" 24 #include "webrtc/api/jsepsessiondescription.h"
25 #include "webrtc/base/arraysize.h" 25 #include "webrtc/base/arraysize.h"
26 #include "webrtc/base/checks.h"
26 #include "webrtc/base/common.h" 27 #include "webrtc/base/common.h"
27 #include "webrtc/base/logging.h" 28 #include "webrtc/base/logging.h"
28 #include "webrtc/base/messagedigest.h" 29 #include "webrtc/base/messagedigest.h"
29 #include "webrtc/base/stringutils.h" 30 #include "webrtc/base/stringutils.h"
30 // for RtpExtension 31 // for RtpExtension
31 #include "webrtc/config.h" 32 #include "webrtc/config.h"
32 #include "webrtc/media/base/codec.h" 33 #include "webrtc/media/base/codec.h"
33 #include "webrtc/media/base/cryptoparams.h" 34 #include "webrtc/media/base/cryptoparams.h"
34 #include "webrtc/media/base/mediaconstants.h" 35 #include "webrtc/media/base/mediaconstants.h"
35 #include "webrtc/media/base/rtputils.h" 36 #include "webrtc/media/base/rtputils.h"
(...skipping 621 matching lines...) Expand 10 before | Expand all | Expand 10 after
657 658
658 static int GetCandidatePreferenceFromType(const std::string& type) { 659 static int GetCandidatePreferenceFromType(const std::string& type) {
659 int preference = kPreferenceUnknown; 660 int preference = kPreferenceUnknown;
660 if (type == cricket::LOCAL_PORT_TYPE) { 661 if (type == cricket::LOCAL_PORT_TYPE) {
661 preference = kPreferenceHost; 662 preference = kPreferenceHost;
662 } else if (type == cricket::STUN_PORT_TYPE) { 663 } else if (type == cricket::STUN_PORT_TYPE) {
663 preference = kPreferenceReflexive; 664 preference = kPreferenceReflexive;
664 } else if (type == cricket::RELAY_PORT_TYPE) { 665 } else if (type == cricket::RELAY_PORT_TYPE) {
665 preference = kPreferenceRelayed; 666 preference = kPreferenceRelayed;
666 } else { 667 } else {
667 ASSERT(false); 668 RTC_NOTREACHED();
668 } 669 }
669 return preference; 670 return preference;
670 } 671 }
671 672
672 // Get ip and port of the default destination from the |candidates| with the 673 // Get ip and port of the default destination from the |candidates| with the
673 // given value of |component_id|. The default candidate should be the one most 674 // given value of |component_id|. The default candidate should be the one most
674 // likely to work, typically IPv4 relay. 675 // likely to work, typically IPv4 relay.
675 // RFC 5245 676 // RFC 5245
676 // The value of |component_id| currently supported are 1 (RTP) and 2 (RTCP). 677 // The value of |component_id| currently supported are 1 (RTP) and 2 (RTCP).
677 // TODO: Decide the default destination in webrtcsession and 678 // TODO: Decide the default destination in webrtcsession and
(...skipping 556 matching lines...) Expand 10 before | Expand all | Expand 10 after
1234 // m=<media> <port> <proto> <fmt> 1235 // m=<media> <port> <proto> <fmt>
1235 // fmt is a list of payload type numbers that MAY be used in the session. 1236 // fmt is a list of payload type numbers that MAY be used in the session.
1236 const char* type = NULL; 1237 const char* type = NULL;
1237 if (media_type == cricket::MEDIA_TYPE_AUDIO) 1238 if (media_type == cricket::MEDIA_TYPE_AUDIO)
1238 type = kMediaTypeAudio; 1239 type = kMediaTypeAudio;
1239 else if (media_type == cricket::MEDIA_TYPE_VIDEO) 1240 else if (media_type == cricket::MEDIA_TYPE_VIDEO)
1240 type = kMediaTypeVideo; 1241 type = kMediaTypeVideo;
1241 else if (media_type == cricket::MEDIA_TYPE_DATA) 1242 else if (media_type == cricket::MEDIA_TYPE_DATA)
1242 type = kMediaTypeData; 1243 type = kMediaTypeData;
1243 else 1244 else
1244 ASSERT(false); 1245 RTC_NOTREACHED();
1245 1246
1246 std::string fmt; 1247 std::string fmt;
1247 if (media_type == cricket::MEDIA_TYPE_VIDEO) { 1248 if (media_type == cricket::MEDIA_TYPE_VIDEO) {
1248 const VideoContentDescription* video_desc = 1249 const VideoContentDescription* video_desc =
1249 static_cast<const VideoContentDescription*>(media_desc); 1250 static_cast<const VideoContentDescription*>(media_desc);
1250 for (std::vector<cricket::VideoCodec>::const_iterator it = 1251 for (std::vector<cricket::VideoCodec>::const_iterator it =
1251 video_desc->codecs().begin(); 1252 video_desc->codecs().begin();
1252 it != video_desc->codecs().end(); ++it) { 1253 it != video_desc->codecs().end(); ++it) {
1253 fmt.append(" "); 1254 fmt.append(" ");
1254 fmt.append(rtc::ToString<int>(it->id)); 1255 fmt.append(rtc::ToString<int>(it->id));
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after
1823 if (it->type() == cricket::LOCAL_PORT_TYPE) { 1824 if (it->type() == cricket::LOCAL_PORT_TYPE) {
1824 type = kCandidateHost; 1825 type = kCandidateHost;
1825 } else if (it->type() == cricket::STUN_PORT_TYPE) { 1826 } else if (it->type() == cricket::STUN_PORT_TYPE) {
1826 type = kCandidateSrflx; 1827 type = kCandidateSrflx;
1827 } else if (it->type() == cricket::RELAY_PORT_TYPE) { 1828 } else if (it->type() == cricket::RELAY_PORT_TYPE) {
1828 type = kCandidateRelay; 1829 type = kCandidateRelay;
1829 } else if (it->type() == cricket::PRFLX_PORT_TYPE) { 1830 } else if (it->type() == cricket::PRFLX_PORT_TYPE) {
1830 type = kCandidatePrflx; 1831 type = kCandidatePrflx;
1831 // Peer reflexive candidate may be signaled for being removed. 1832 // Peer reflexive candidate may be signaled for being removed.
1832 } else { 1833 } else {
1833 ASSERT(false); 1834 RTC_NOTREACHED();
1834 // Never write out candidates if we don't know the type. 1835 // Never write out candidates if we don't know the type.
1835 continue; 1836 continue;
1836 } 1837 }
1837 1838
1838 InitAttrLine(kAttributeCandidate, &os); 1839 InitAttrLine(kAttributeCandidate, &os);
1839 os << kSdpDelimiterColon 1840 os << kSdpDelimiterColon
1840 << it->foundation() << " " 1841 << it->foundation() << " "
1841 << it->component() << " " 1842 << it->component() << " "
1842 << it->protocol() << " " 1843 << it->protocol() << " "
1843 << it->priority() << " " 1844 << it->priority() << " "
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after
2242 case cricket::MEDIA_TYPE_AUDIO: 2243 case cricket::MEDIA_TYPE_AUDIO:
2243 *content_name = cricket::CN_AUDIO; 2244 *content_name = cricket::CN_AUDIO;
2244 break; 2245 break;
2245 case cricket::MEDIA_TYPE_VIDEO: 2246 case cricket::MEDIA_TYPE_VIDEO:
2246 *content_name = cricket::CN_VIDEO; 2247 *content_name = cricket::CN_VIDEO;
2247 break; 2248 break;
2248 case cricket::MEDIA_TYPE_DATA: 2249 case cricket::MEDIA_TYPE_DATA:
2249 *content_name = cricket::CN_DATA; 2250 *content_name = cricket::CN_DATA;
2250 break; 2251 break;
2251 default: 2252 default:
2252 ASSERT(false); 2253 RTC_NOTREACHED();
2253 break; 2254 break;
2254 } 2255 }
2255 if (!ParseContent(message, media_type, mline_index, protocol, payload_types, 2256 if (!ParseContent(message, media_type, mline_index, protocol, payload_types,
2256 pos, content_name, bundle_only, media_desc, transport, 2257 pos, content_name, bundle_only, media_desc, transport,
2257 candidates, error)) { 2258 candidates, error)) {
2258 delete media_desc; 2259 delete media_desc;
2259 return NULL; 2260 return NULL;
2260 } 2261 }
2261 // Sort the codecs according to the m-line fmt list. 2262 // Sort the codecs according to the m-line fmt list.
2262 std::unordered_map<int, int> payload_type_preferences; 2263 std::unordered_map<int, int> payload_type_preferences;
(...skipping 961 matching lines...) Expand 10 before | Expand all | Expand 10 after
3224 UpdateCodec<AudioContentDescription, cricket::AudioCodec>( 3225 UpdateCodec<AudioContentDescription, cricket::AudioCodec>(
3225 media_desc, payload_type, feedback_param); 3226 media_desc, payload_type, feedback_param);
3226 } else if (media_type == cricket::MEDIA_TYPE_VIDEO) { 3227 } else if (media_type == cricket::MEDIA_TYPE_VIDEO) {
3227 UpdateCodec<VideoContentDescription, cricket::VideoCodec>( 3228 UpdateCodec<VideoContentDescription, cricket::VideoCodec>(
3228 media_desc, payload_type, feedback_param); 3229 media_desc, payload_type, feedback_param);
3229 } 3230 }
3230 return true; 3231 return true;
3231 } 3232 }
3232 3233
3233 } // namespace webrtc 3234 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/api/test/fakeaudiocapturemodule.cc ('k') | webrtc/api/webrtcsdp_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698