| Index: media/base/video_frame.cc
|
| diff --git a/media/base/video_frame.cc b/media/base/video_frame.cc
|
| index fd7fd19f408b7a1f46e3cf7b0172aa87d9295e72..2593bf33496d4558a3e3f1ed2196b1eb6409c242 100644
|
| --- a/media/base/video_frame.cc
|
| +++ b/media/base/video_frame.cc
|
| @@ -181,6 +181,23 @@ scoped_refptr<VideoFrame> VideoFrame::WrapExternalYuvData(
|
| }
|
|
|
| // static
|
| +scoped_refptr<VideoFrame> VideoFrame::WrapVideoFrame(
|
| + const scoped_refptr<VideoFrame>& frame,
|
| + const base::Closure& no_longer_needed_cb) {
|
| + scoped_refptr<VideoFrame> wrapped_frame(new VideoFrame(
|
| + frame->format(), frame->coded_size(), frame->visible_rect(),
|
| + frame->natural_size(), frame->GetTimestamp(), frame->end_of_stream()));
|
| +
|
| + for (size_t i = 0; i < NumPlanes(frame->format()); ++i) {
|
| + wrapped_frame->strides_[i] = frame->stride(i);
|
| + wrapped_frame->data_[i] = frame->data(i);
|
| + }
|
| +
|
| + wrapped_frame->no_longer_needed_cb_ = no_longer_needed_cb;
|
| + return wrapped_frame;
|
| +}
|
| +
|
| +// static
|
| scoped_refptr<VideoFrame> VideoFrame::CreateEOSFrame() {
|
| return new VideoFrame(VideoFrame::UNKNOWN,
|
| gfx::Size(),
|
|
|