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

Side by Side Diff: third_party/WebKit/Source/modules/mediastream/UserMediaRequest.cpp

Issue 1641653002: Adding counters for the types of Media Constraints. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 10 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Ericsson AB. All rights reserved. 2 * Copyright (C) 2011 Ericsson AB. All rights reserved.
3 * Copyright (C) 2012 Google Inc. All rights reserved. 3 * Copyright (C) 2012 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 30 matching lines...) Expand all
41 #include "modules/mediastream/MediaConstraintsImpl.h" 41 #include "modules/mediastream/MediaConstraintsImpl.h"
42 #include "modules/mediastream/MediaStream.h" 42 #include "modules/mediastream/MediaStream.h"
43 #include "modules/mediastream/MediaStreamConstraints.h" 43 #include "modules/mediastream/MediaStreamConstraints.h"
44 #include "modules/mediastream/MediaTrackConstraintSet.h" 44 #include "modules/mediastream/MediaTrackConstraintSet.h"
45 #include "modules/mediastream/UserMediaController.h" 45 #include "modules/mediastream/UserMediaController.h"
46 #include "platform/mediastream/MediaStreamCenter.h" 46 #include "platform/mediastream/MediaStreamCenter.h"
47 #include "platform/mediastream/MediaStreamDescriptor.h" 47 #include "platform/mediastream/MediaStreamDescriptor.h"
48 48
49 namespace blink { 49 namespace blink {
50 50
51 static WebMediaConstraints parseOptions(const BooleanOrMediaTrackConstraintSet& options, MediaErrorState& errorState) 51 static WebMediaConstraints parseOptions(ExecutionContext* context, const Boolean OrMediaTrackConstraintSet& options, MediaErrorState& errorState)
52 { 52 {
53 WebMediaConstraints constraints; 53 WebMediaConstraints constraints;
54 54
55 Dictionary constraintsDictionary; 55 Dictionary constraintsDictionary;
56 if (options.isNull()) { 56 if (options.isNull()) {
57 // Do nothing. 57 // Do nothing.
58 } else if (options.isMediaTrackConstraintSet()) { 58 } else if (options.isMediaTrackConstraintSet()) {
59 constraints = MediaConstraintsImpl::create(options.getAsMediaTrackConstr aintSet(), errorState); 59 constraints = MediaConstraintsImpl::create(context, options.getAsMediaTr ackConstraintSet(), errorState);
60 } else { 60 } else {
61 ASSERT(options.isBoolean()); 61 ASSERT(options.isBoolean());
62 if (options.getAsBoolean()) { 62 if (options.getAsBoolean()) {
63 constraints = MediaConstraintsImpl::create(); 63 constraints = MediaConstraintsImpl::create();
64 } 64 }
65 } 65 }
66 66
67 return constraints; 67 return constraints;
68 } 68 }
69 69
70 UserMediaRequest* UserMediaRequest::create(ExecutionContext* context, UserMediaC ontroller* controller, const MediaStreamConstraints& options, NavigatorUserMedia SuccessCallback* successCallback, NavigatorUserMediaErrorCallback* errorCallback , MediaErrorState& errorState) 70 UserMediaRequest* UserMediaRequest::create(ExecutionContext* context, UserMediaC ontroller* controller, const MediaStreamConstraints& options, NavigatorUserMedia SuccessCallback* successCallback, NavigatorUserMediaErrorCallback* errorCallback , MediaErrorState& errorState)
71 { 71 {
72 WebMediaConstraints audio = parseOptions(options.audio(), errorState); 72 WebMediaConstraints audio = parseOptions(context, options.audio(), errorStat e);
73 if (errorState.hadException()) 73 if (errorState.hadException())
74 return nullptr; 74 return nullptr;
75 75
76 WebMediaConstraints video = parseOptions(options.video(), errorState); 76 WebMediaConstraints video = parseOptions(context, options.video(), errorStat e);
77 if (errorState.hadException()) 77 if (errorState.hadException())
78 return nullptr; 78 return nullptr;
79 79
80 if (audio.isNull() && video.isNull()) { 80 if (audio.isNull() && video.isNull()) {
81 errorState.throwDOMException(SyntaxError, "At least one of audio and vid eo must be requested"); 81 errorState.throwDOMException(SyntaxError, "At least one of audio and vid eo must be requested");
82 return nullptr; 82 return nullptr;
83 } 83 }
84 84
85 return new UserMediaRequest(context, controller, audio, video, successCallba ck, errorCallback); 85 return new UserMediaRequest(context, controller, audio, video, successCallba ck, errorCallback);
86 } 86 }
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
208 208
209 DEFINE_TRACE(UserMediaRequest) 209 DEFINE_TRACE(UserMediaRequest)
210 { 210 {
211 visitor->trace(m_controller); 211 visitor->trace(m_controller);
212 visitor->trace(m_successCallback); 212 visitor->trace(m_successCallback);
213 visitor->trace(m_errorCallback); 213 visitor->trace(m_errorCallback);
214 ContextLifecycleObserver::trace(visitor); 214 ContextLifecycleObserver::trace(visitor);
215 } 215 }
216 216
217 } // namespace blink 217 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl ('k') | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698