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

Side by Side Diff: media/capture/video/video_capture_device.h

Issue 1815983003: Remove deprecated QTKit Video Capture Support (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased Created 4 years, 8 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 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // VideoCaptureDevice is the abstract base class for realizing video capture 5 // VideoCaptureDevice is the abstract base class for realizing video capture
6 // device support in Chromium. It provides the interface for OS dependent 6 // device support in Chromium. It provides the interface for OS dependent
7 // implementations. 7 // implementations.
8 // The class is created and functions are invoked on a thread owned by 8 // The class is created and functions are invoked on a thread owned by
9 // VideoCaptureManager. Capturing is done on other threads, depending on the OS 9 // VideoCaptureManager. Capturing is done on other threads, depending on the OS
10 // specific implementation. 10 // specific implementation.
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 // Linux/CrOS targets Capture Api type: it can only be set on construction. 55 // Linux/CrOS targets Capture Api type: it can only be set on construction.
56 enum CaptureApiType { 56 enum CaptureApiType {
57 V4L2_SINGLE_PLANE, 57 V4L2_SINGLE_PLANE,
58 API_TYPE_UNKNOWN 58 API_TYPE_UNKNOWN
59 }; 59 };
60 #elif defined(OS_WIN) 60 #elif defined(OS_WIN)
61 // Windows targets Capture Api type: it can only be set on construction. 61 // Windows targets Capture Api type: it can only be set on construction.
62 enum CaptureApiType { MEDIA_FOUNDATION, DIRECT_SHOW, API_TYPE_UNKNOWN }; 62 enum CaptureApiType { MEDIA_FOUNDATION, DIRECT_SHOW, API_TYPE_UNKNOWN };
63 #elif defined(OS_MACOSX) 63 #elif defined(OS_MACOSX)
64 // Mac targets Capture Api type: it can only be set on construction. 64 // Mac targets Capture Api type: it can only be set on construction.
65 enum CaptureApiType { AVFOUNDATION, QTKIT, DECKLINK, API_TYPE_UNKNOWN }; 65 enum CaptureApiType { AVFOUNDATION, DECKLINK, API_TYPE_UNKNOWN };
66 // For AVFoundation Api, identify devices that are built-in or USB. 66 // For AVFoundation Api, identify devices that are built-in or USB.
67 enum TransportType { USB_OR_BUILT_IN, OTHER_TRANSPORT }; 67 enum TransportType { USB_OR_BUILT_IN, OTHER_TRANSPORT };
68 #elif defined(OS_ANDROID) 68 #elif defined(OS_ANDROID)
69 // Android targets Capture Api type: it can only be set on construction. 69 // Android targets Capture Api type: it can only be set on construction.
70 // Automatically generated enum to interface with Java world. 70 // Automatically generated enum to interface with Java world.
71 // 71 //
72 // A Java counterpart will be generated for this enum. 72 // A Java counterpart will be generated for this enum.
73 // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.media 73 // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.media
74 enum CaptureApiType { 74 enum CaptureApiType {
75 API1, 75 API1,
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 const char* GetCaptureApiTypeString() const; 126 const char* GetCaptureApiTypeString() const;
127 #endif 127 #endif
128 #if defined(OS_WIN) 128 #if defined(OS_WIN)
129 // Certain devices need an ID different from the |unique_id_| for 129 // Certain devices need an ID different from the |unique_id_| for
130 // capabilities retrieval. 130 // capabilities retrieval.
131 const std::string& capabilities_id() const { return capabilities_id_; } 131 const std::string& capabilities_id() const { return capabilities_id_; }
132 void set_capabilities_id(const std::string& id) { capabilities_id_ = id; } 132 void set_capabilities_id(const std::string& id) { capabilities_id_ = id; }
133 #endif // if defined(OS_WIN) 133 #endif // if defined(OS_WIN)
134 #if defined(OS_MACOSX) 134 #if defined(OS_MACOSX)
135 TransportType transport_type() const { return transport_type_; } 135 TransportType transport_type() const { return transport_type_; }
136 bool is_blacklisted() const { return is_blacklisted_; }
137 void set_is_blacklisted(bool is_blacklisted) {
138 is_blacklisted_ = is_blacklisted;
139 }
140 #endif // if defined(OS_MACOSX) 136 #endif // if defined(OS_MACOSX)
141 137
142 private: 138 private:
143 std::string device_name_; 139 std::string device_name_;
144 std::string unique_id_; 140 std::string unique_id_;
145 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \ 141 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \
146 defined(OS_ANDROID) 142 defined(OS_ANDROID)
147 // This class wraps the CaptureApiType to give it a by default value if not 143 // This class wraps the CaptureApiType to give it a by default value if not
148 // initialized. 144 // initialized.
149 class CaptureApiClass { 145 class CaptureApiClass {
(...skipping 11 matching lines...) Expand all
161 }; 157 };
162 158
163 CaptureApiClass capture_api_class_; 159 CaptureApiClass capture_api_class_;
164 #endif 160 #endif
165 #if defined(OS_WIN) 161 #if defined(OS_WIN)
166 // ID used for capabilities retrieval. By default is equal to |unique_id|. 162 // ID used for capabilities retrieval. By default is equal to |unique_id|.
167 std::string capabilities_id_; 163 std::string capabilities_id_;
168 #endif 164 #endif
169 #if defined(OS_MACOSX) 165 #if defined(OS_MACOSX)
170 TransportType transport_type_; 166 TransportType transport_type_;
171 // Flag used to mark blacklisted devices for QTKit Api.
172 bool is_blacklisted_;
173 #endif 167 #endif
174 // Allow generated copy constructor and assignment. 168 // Allow generated copy constructor and assignment.
175 }; 169 };
176 170
177 // Manages a list of Name entries. 171 // Manages a list of Name entries.
178 typedef std::list<Name> Names; 172 typedef std::list<Name> Names;
179 173
180 // Interface defining the methods that clients of VideoCapture must have. It 174 // Interface defining the methods that clients of VideoCapture must have. It
181 // is actually two-in-one: clients may implement OnIncomingCapturedData() or 175 // is actually two-in-one: clients may implement OnIncomingCapturedData() or
182 // ReserveOutputBuffer() + OnIncomingCapturedVideoFrame(), or all of them. 176 // ReserveOutputBuffer() + OnIncomingCapturedVideoFrame(), or all of them.
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 305
312 private: 306 private:
313 // Gets the power line frequency from the current system time zone if this is 307 // Gets the power line frequency from the current system time zone if this is
314 // defined, otherwise returns 0. 308 // defined, otherwise returns 0.
315 PowerLineFrequency GetPowerLineFrequencyForLocation() const; 309 PowerLineFrequency GetPowerLineFrequencyForLocation() const;
316 }; 310 };
317 311
318 } // namespace media 312 } // namespace media
319 313
320 #endif // MEDIA_VIDEO_CAPTURE_VIDEO_CAPTURE_DEVICE_H_ 314 #endif // MEDIA_VIDEO_CAPTURE_VIDEO_CAPTURE_DEVICE_H_
OLDNEW
« no previous file with comments | « media/capture/video/mac/video_capture_device_qtkit_mac.mm ('k') | media/capture/video/video_capture_device.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698