Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2853383005/ )

Reason for revert:
Downstream projects have been fixed.

Original issue's description:
> Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2854873003/ )
>
> Reason for revert:
> More downstream breakage discovered.
>
> Original issue's description:
> > Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2854883002/ )
> >
> > Reason for revert:
> > Will make another attempt to track down and fix downstream projects.
> >
> > Original issue's description:
> > > Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2852303002/ )
> > >
> > > Reason for revert:
> > > Unfortunately, more downstream updates needed.
> > >
> > > Original issue's description:
> > > > Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2845333002/ )
> > > >
> > > > Reason for revert:
> > > > Downstream projects being updated.
> > > >
> > > > For Chrome, relanding depends on cl
> > > > https://codereview.chromium.org/2855783003/
> > > >
> > > > Original issue's description:
> > > > > Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #17 id:320001 of https://codereview.webrtc.org/2622263002/ )
> > > > >
> > > > > Reason for revert:
> > > > > Broke Chrome build, see, e.g.,
> > > > > http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/16237
> > > > >
> > > > > Original issue's description:
> > > > > > Delete deprecated and transitional stuff related to video frame refactoring.
> > > > > >
> > > > > > BUG=webrtc:5880
> > > > > >
> > > > > > Review-Url: https://codereview.webrtc.org/2622263002
> > > > > > Cr-Commit-Position: refs/heads/master@{#17928}
> > > > > > Committed: 713a3bbcc7
> > > > >
> > > > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > > > NOPRESUBMIT=true
> > > > > NOTREECHECKS=true
> > > > > NOTRY=true
> > > > > BUG=webrtc:5880
> > > > >
> > > > > Review-Url: https://codereview.webrtc.org/2845333002
> > > > > Cr-Commit-Position: refs/heads/master@{#17929}
> > > > > Committed: aec49d2b49
> > > >
> > > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > > > BUG=webrtc:5880
> > > >
> > > > Review-Url: https://codereview.webrtc.org/2852303002
> > > > Cr-Commit-Position: refs/heads/master@{#17974}
> > > > Committed: d71ebd70f6
> > >
> > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:5880
> > >
> > > Review-Url: https://codereview.webrtc.org/2854883002
> > > Cr-Commit-Position: refs/heads/master@{#17978}
> > > Committed: 6e6a485a02
> >
> > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> >
> > BUG=webrtc:5880
> >
> > Review-Url: https://codereview.webrtc.org/2854873003
> > Cr-Commit-Position: refs/heads/master@{#18006}
> > Committed: 3870a071c4
>
> TBR=mflodman@webrtc.org,perkj@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5880
>
> Review-Url: https://codereview.webrtc.org/2853383005
> Cr-Commit-Position: refs/heads/master@{#18008}
> Committed: 61b22dde13

TBR=mflodman@webrtc.org,perkj@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:5880

Review-Url: https://codereview.webrtc.org/2867703002
Cr-Commit-Position: refs/heads/master@{#18081}
This commit is contained in:
nisse
2017-05-10 05:25:59 -07:00
committed by Commit bot
parent a644ad3280
commit f93752a2ee
26 changed files with 21 additions and 151 deletions

View File

@ -23,10 +23,6 @@
#include <vector>
#include "webrtc/api/video/video_frame.h"
// TODO(nisse): Transition hack, Chrome expects that including this
// file declares I420Buffer. Delete after users of I420Buffer are
// fixed to include the new header.
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/base/refcount.h"
#include "webrtc/base/scoped_ref_ptr.h"
#include "webrtc/base/optional.h"

View File

@ -131,17 +131,6 @@ rtc::scoped_refptr<I420Buffer> I420Buffer::Rotate(
return buffer;
}
// static
rtc::scoped_refptr<VideoFrameBuffer> I420Buffer::Rotate(
rtc::scoped_refptr<VideoFrameBuffer> src,
VideoRotation rotation) {
if (rotation == webrtc::kVideoRotation_0) {
return src;
} else {
return Rotate(*src, rotation);
}
}
void I420Buffer::InitializeData() {
memset(data_.get(), 0,
I420DataSize(height_, stride_y_, stride_u_, stride_v_));

View File

@ -53,9 +53,6 @@ class I420Buffer : public VideoFrameBuffer {
// are resolved in a better way. Or in the mean time, use SetBlack.
void InitializeData();
// TODO(nisse): Deprecated, use static method instead.
void SetToBlack() { SetBlack(this); }
int width() const override;
int height() const override;
const uint8_t* DataY() const override;
@ -88,14 +85,6 @@ class I420Buffer : public VideoFrameBuffer {
// Scale all of |src| to the size of |this| buffer, with no cropping.
void ScaleFrom(const VideoFrameBuffer& src);
// TODO(nisse): Deprecated, delete once downstream applications are updated.
// Returns a rotated versions of |src|. Native buffers are not
// supported. The reason this function doesn't return an I420Buffer,
// is that it returns |src| unchanged in case |rotation| is zero.
static rtc::scoped_refptr<VideoFrameBuffer> Rotate(
rtc::scoped_refptr<VideoFrameBuffer> src,
VideoRotation rotation);
protected:
I420Buffer(int width, int height);
I420Buffer(int width, int height, int stride_y, int stride_u, int stride_v);

View File

@ -16,11 +16,6 @@
#include "webrtc/api/video/video_rotation.h"
#include "webrtc/api/video/video_frame_buffer.h"
// TODO(nisse): Transition hack, some downstream applications expect
// that including this file also defines base/timeutils.h constants.
// Delete after applications are fixed to include the right headers.
#include "webrtc/base/timeutils.h"
namespace webrtc {
class VideoFrame {

View File

@ -22,6 +22,7 @@ rtc_source_set("video_codecs_api") {
# TODO(ilnik): Add dependency on webrtc/video_frame.h when it will have it's
# own build target.
"..:video_frame_api",
"../..:webrtc_common",
"../../base:rtc_base_approved",
]

View File

@ -15,6 +15,7 @@
#include <string>
#include <vector>
#include "webrtc/api/video/video_frame.h"
#include "webrtc/common_types.h"
#include "webrtc/typedefs.h"
#include "webrtc/video_frame.h"

View File

@ -15,6 +15,7 @@
#include <string>
#include <vector>
#include "webrtc/api/video/video_frame.h"
#include "webrtc/base/checks.h"
#include "webrtc/common_types.h"
#include "webrtc/typedefs.h"

View File

@ -12,6 +12,7 @@
#include <string.h>
#include "webrtc/api/video/video_frame.h"
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/base/bind.h"
#include "webrtc/base/timeutils.h"
#include "webrtc/test/fake_texture_frame.h"
@ -291,20 +292,4 @@ INSTANTIATE_TEST_CASE_P(Rotate, TestI420BufferRotate,
kVideoRotation_180,
kVideoRotation_270));
class TestI420BufferRotateOld
: public ::testing::TestWithParam<webrtc::VideoRotation> {};
TEST_P(TestI420BufferRotateOld, Rotates) {
rtc::scoped_refptr<VideoFrameBuffer> buffer = CreateGradient(640, 480);
rtc::scoped_refptr<VideoFrameBuffer> rotated_buffer =
I420Buffer::Rotate(buffer, GetParam());
CheckRotate(640, 480, GetParam(), *rotated_buffer);
}
INSTANTIATE_TEST_CASE_P(Rotate, TestI420BufferRotateOld,
::testing::Values(kVideoRotation_0,
kVideoRotation_90,
kVideoRotation_180,
kVideoRotation_270));
} // namespace webrtc

View File

@ -14,9 +14,6 @@
#include <memory>
#include "webrtc/api/video/video_frame_buffer.h"
// TODO(nisse): For backwards compatibility, files including this file
// expect it to declare I420Buffer. Delete after callers are updated.
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/base/callback.h"
#include "webrtc/base/scoped_ref_ptr.h"

View File

@ -1,18 +0,0 @@
/*
* Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
// TODO(nisse): Delete this file, once downstream code is updated.
#ifndef WEBRTC_COMMON_VIDEO_ROTATION_H_
#define WEBRTC_COMMON_VIDEO_ROTATION_H_
#include "webrtc/api/video/video_rotation.h"
#endif // WEBRTC_COMMON_VIDEO_ROTATION_H_

View File

@ -73,7 +73,6 @@ rtc_static_library("rtc_media_base") {
"base/videocapturerfactory.h",
"base/videocommon.cc",
"base/videocommon.h",
"base/videoframe.h",
"base/videosourcebase.cc",
"base/videosourcebase.h",
]
@ -155,7 +154,6 @@ rtc_static_library("rtc_media") {
"engine/webrtcvideoencoderfactory.h",
"engine/webrtcvideoengine2.cc",
"engine/webrtcvideoengine2.h",
"engine/webrtcvideoframe.h",
"engine/webrtcvoe.h",
"engine/webrtcvoiceengine.cc",
"engine/webrtcvoiceengine.h",

View File

@ -20,12 +20,6 @@
#include <string>
#include <vector>
// TODO(nisse): Transition hack, some downstream applications expect that
// including this file declares I420Buffer and NativeHandleBuffer. Delete after
// users of these classes are fixed to include the right headers.
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/common_video/include/video_frame_buffer.h"
#include "webrtc/base/constructormagic.h"
#include "webrtc/base/criticalsection.h"
#include "webrtc/media/base/videosourceinterface.h"

View File

@ -1,37 +0,0 @@
/*
* Copyright (c) 2004 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
// TODO(nisse): Deprecated, replace cricket::VideoFrame with
// webrtc::VideoFrame everywhere, then delete this file. See
// https://bugs.chromium.org/p/webrtc/issues/detail?id=5682.
#ifndef WEBRTC_MEDIA_BASE_VIDEOFRAME_H_
#define WEBRTC_MEDIA_BASE_VIDEOFRAME_H_
// TODO(nisse): Some applications expect that including this file
// implies an include of logging.h. So keep for compatibility, until
// this file can be deleted.
#include "webrtc/base/logging.h"
#include "webrtc/api/video/video_frame.h"
// TODO(nisse): Similarly, some applications expect that including this file
// implies a forward declaration of rtc::Thread.
namespace rtc {
class Thread;
} // namespace rtc
namespace cricket {
using VideoFrame = webrtc::VideoFrame;
} // namespace cricket
#endif // WEBRTC_MEDIA_BASE_VIDEOFRAME_H_

View File

@ -1,33 +0,0 @@
/*
* Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
// TODO(nisse): Deprecated, replace cricket::WebRtcVideoFrame with
// webrtc::VideoFrame everywhere, then delete this file. See
// https://bugs.chromium.org/p/webrtc/issues/detail?id=5682.
#ifndef WEBRTC_MEDIA_ENGINE_WEBRTCVIDEOFRAME_H_
#define WEBRTC_MEDIA_ENGINE_WEBRTCVIDEOFRAME_H_
#include <memory>
#include "webrtc/base/buffer.h"
#include "webrtc/base/refcount.h"
#include "webrtc/base/scoped_ref_ptr.h"
#include "webrtc/common_types.h"
#include "webrtc/common_video/include/video_frame_buffer.h"
#include "webrtc/media/base/videoframe.h"
namespace cricket {
using WebRtcVideoFrame = webrtc::VideoFrame;
} // namespace cricket
#endif // WEBRTC_MEDIA_ENGINE_WEBRTCVIDEOFRAME_H_

View File

@ -10,6 +10,7 @@
#include "webrtc/modules/video_coding/codecs/test/video_codec_test.h"
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/modules/video_coding/include/video_error_codes.h"
#include "webrtc/test/frame_utils.h"
#include "webrtc/test/testsupport/fileutils.h"

View File

@ -10,6 +10,7 @@
#include "webrtc/base/checks.h"
#include "webrtc/base/logging.h"
#include "webrtc/base/timeutils.h"
#include "webrtc/base/trace_event.h"
#include "webrtc/modules/video_coding/include/video_coding.h"
#include "webrtc/modules/video_coding/generic_decoder.h"

View File

@ -12,12 +12,13 @@
#include <memory>
#include "webrtc/sdk/android/src/jni/jni_helpers.h"
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/base/bind.h"
#include "webrtc/base/checks.h"
#include "webrtc/base/keep_ref_until_done.h"
#include "webrtc/base/logging.h"
#include "webrtc/base/scoped_ref_ptr.h"
#include "webrtc/sdk/android/src/jni/jni_helpers.h"
using webrtc::NativeHandleBuffer;
@ -142,6 +143,10 @@ AndroidTextureBuffer::NativeToI420Buffer() {
//
// TODO(nisse): Use an I420BufferPool. We then need to extend that
// class, and I420Buffer, to support our memory layout.
// TODO(nisse): Depending on
// system_wrappers/include/aligned_malloc.h violate current DEPS
// rules. We get away for now only because it is indirectly included
// by i420_buffer.h
std::unique_ptr<uint8_t, webrtc::AlignedFreeDeleter> yuv_data(
static_cast<uint8_t*>(webrtc::AlignedMalloc(size, kBufferAlignment)));
// See YuvConverter.java for the required layout.

View File

@ -160,7 +160,7 @@ void AVFoundationVideoCapturer::CaptureSampleBuffer(
// Applying rotation is only supported for legacy reasons and performance is
// not critical here.
if (apply_rotation() && rotation != kVideoRotation_0) {
buffer = I420Buffer::Rotate(buffer->NativeToI420Buffer(),
buffer = I420Buffer::Rotate(*buffer->NativeToI420Buffer(),
rotation);
if (rotation == kVideoRotation_90 || rotation == kVideoRotation_270) {
std::swap(captured_width, captured_height);

View File

@ -11,6 +11,7 @@
#include "webrtc/sdk/objc/Framework/Classes/corevideo_frame_buffer.h"
#include "libyuv/convert.h"
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/base/checks.h"
#include "webrtc/base/logging.h"
#include "webrtc/common_video/libyuv/include/webrtc_libyuv.h"

View File

@ -12,6 +12,7 @@
#import "RTCVideoFrame+Private.h"
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/sdk/objc/Framework/Classes/corevideo_frame_buffer.h"
namespace webrtc {
@ -60,7 +61,7 @@ void ObjcVideoTrackSource::OnCapturedFrame(RTCVideoFrame* frame) {
// not critical here.
webrtc::VideoRotation rotation = static_cast<webrtc::VideoRotation>(frame.rotation);
if (apply_rotation() && rotation != kVideoRotation_0) {
buffer = I420Buffer::Rotate(buffer->NativeToI420Buffer(), rotation);
buffer = I420Buffer::Rotate(*buffer->NativeToI420Buffer(), rotation);
rotation = kVideoRotation_0;
}

View File

@ -10,6 +10,7 @@
#ifndef WEBRTC_TEST_FAKE_TEXTURE_FRAME_H_
#define WEBRTC_TEST_FAKE_TEXTURE_FRAME_H_
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/api/video/video_frame.h"
#include "webrtc/base/checks.h"
#include "webrtc/common_video/include/video_frame_buffer.h"

View File

@ -17,6 +17,7 @@
#include "webrtc/base/logging.h"
#include "webrtc/base/platform_thread.h"
#include "webrtc/base/task_queue.h"
#include "webrtc/base/timeutils.h"
#include "webrtc/system_wrappers/include/clock.h"
#include "webrtc/system_wrappers/include/sleep.h"
#include "webrtc/test/frame_generator.h"

View File

@ -23,6 +23,7 @@
#include "webrtc/base/checks.h"
#include "webrtc/base/logging.h"
#include "webrtc/base/numerics/exp_filter.h"
#include "webrtc/base/timeutils.h"
#include "webrtc/common_video/include/frame_callback.h"
#include "webrtc/system_wrappers/include/field_trial.h"

View File

@ -12,6 +12,7 @@
#include <memory>
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/api/video/video_frame.h"
#include "webrtc/api/video/video_rotation.h"
#include "webrtc/modules/video_coding/include/video_codec_interface.h"

View File

@ -18,6 +18,7 @@
#include "webrtc/base/logging.h"
#include "webrtc/base/platform_thread.h"
#include "webrtc/base/rate_limiter.h"
#include "webrtc/base/timeutils.h"
#include "webrtc/call/call.h"
#include "webrtc/common_video/include/frame_callback.h"
#include "webrtc/modules/rtp_rtcp/include/rtp_header_parser.h"

View File

@ -17,8 +17,6 @@
// this file until we have figured out how to refactor and clean up
// related interfaces.
#include "webrtc/api/video/video_frame.h"
#include "webrtc/api/video/i420_buffer.h"
#include "webrtc/common_types.h"
#include "webrtc/typedefs.h"