Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(447)

Side by Side Diff: webrtc/common_video/video_frame.cc

Issue 2444383009: Delete deprecated method VideoFrame::CreateFrame. (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/common_video/i420_video_frame_unittest.cc ('k') | webrtc/test/frame_generator.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 int64_t render_time_ms, 44 int64_t render_time_ms,
45 VideoRotation rotation) 45 VideoRotation rotation)
46 : video_frame_buffer_(buffer), 46 : video_frame_buffer_(buffer),
47 timestamp_rtp_(timestamp), 47 timestamp_rtp_(timestamp),
48 ntp_time_ms_(0), 48 ntp_time_ms_(0),
49 timestamp_us_(render_time_ms * rtc::kNumMicrosecsPerMillisec), 49 timestamp_us_(render_time_ms * rtc::kNumMicrosecsPerMillisec),
50 rotation_(rotation) { 50 rotation_(rotation) {
51 RTC_DCHECK(buffer); 51 RTC_DCHECK(buffer);
52 } 52 }
53 53
54 void VideoFrame::CreateFrame(const uint8_t* buffer_y,
55 const uint8_t* buffer_u,
56 const uint8_t* buffer_v,
57 int width,
58 int height,
59 int stride_y,
60 int stride_u,
61 int stride_v,
62 VideoRotation rotation) {
63 const int half_height = (height + 1) / 2;
64 const int expected_size_y = height * stride_y;
65 const int expected_size_u = half_height * stride_u;
66 const int expected_size_v = half_height * stride_v;
67 // Allocate a new buffer.
68 rtc::scoped_refptr<I420Buffer> buffer_ =
69 I420Buffer::Create(width, height, stride_y, stride_u, stride_v);
70
71 memcpy(buffer_->MutableDataY(), buffer_y, expected_size_y);
72 memcpy(buffer_->MutableDataU(), buffer_u, expected_size_u);
73 memcpy(buffer_->MutableDataV(), buffer_v, expected_size_v);
74
75 video_frame_buffer_ = buffer_;
76 timestamp_rtp_ = 0;
77 ntp_time_ms_ = 0;
78 timestamp_us_ = 0;
79 rotation_ = rotation;
80 }
81
82 void VideoFrame::CreateFrame(const uint8_t* buffer,
83 int width,
84 int height,
85 VideoRotation rotation) {
86 const int stride_y = width;
87 const int stride_uv = (width + 1) / 2;
88
89 const uint8_t* buffer_y = buffer;
90 const uint8_t* buffer_u = buffer_y + stride_y * height;
91 const uint8_t* buffer_v = buffer_u + stride_uv * ((height + 1) / 2);
92 CreateFrame(buffer_y, buffer_u, buffer_v, width, height, stride_y,
93 stride_uv, stride_uv, rotation);
94 }
95
96 void VideoFrame::ShallowCopy(const VideoFrame& videoFrame) { 54 void VideoFrame::ShallowCopy(const VideoFrame& videoFrame) {
97 video_frame_buffer_ = videoFrame.video_frame_buffer(); 55 video_frame_buffer_ = videoFrame.video_frame_buffer();
98 timestamp_rtp_ = videoFrame.timestamp_rtp_; 56 timestamp_rtp_ = videoFrame.timestamp_rtp_;
99 ntp_time_ms_ = videoFrame.ntp_time_ms_; 57 ntp_time_ms_ = videoFrame.ntp_time_ms_;
100 timestamp_us_ = videoFrame.timestamp_us_; 58 timestamp_us_ = videoFrame.timestamp_us_;
101 rotation_ = videoFrame.rotation_; 59 rotation_ = videoFrame.rotation_;
102 } 60 }
103 61
104 int VideoFrame::width() const { 62 int VideoFrame::width() const {
105 return video_frame_buffer_ ? video_frame_buffer_->width() : 0; 63 return video_frame_buffer_ ? video_frame_buffer_->width() : 0;
(...skipping 24 matching lines...) Expand all
130 case kVideoCodecULPFEC: 88 case kVideoCodecULPFEC:
131 case kVideoCodecGeneric: 89 case kVideoCodecGeneric:
132 case kVideoCodecUnknown: 90 case kVideoCodecUnknown:
133 return 0; 91 return 0;
134 } 92 }
135 RTC_NOTREACHED(); 93 RTC_NOTREACHED();
136 return 0; 94 return 0;
137 } 95 }
138 96
139 } // namespace webrtc 97 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/common_video/i420_video_frame_unittest.cc ('k') | webrtc/test/frame_generator.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698