Index: webrtc/common_video/include/video_frame_buffer.h |
diff --git a/webrtc/common_video/include/video_frame_buffer.h b/webrtc/common_video/include/video_frame_buffer.h |
index 984bd50d674e78d7e7aedfc252fcfef8810b6963..08b914321a944b400f9350575fc5cfa1786547a5 100644 |
--- a/webrtc/common_video/include/video_frame_buffer.h |
+++ b/webrtc/common_video/include/video_frame_buffer.h |
@@ -109,6 +109,23 @@ class I420Buffer : public VideoFrameBuffer { |
static rtc::scoped_refptr<I420Buffer> Copy( |
const rtc::scoped_refptr<VideoFrameBuffer>& buffer); |
+ // Only the most generally useful operations should be methods on |
+ // this class, for more specialized operations, use |
+ // MutableDataY(,U,V) to get write access. |
+ |
+ // Crop the input buffer, then scale it to the size of this buffer. |
+ void CropAndScale(const rtc::scoped_refptr<VideoFrameBuffer>& buffer, |
pbos-webrtc
2016/05/31 14:14:01
const VideoFrameBuffer& src?
nisse-webrtc
2016/06/01 09:15:17
I had a brief discussion with Magnus and Tommi, an
|
+ int offset_x, |
+ int offset_y, |
+ int crop_width, |
+ int crop_height); |
+ |
+ // The common case of a center crop, when needed to maintain the |
+ // same aspect ratio. |
+ static void CenterCropAndScale( |
+ const rtc::scoped_refptr<I420Buffer>& dst, |
pbos-webrtc
2016/05/31 14:14:01
Should this be a I420Buffer* dst and const VideoFr
|
+ const rtc::scoped_refptr<VideoFrameBuffer>& src); |
+ |
protected: |
~I420Buffer() override; |
@@ -186,13 +203,6 @@ class WrappedI420Buffer : public webrtc::VideoFrameBuffer { |
rtc::Callback0<void> no_longer_used_cb_; |
}; |
-// Helper function to crop |buffer| without making a deep copy. May only be used |
-// for non-native frames. |
-rtc::scoped_refptr<VideoFrameBuffer> ShallowCenterCrop( |
- const rtc::scoped_refptr<VideoFrameBuffer>& buffer, |
- int cropped_width, |
- int cropped_height); |
- |
} // namespace webrtc |
#endif // WEBRTC_COMMON_VIDEO_INCLUDE_VIDEO_FRAME_BUFFER_H_ |