diff options
Diffstat (limited to 'chromium/media/capture/video_capturer_source.h')
-rw-r--r-- | chromium/media/capture/video_capturer_source.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/chromium/media/capture/video_capturer_source.h b/chromium/media/capture/video_capturer_source.h index c48032be48e..2039ba26996 100644 --- a/chromium/media/capture/video_capturer_source.h +++ b/chromium/media/capture/video_capturer_source.h @@ -42,9 +42,17 @@ class CAPTURE_EXPORT VideoCapturerSource { // frame relative to the first frame generated by the corresponding source. // Because a source can start generating frames before a subscriber is added, // the first video frame delivered may not have timestamp equal to 0. - using VideoCaptureDeliverFrameCB = - base::RepeatingCallback<void(scoped_refptr<media::VideoFrame> video_frame, - base::TimeTicks estimated_capture_time)>; + // + // |scaled_video_frames| are alternative representations of |video_frame| + // where scaling has already been applied. Scaled frames may be produced by + // some capturers that listen to media::VideoFrameFeedback. However, because + // not all capturers support in-capturer scaling or due to delays in the + // pipeline, listeners have to be prepared for scaled video frames not being + // present or being present with other sizes than most recently requested. + using VideoCaptureDeliverFrameCB = base::RepeatingCallback<void( + scoped_refptr<media::VideoFrame> video_frame, + std::vector<scoped_refptr<media::VideoFrame>> scaled_video_frames, + base::TimeTicks estimated_capture_time)>; using VideoCaptureDeviceFormatsCB = base::OnceCallback<void(const media::VideoCaptureFormats&)>; |