Index: media/video/capture/win/capability_list_win.h |
diff --git a/media/video/capture/win/capability_list_win.h b/media/video/capture/win/capability_list_win.h |
index c381b4b5d0f685a84bf34a64602e6fe6e1f012be..fd71ca994cae50e5c71efcd5008c43300107edd6 100644 |
--- a/media/video/capture/win/capability_list_win.h |
+++ b/media/video/capture/win/capability_list_win.h |
@@ -10,6 +10,7 @@ |
#define MEDIA_VIDEO_CAPTURE_WIN_CAPABILITY_LIST_WIN_H_ |
#include <list> |
+#include <utility> |
#include "base/basictypes.h" |
#include "base/threading/non_thread_safe.h" |
@@ -17,43 +18,12 @@ |
namespace media { |
-struct VideoCaptureCapabilityWin { |
- explicit VideoCaptureCapabilityWin(int index) |
- : stream_index(index), |
- frame_rate_numerator(0), |
- frame_rate_denominator(1) {} |
- int stream_index; |
- // Internally to Media Foundation Api type devices we use rational framerates |
- // so framerates can be properly represented, f.i. 29.971fps= 30000/1001. |
- int frame_rate_numerator; |
- int frame_rate_denominator; |
- VideoCaptureFormat supported_format; |
-}; |
- |
-class CapabilityList : public base::NonThreadSafe { |
- public: |
- CapabilityList(); |
- ~CapabilityList(); |
- |
- bool empty() const { return capabilities_.empty(); } |
- |
- // Appends an entry to the list. |
- void Add(const VideoCaptureCapabilityWin& capability); |
- |
- // Loops through the list of capabilities and returns an index of the best |
- // matching capability. The algorithm prioritizes height, width, frame rate |
- // and color format in that order. |
- const VideoCaptureCapabilityWin& GetBestMatchedFormat( |
- int requested_width, |
- int requested_height, |
- float requested_frame_rate) const; |
- |
- private: |
- typedef std::list<VideoCaptureCapabilityWin> Capabilities; |
- Capabilities capabilities_; |
- |
- DISALLOW_COPY_AND_ASSIGN(CapabilityList); |
-}; |
+typedef std::pair<int, VideoCaptureFormat> VideoCaptureCapabilityWin; |
+typedef std::list<VideoCaptureCapabilityWin> CapabilityList; |
+ |
+CapabilityList::const_iterator GetBestMatchedFormat( |
+ const VideoCaptureFormat& requested, |
+ const CapabilityList& capabilities); |
} // namespace media |