| Index: webrtc/api/java/jni/androidvideocapturer_jni.cc
|
| diff --git a/webrtc/api/java/jni/androidvideocapturer_jni.cc b/webrtc/api/java/jni/androidvideocapturer_jni.cc
|
| index 82d8c8e1947844b6cb761d355dcefd3b33d9af0e..4f3d64b97aa98dbbdcce92374865b0e4e0a427a5 100644
|
| --- a/webrtc/api/java/jni/androidvideocapturer_jni.cc
|
| +++ b/webrtc/api/java/jni/androidvideocapturer_jni.cc
|
| @@ -13,7 +13,6 @@
|
| #include "webrtc/api/java/jni/native_handle_impl.h"
|
| #include "webrtc/api/java/jni/surfacetexturehelper_jni.h"
|
| #include "third_party/libyuv/include/libyuv/convert.h"
|
| -#include "third_party/libyuv/include/libyuv/scale.h"
|
| #include "webrtc/base/bind.h"
|
|
|
| namespace webrtc_jni {
|
| @@ -223,25 +222,11 @@ void AndroidVideoCapturerJni::OnMemoryBufferFrame(void* video_frame,
|
| crop_width, crop_height, static_cast<libyuv::RotationMode>(
|
| capturer_->apply_rotation() ? rotation : 0));
|
|
|
| - if (adapted_width != rotated_width || adapted_height != rotated_height) {
|
| - rtc::scoped_refptr<webrtc::VideoFrameBuffer> scaled =
|
| - post_scale_pool_.CreateBuffer(adapted_width, adapted_height);
|
| - // TODO(nisse): This should be done by some Scale method in
|
| - // I420Buffer, but we can't do that right now, since
|
| - // I420BufferPool uses a wrapper object.
|
| - if (libyuv::I420Scale(buffer->DataY(), buffer->StrideY(),
|
| - buffer->DataU(), buffer->StrideU(),
|
| - buffer->DataV(), buffer->StrideV(),
|
| - rotated_width, rotated_height,
|
| - scaled->MutableDataY(), scaled->StrideY(),
|
| - scaled->MutableDataU(), scaled->StrideU(),
|
| - scaled->MutableDataV(), scaled->StrideV(),
|
| - adapted_width, adapted_height,
|
| - libyuv::kFilterBox) < 0) {
|
| - LOG(LS_WARNING) << "I420Scale failed";
|
| - return;
|
| - }
|
| - buffer = scaled;
|
| + if (adapted_width != buffer->width() || adapted_height != buffer->height()) {
|
| + rtc::scoped_refptr<webrtc::I420Buffer> scaled_buffer(
|
| + post_scale_pool_.CreateBuffer(adapted_width, adapted_height));
|
| + scaled_buffer->ScaleFrom(buffer);
|
| + buffer = scaled_buffer;
|
| }
|
| // TODO(nisse): Use microsecond time instead.
|
| capturer_->OnFrame(cricket::WebRtcVideoFrame(
|
|
|