Partial frame capture API part 1

Define new optional struct in VideoFrame to signal that the frame is a
changed part of a whole picture and add a flag to signal that partial
update may be issued by the VideoFrame source.

Also, fix too strict assumptions in FrameBuffers PasteFrom methods.
Also, add ability to set a new buffer in video frame.


Bug: webrtc:10152
Change-Id: Ie0da418fd60bc7a34334329292e0b860ec388788
Reviewed-on: https://webrtc-review.googlesource.com/c/120405
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26489}
This commit is contained in:
Ilya Nikolaevskiy
2019-01-31 12:00:12 +01:00
committed by Commit Bot
parent 8fe7995045
commit 8a21e1c9c9
5 changed files with 92 additions and 22 deletions

View File

@ -42,6 +42,9 @@ struct RTC_EXPORT VideoSinkWants {
absl::optional<int> target_pixel_count;
// Tells the source the maximum framerate the sink wants.
int max_framerate_fps = std::numeric_limits<int>::max();
// Tells the source that the sink supports partial frame updates.
bool partial_frames = false;
};
template <typename VideoFrameT>