OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
71 | 71 |
72 int WebRtcVideoFrame::height() const { | 72 int WebRtcVideoFrame::height() const { |
73 return video_frame_buffer_ ? video_frame_buffer_->height() : 0; | 73 return video_frame_buffer_ ? video_frame_buffer_->height() : 0; |
74 } | 74 } |
75 | 75 |
76 const rtc::scoped_refptr<webrtc::VideoFrameBuffer>& | 76 const rtc::scoped_refptr<webrtc::VideoFrameBuffer>& |
77 WebRtcVideoFrame::video_frame_buffer() const { | 77 WebRtcVideoFrame::video_frame_buffer() const { |
78 return video_frame_buffer_; | 78 return video_frame_buffer_; |
79 } | 79 } |
80 | 80 |
| 81 VideoFrame* WebRtcVideoFrame::Copy() const { |
| 82 return new WebRtcVideoFrame(video_frame_buffer_, rotation_, timestamp_us_); |
| 83 } |
| 84 |
81 size_t WebRtcVideoFrame::ConvertToRgbBuffer(uint32_t to_fourcc, | 85 size_t WebRtcVideoFrame::ConvertToRgbBuffer(uint32_t to_fourcc, |
82 uint8_t* buffer, | 86 uint8_t* buffer, |
83 size_t size, | 87 size_t size, |
84 int stride_rgb) const { | 88 int stride_rgb) const { |
85 RTC_CHECK(video_frame_buffer_); | 89 RTC_CHECK(video_frame_buffer_); |
86 RTC_CHECK(video_frame_buffer_->native_handle() == nullptr); | 90 RTC_CHECK(video_frame_buffer_->native_handle() == nullptr); |
87 return VideoFrame::ConvertToRgbBuffer(to_fourcc, buffer, size, stride_rgb); | 91 return VideoFrame::ConvertToRgbBuffer(to_fourcc, buffer, size, stride_rgb); |
88 } | 92 } |
89 | 93 |
90 bool WebRtcVideoFrame::Reset(uint32_t format, | 94 bool WebRtcVideoFrame::Reset(uint32_t format, |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
209 rotated_frame_->video_frame_buffer()->StrideV(), | 213 rotated_frame_->video_frame_buffer()->StrideV(), |
210 orig_width, orig_height, | 214 orig_width, orig_height, |
211 static_cast<libyuv::RotationMode>(rotation())); | 215 static_cast<libyuv::RotationMode>(rotation())); |
212 if (ret == 0) { | 216 if (ret == 0) { |
213 return rotated_frame_.get(); | 217 return rotated_frame_.get(); |
214 } | 218 } |
215 return nullptr; | 219 return nullptr; |
216 } | 220 } |
217 | 221 |
218 } // namespace cricket | 222 } // namespace cricket |
OLD | NEW |