| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "media/cast/test/linux_output_window.h" | 5 #include "media/cast/test/linux_output_window.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "media/base/video_frame.h" | 8 #include "media/base/video_frame.h" |
| 9 #include "third_party/libyuv/include/libyuv/convert.h" | 9 #include "third_party/libyuv/include/libyuv/convert.h" |
| 10 #include "ui/gfx/size.h" | 10 #include "ui/gfx/size.h" |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 119 | 119 |
| 120 void LinuxOutputWindow::RenderFrame( | 120 void LinuxOutputWindow::RenderFrame( |
| 121 const scoped_refptr<media::VideoFrame>& video_frame) { | 121 const scoped_refptr<media::VideoFrame>& video_frame) { |
| 122 libyuv::I420ToARGB(video_frame->data(VideoFrame::kYPlane), | 122 libyuv::I420ToARGB(video_frame->data(VideoFrame::kYPlane), |
| 123 video_frame->stride(VideoFrame::kYPlane), | 123 video_frame->stride(VideoFrame::kYPlane), |
| 124 video_frame->data(VideoFrame::kUPlane), | 124 video_frame->data(VideoFrame::kUPlane), |
| 125 video_frame->stride(VideoFrame::kUPlane), | 125 video_frame->stride(VideoFrame::kUPlane), |
| 126 video_frame->data(VideoFrame::kVPlane), | 126 video_frame->data(VideoFrame::kVPlane), |
| 127 video_frame->stride(VideoFrame::kVPlane), | 127 video_frame->stride(VideoFrame::kVPlane), |
| 128 render_buffer_, | 128 render_buffer_, |
| 129 video_frame->coded_size().width() * 4, // Stride. | 129 video_frame->stride(VideoFrame::kYPlane) * 4, |
| 130 video_frame->coded_size().width(), | 130 video_frame->coded_size().width(), |
| 131 video_frame->coded_size().height()); | 131 video_frame->coded_size().height()); |
| 132 | 132 |
| 133 // Place image in window. | 133 // Place image in window. |
| 134 XShmPutImage(display_, | 134 XShmPutImage(display_, |
| 135 window_, | 135 window_, |
| 136 gc_, | 136 gc_, |
| 137 image_, | 137 image_, |
| 138 0, | 138 0, |
| 139 0, | 139 0, |
| 140 0, | 140 0, |
| 141 0, | 141 0, |
| 142 video_frame->coded_size().width(), | 142 video_frame->coded_size().width(), |
| 143 video_frame->coded_size().height(), | 143 video_frame->coded_size().height(), |
| 144 true); | 144 true); |
| 145 | 145 |
| 146 // Very important for the image to update properly! | 146 // Very important for the image to update properly! |
| 147 XSync(display_, false); | 147 XSync(display_, false); |
| 148 } | 148 } |
| 149 | 149 |
| 150 } // namespace test | 150 } // namespace test |
| 151 } // namespace cast | 151 } // namespace cast |
| 152 } // namespace media | 152 } // namespace media |
| OLD | NEW |