OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/filters/gpu_video_decoder.h" | 5 #include "media/filters/gpu_video_decoder.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 594 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
605 base::Bind(&ReleaseMailboxTrampoline, factories_->GetTaskRunner(), | 605 base::Bind(&ReleaseMailboxTrampoline, factories_->GetTaskRunner(), |
606 base::Bind(&GpuVideoDecoder::ReleaseMailbox, | 606 base::Bind(&GpuVideoDecoder::ReleaseMailbox, |
607 weak_factory_.GetWeakPtr(), factories_, | 607 weak_factory_.GetWeakPtr(), factories_, |
608 picture.picture_buffer_id(), pb.texture_ids())), | 608 picture.picture_buffer_id(), pb.texture_ids())), |
609 pb.size(), visible_rect, natural_size, timestamp)); | 609 pb.size(), visible_rect, natural_size, timestamp)); |
610 if (!frame) { | 610 if (!frame) { |
611 DLOG(ERROR) << "Create frame failed for: " << picture.picture_buffer_id(); | 611 DLOG(ERROR) << "Create frame failed for: " << picture.picture_buffer_id(); |
612 NotifyError(VideoDecodeAccelerator::PLATFORM_FAILURE); | 612 NotifyError(VideoDecodeAccelerator::PLATFORM_FAILURE); |
613 return; | 613 return; |
614 } | 614 } |
| 615 frame->set_color_space(picture.color_space()); |
615 if (picture.allow_overlay()) | 616 if (picture.allow_overlay()) |
616 frame->metadata()->SetBoolean(VideoFrameMetadata::ALLOW_OVERLAY, true); | 617 frame->metadata()->SetBoolean(VideoFrameMetadata::ALLOW_OVERLAY, true); |
617 #if defined(OS_MACOSX) || defined(OS_WIN) | 618 #if defined(OS_MACOSX) || defined(OS_WIN) |
618 frame->metadata()->SetBoolean(VideoFrameMetadata::DECODER_OWNS_FRAME, true); | 619 frame->metadata()->SetBoolean(VideoFrameMetadata::DECODER_OWNS_FRAME, true); |
619 #endif | 620 #endif |
620 | 621 |
621 if (requires_texture_copy_) | 622 if (requires_texture_copy_) |
622 frame->metadata()->SetBoolean(VideoFrameMetadata::COPY_REQUIRED, true); | 623 frame->metadata()->SetBoolean(VideoFrameMetadata::COPY_REQUIRED, true); |
623 | 624 |
624 CHECK_GT(available_pictures_, 0); | 625 CHECK_GT(available_pictures_, 0); |
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
827 } | 828 } |
828 return false; | 829 return false; |
829 } | 830 } |
830 | 831 |
831 void GpuVideoDecoder::DCheckGpuVideoAcceleratorFactoriesTaskRunnerIsCurrent() | 832 void GpuVideoDecoder::DCheckGpuVideoAcceleratorFactoriesTaskRunnerIsCurrent() |
832 const { | 833 const { |
833 DCHECK(factories_->GetTaskRunner()->BelongsToCurrentThread()); | 834 DCHECK(factories_->GetTaskRunner()->BelongsToCurrentThread()); |
834 } | 835 } |
835 | 836 |
836 } // namespace media | 837 } // namespace media |
OLD | NEW |