| Index: media/base/video_capture_types.h
|
| diff --git a/media/base/video_capture_types.h b/media/base/video_capture_types.h
|
| deleted file mode 100644
|
| index 254083c6e2c2ea39e6c3084d1db79ae16a46bbf1..0000000000000000000000000000000000000000
|
| --- a/media/base/video_capture_types.h
|
| +++ /dev/null
|
| @@ -1,150 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef MEDIA_BASE_VIDEO_CAPTURE_TYPES_H_
|
| -#define MEDIA_BASE_VIDEO_CAPTURE_TYPES_H_
|
| -
|
| -#include <stddef.h>
|
| -
|
| -#include <vector>
|
| -
|
| -#include "build/build_config.h"
|
| -#include "media/base/media_export.h"
|
| -#include "media/base/video_types.h"
|
| -#include "ui/gfx/geometry/size.h"
|
| -
|
| -namespace media {
|
| -
|
| -// TODO(wjia): this type should be defined in a common place and
|
| -// shared with device manager.
|
| -typedef int VideoCaptureSessionId;
|
| -
|
| -// Storage type for the pixels.
|
| -// TODO(mcasas): http://crbug.com/504160 Consider making this an enum class.
|
| -// TODO(chfremer): Extend or remove this enum.
|
| -enum VideoPixelStorage {
|
| - PIXEL_STORAGE_CPU,
|
| - PIXEL_STORAGE_MAX = PIXEL_STORAGE_CPU,
|
| -};
|
| -
|
| -// Policies for capture devices that have source content that varies in size.
|
| -// It is up to the implementation how the captured content will be transformed
|
| -// (e.g., scaling and/or letterboxing) in order to produce video frames that
|
| -// strictly adheree to one of these policies.
|
| -enum ResolutionChangePolicy {
|
| - // Capture device outputs a fixed resolution all the time. The resolution of
|
| - // the first frame is the resolution for all frames.
|
| - RESOLUTION_POLICY_FIXED_RESOLUTION,
|
| -
|
| - // Capture device is allowed to output frames of varying resolutions. The
|
| - // width and height will not exceed the maximum dimensions specified. The
|
| - // aspect ratio of the frames will match the aspect ratio of the maximum
|
| - // dimensions as closely as possible.
|
| - RESOLUTION_POLICY_FIXED_ASPECT_RATIO,
|
| -
|
| - // Capture device is allowed to output frames of varying resolutions not
|
| - // exceeding the maximum dimensions specified.
|
| - RESOLUTION_POLICY_ANY_WITHIN_LIMIT,
|
| -
|
| - // Must always be equal to largest entry in the enum.
|
| - RESOLUTION_POLICY_LAST = RESOLUTION_POLICY_ANY_WITHIN_LIMIT,
|
| -};
|
| -
|
| -// Potential values of the googPowerLineFrequency optional constraint passed to
|
| -// getUserMedia. Note that the numeric values are currently significant, and are
|
| -// used to map enum values to corresponding frequency values.
|
| -// TODO(ajose): http://crbug.com/525167 Consider making this a class.
|
| -enum class PowerLineFrequency {
|
| - FREQUENCY_DEFAULT = 0,
|
| - FREQUENCY_50HZ = 50,
|
| - FREQUENCY_60HZ = 60,
|
| - FREQUENCY_MAX = FREQUENCY_60HZ
|
| -};
|
| -
|
| -// Assert that the int:frequency mapping is correct.
|
| -static_assert(static_cast<int>(PowerLineFrequency::FREQUENCY_DEFAULT) == 0,
|
| - "static_cast<int>(FREQUENCY_DEFAULT) must equal 0.");
|
| -static_assert(static_cast<int>(PowerLineFrequency::FREQUENCY_50HZ) == 50,
|
| - "static_cast<int>(FREQUENCY_DEFAULT) must equal 50.");
|
| -static_assert(static_cast<int>(PowerLineFrequency::FREQUENCY_60HZ) == 60,
|
| - "static_cast<int>(FREQUENCY_DEFAULT) must equal 60.");
|
| -
|
| -// Some drivers use rational time per frame instead of float frame rate, this
|
| -// constant k is used to convert between both: A fps -> [k/k*A] seconds/frame.
|
| -const int kFrameRatePrecision = 10000;
|
| -
|
| -// Video capture format specification.
|
| -// This class is used by the video capture device to specify the format of every
|
| -// frame captured and returned to a client. It is also used to specify a
|
| -// supported capture format by a device.
|
| -struct MEDIA_EXPORT VideoCaptureFormat {
|
| - VideoCaptureFormat();
|
| - VideoCaptureFormat(const gfx::Size& frame_size,
|
| - float frame_rate,
|
| - VideoPixelFormat pixel_format);
|
| - VideoCaptureFormat(const gfx::Size& frame_size,
|
| - float frame_rate,
|
| - VideoPixelFormat pixel_format,
|
| - VideoPixelStorage pixel_storage);
|
| -
|
| - static std::string ToString(const VideoCaptureFormat& format);
|
| - static std::string PixelStorageToString(VideoPixelStorage storage);
|
| -
|
| - // Compares the priority of the pixel formats. Returns true if |lhs| is the
|
| - // preferred pixel format in comparison with |rhs|. Returns false otherwise.
|
| - static bool ComparePixelFormatPreference(const VideoPixelFormat& lhs,
|
| - const VideoPixelFormat& rhs);
|
| -
|
| - // Returns the required buffer size to hold an image of a given
|
| - // VideoCaptureFormat with no padding and tightly packed.
|
| - size_t ImageAllocationSize() const;
|
| -
|
| - // Checks that all values are in the expected range. All limits are specified
|
| - // in media::Limits.
|
| - bool IsValid() const;
|
| -
|
| - bool operator==(const VideoCaptureFormat& other) const {
|
| - return frame_size == other.frame_size &&
|
| - frame_rate == other.frame_rate &&
|
| - pixel_format == other.pixel_format;
|
| - }
|
| -
|
| - gfx::Size frame_size;
|
| - float frame_rate;
|
| - VideoPixelFormat pixel_format;
|
| - VideoPixelStorage pixel_storage;
|
| -};
|
| -
|
| -typedef std::vector<VideoCaptureFormat> VideoCaptureFormats;
|
| -
|
| -// Parameters for starting video capture.
|
| -// This class is used by the client of a video capture device to specify the
|
| -// format of frames in which the client would like to have captured frames
|
| -// returned.
|
| -struct MEDIA_EXPORT VideoCaptureParams {
|
| - VideoCaptureParams();
|
| -
|
| - // Returns true if requested_format.IsValid() and all other values are within
|
| - // their expected ranges.
|
| - bool IsValid() const;
|
| -
|
| - bool operator==(const VideoCaptureParams& other) const {
|
| - return requested_format == other.requested_format &&
|
| - resolution_change_policy == other.resolution_change_policy &&
|
| - power_line_frequency == other.power_line_frequency;
|
| - }
|
| -
|
| - // Requests a resolution and format at which the capture will occur.
|
| - VideoCaptureFormat requested_format;
|
| -
|
| - // Policy for resolution change.
|
| - ResolutionChangePolicy resolution_change_policy;
|
| -
|
| - // User-specified power line frequency.
|
| - PowerLineFrequency power_line_frequency;
|
| -};
|
| -
|
| -} // namespace media
|
| -
|
| -#endif // MEDIA_BASE_VIDEO_CAPTURE_TYPES_H_
|
|
|