| Index: webrtc/media/base/videoadapter.h
|
| diff --git a/webrtc/media/base/videoadapter.h b/webrtc/media/base/videoadapter.h
|
| index caaab3ce6c144f75737db3eea6471c22f0c4e5f3..eb2257b9e0d3227e5f364c7076e977d5adc0c344 100644
|
| --- a/webrtc/media/base/videoadapter.h
|
| +++ b/webrtc/media/base/videoadapter.h
|
| @@ -25,7 +25,9 @@ namespace cricket {
|
| class VideoAdapter {
|
| public:
|
| VideoAdapter();
|
| - VideoAdapter(int required_resolution_alignment);
|
| + // The output frames will have height and width that is divisible by
|
| + // |required_resolution_alignment|.
|
| + explicit VideoAdapter(int required_resolution_alignment);
|
| virtual ~VideoAdapter();
|
|
|
| // Return the adapted resolution and cropping parameters given the
|
| @@ -49,12 +51,16 @@ class VideoAdapter {
|
| void OnOutputFormatRequest(const VideoFormat& format);
|
|
|
| // Requests the output frame size from |AdaptFrameResolution| to have as close
|
| - // as possible to |target_pixel_count|, but no more than |max_pixel_count|
|
| - // pixels. If |target_pixel_count| is not set, treat it as being equal to
|
| - // |max_pixel_count|. If |max_pixel_count| is not set, treat is as being the
|
| - // highest resolution available.
|
| - void OnResolutionRequest(const rtc::Optional<int>& target_pixel_count,
|
| - const rtc::Optional<int>& max_pixel_count);
|
| + // as possible to |target_pixel_count| pixels (if set) but no more than
|
| + // |max_pixel_count|.
|
| + // |max_framerate_fps| is essentially analogous to |max_pixel_count|, but for
|
| + // framerate rather than resolution.
|
| + // Set |max_pixel_count| and/or |max_framerate_fps| to
|
| + // std::numeric_limit<int>::max() if no upper limit is desired.
|
| + void OnResolutionFramerateRequest(
|
| + const rtc::Optional<int>& target_pixel_count,
|
| + int max_pixel_count,
|
| + int max_framerate_fps);
|
|
|
| private:
|
| // Determine if frame should be dropped based on input fps and requested fps.
|
| @@ -77,6 +83,7 @@ class VideoAdapter {
|
| rtc::Optional<VideoFormat> requested_format_ GUARDED_BY(critical_section_);
|
| int resolution_request_target_pixel_count_ GUARDED_BY(critical_section_);
|
| int resolution_request_max_pixel_count_ GUARDED_BY(critical_section_);
|
| + int max_framerate_request_ GUARDED_BY(critical_section_);
|
|
|
| // The critical section to protect the above variables.
|
| rtc::CriticalSection critical_section_;
|
|
|