OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/renderer/pepper/pepper_video_source_host.h" | 5 #include "content/renderer/pepper/pepper_video_source_host.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/numerics/safe_conversions.h" | 8 #include "base/numerics/safe_conversions.h" |
9 #include "content/public/renderer/renderer_ppapi_host.h" | 9 #include "content/public/renderer/renderer_ppapi_host.h" |
10 #include "content/renderer/pepper/ppb_image_data_impl.h" | 10 #include "content/renderer/pepper/ppb_image_data_impl.h" |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 const int vert_crop = frame->visible_rect().y(); | 175 const int vert_crop = frame->visible_rect().y(); |
176 | 176 |
177 const uint8* src_y = frame->data(media::VideoFrame::kYPlane) + | 177 const uint8* src_y = frame->data(media::VideoFrame::kYPlane) + |
178 (src_width * vert_crop + horiz_crop); | 178 (src_width * vert_crop + horiz_crop); |
179 const int center = (src_width + 1) / 2; | 179 const int center = (src_width + 1) / 2; |
180 const uint8* src_u = frame->data(media::VideoFrame::kUPlane) + | 180 const uint8* src_u = frame->data(media::VideoFrame::kUPlane) + |
181 (center * vert_crop + horiz_crop) / 2; | 181 (center * vert_crop + horiz_crop) / 2; |
182 const uint8* src_v = frame->data(media::VideoFrame::kVPlane) + | 182 const uint8* src_v = frame->data(media::VideoFrame::kVPlane) + |
183 (center * vert_crop + horiz_crop) / 2; | 183 (center * vert_crop + horiz_crop) / 2; |
184 | 184 |
185 libyuv::I420ToBGRA(src_y, | 185 libyuv::I420ToARGB(src_y, |
186 frame->stride(media::VideoFrame::kYPlane), | 186 frame->stride(media::VideoFrame::kYPlane), |
187 src_u, | 187 src_u, |
188 frame->stride(media::VideoFrame::kUPlane), | 188 frame->stride(media::VideoFrame::kUPlane), |
189 src_v, | 189 src_v, |
190 frame->stride(media::VideoFrame::kVPlane), | 190 frame->stride(media::VideoFrame::kVPlane), |
191 bitmap_pixels, | 191 bitmap_pixels, |
192 bitmap->rowBytes(), | 192 bitmap->rowBytes(), |
193 dst_width, | 193 dst_width, |
194 dst_height); | 194 dst_height); |
195 | 195 |
(...skipping 28 matching lines...) Expand all Loading... |
224 | 224 |
225 void PepperVideoSourceHost::Close() { | 225 void PepperVideoSourceHost::Close() { |
226 if (source_handler_.get() && !stream_url_.empty()) | 226 if (source_handler_.get() && !stream_url_.empty()) |
227 source_handler_->Close(frame_receiver_.get()); | 227 source_handler_->Close(frame_receiver_.get()); |
228 | 228 |
229 source_handler_.reset(NULL); | 229 source_handler_.reset(NULL); |
230 stream_url_.clear(); | 230 stream_url_.clear(); |
231 } | 231 } |
232 | 232 |
233 } // namespace content | 233 } // namespace content |
OLD | NEW |