| Index: media/capture/content/screen_capture_device_core.h
|
| diff --git a/media/capture/content/screen_capture_device_core.h b/media/capture/content/screen_capture_device_core.h
|
| index 7e301545c96060202c23eba2e8a2c5ef96809516..057e89459e5f784f1fe71d4ca966bb08a40f6edb 100644
|
| --- a/media/capture/content/screen_capture_device_core.h
|
| +++ b/media/capture/content/screen_capture_device_core.h
|
| @@ -46,6 +46,18 @@ class MEDIA_EXPORT VideoCaptureMachine {
|
| // overloading or under-utilization.
|
| virtual bool IsAutoThrottlingEnabled() const;
|
|
|
| + // Called by ScreenCaptureDeviceCore when it failed to satisfy a "refresh
|
| + // frame" request by attempting to resurrect the last video frame from the
|
| + // buffer pool (this is referred to as the "passive" refresh approach). The
|
| + // failure can happen for a number of reasons (e.g., the oracle decided to
|
| + // change resolution, or consumers of the last video frame are not yet
|
| + // finished with it).
|
| + //
|
| + // The implementation of this method should consult the oracle, using the
|
| + // kActiveRefreshRequest event type, to decide whether to initiate a new frame
|
| + // capture, and then do so if the oracle agrees.
|
| + virtual void MaybeCaptureForRefresh() = 0;
|
| +
|
| private:
|
| DISALLOW_COPY_AND_ASSIGN(VideoCaptureMachine);
|
| };
|
| @@ -69,6 +81,7 @@ class MEDIA_EXPORT ScreenCaptureDeviceCore
|
| // Asynchronous requests to change ScreenCaptureDeviceCore state.
|
| void AllocateAndStart(const VideoCaptureParams& params,
|
| scoped_ptr<VideoCaptureDevice::Client> client);
|
| + void RequestRefreshFrame();
|
| void StopAndDeAllocate();
|
|
|
| private:
|
|
|