OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "chrome/gpu/arc_gpu_video_decode_accelerator.h" | 5 #include "chrome/gpu/arc_gpu_video_decode_accelerator.h" |
6 | 6 |
7 #include "base/callback_helpers.h" | 7 #include "base/callback_helpers.h" |
8 #include "base/logging.h" | 8 #include "base/logging.h" |
9 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
10 #include "content/public/gpu/gpu_video_decode_accelerator_factory.h" | 10 #include "content/public/gpu/gpu_video_decode_accelerator_factory.h" |
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
226 DCHECK(thread_checker_.CalledOnValidThread()); | 226 DCHECK(thread_checker_.CalledOnValidThread()); |
227 if (!vda_) { | 227 if (!vda_) { |
228 DLOG(ERROR) << "VDA not initialized"; | 228 DLOG(ERROR) << "VDA not initialized"; |
229 return; | 229 return; |
230 } | 230 } |
231 vda_->Reset(); | 231 vda_->Reset(); |
232 } | 232 } |
233 | 233 |
234 void ArcGpuVideoDecodeAccelerator::ProvidePictureBuffers( | 234 void ArcGpuVideoDecodeAccelerator::ProvidePictureBuffers( |
235 uint32_t requested_num_of_buffers, | 235 uint32_t requested_num_of_buffers, |
| 236 media::VideoPixelFormat output_format, |
236 uint32_t textures_per_buffer, | 237 uint32_t textures_per_buffer, |
237 const gfx::Size& dimensions, | 238 const gfx::Size& dimensions, |
238 uint32_t texture_target) { | 239 uint32_t texture_target) { |
239 DVLOG(5) << "ProvidePictureBuffers(" | 240 DVLOG(5) << "ProvidePictureBuffers(" |
240 << "requested_num_of_buffers=" << requested_num_of_buffers | 241 << "requested_num_of_buffers=" << requested_num_of_buffers |
241 << ", dimensions=" << dimensions.ToString() << ")"; | 242 << ", dimensions=" << dimensions.ToString() << ")"; |
242 DCHECK(thread_checker_.CalledOnValidThread()); | 243 DCHECK(thread_checker_.CalledOnValidThread()); |
243 coded_size_ = dimensions; | 244 coded_size_ = dimensions; |
244 | 245 |
245 VideoFormat video_format; | 246 VideoFormat video_format; |
246 media::VideoPixelFormat output_format = vda_->GetOutputFormat(); | |
247 switch (output_format) { | 247 switch (output_format) { |
248 case media::PIXEL_FORMAT_I420: | 248 case media::PIXEL_FORMAT_I420: |
249 case media::PIXEL_FORMAT_YV12: | 249 case media::PIXEL_FORMAT_YV12: |
250 case media::PIXEL_FORMAT_NV12: | 250 case media::PIXEL_FORMAT_NV12: |
251 case media::PIXEL_FORMAT_NV21: | 251 case media::PIXEL_FORMAT_NV21: |
252 // HAL_PIXEL_FORMAT_YCbCr_420_888 is the flexible pixel format in Android | 252 // HAL_PIXEL_FORMAT_YCbCr_420_888 is the flexible pixel format in Android |
253 // which handles all 420 formats, with both orderings of chroma (CbCr and | 253 // which handles all 420 formats, with both orderings of chroma (CbCr and |
254 // CrCb) as well as planar and semi-planar layouts. | 254 // CrCb) as well as planar and semi-planar layouts. |
255 video_format.pixel_format = HAL_PIXEL_FORMAT_YCbCr_420_888; | 255 video_format.pixel_format = HAL_PIXEL_FORMAT_YCbCr_420_888; |
256 break; | 256 break; |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
417 } | 417 } |
418 return true; | 418 return true; |
419 default: | 419 default: |
420 DLOG(ERROR) << "Invalid port: " << port; | 420 DLOG(ERROR) << "Invalid port: " << port; |
421 return false; | 421 return false; |
422 } | 422 } |
423 } | 423 } |
424 | 424 |
425 } // namespace arc | 425 } // namespace arc |
426 } // namespace chromeos | 426 } // namespace chromeos |
OLD | NEW |