OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chromecast/media/cma/pipeline/video_pipeline_impl.h" | 5 #include "chromecast/media/cma/pipeline/video_pipeline_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <utility> |
8 | 9 |
9 #include "base/bind.h" | 10 #include "base/bind.h" |
10 #include "chromecast/media/cdm/browser_cdm_cast.h" | 11 #include "chromecast/media/cdm/browser_cdm_cast.h" |
11 #include "chromecast/media/cma/base/buffering_defs.h" | 12 #include "chromecast/media/cma/base/buffering_defs.h" |
12 #include "chromecast/media/cma/base/cma_logging.h" | 13 #include "chromecast/media/cma/base/cma_logging.h" |
13 #include "chromecast/media/cma/base/coded_frame_provider.h" | 14 #include "chromecast/media/cma/base/coded_frame_provider.h" |
14 #include "chromecast/media/cma/base/decoder_config_adapter.h" | 15 #include "chromecast/media/cma/base/decoder_config_adapter.h" |
15 #include "chromecast/media/cma/pipeline/av_pipeline_impl.h" | 16 #include "chromecast/media/cma/pipeline/av_pipeline_impl.h" |
16 #include "chromecast/public/graphics_types.h" | 17 #include "chromecast/public/graphics_types.h" |
17 #include "chromecast/public/media/decoder_config.h" | 18 #include "chromecast/public/media/decoder_config.h" |
(...skipping 22 matching lines...) Expand all Loading... |
40 const std::vector<::media::VideoDecoderConfig>& configs, | 41 const std::vector<::media::VideoDecoderConfig>& configs, |
41 scoped_ptr<CodedFrameProvider> frame_provider, | 42 scoped_ptr<CodedFrameProvider> frame_provider, |
42 const ::media::PipelineStatusCB& status_cb) { | 43 const ::media::PipelineStatusCB& status_cb) { |
43 DCHECK_GT(configs.size(), 0u); | 44 DCHECK_GT(configs.size(), 0u); |
44 for (const auto& config : configs) { | 45 for (const auto& config : configs) { |
45 CMALOG(kLogControl) << __FUNCTION__ << " " | 46 CMALOG(kLogControl) << __FUNCTION__ << " " |
46 << config.AsHumanReadableString(); | 47 << config.AsHumanReadableString(); |
47 } | 48 } |
48 | 49 |
49 if (frame_provider) { | 50 if (frame_provider) { |
50 SetCodedFrameProvider(frame_provider.Pass(), kAppVideoBufferSize, | 51 SetCodedFrameProvider(std::move(frame_provider), kAppVideoBufferSize, |
51 kMaxVideoFrameSize); | 52 kMaxVideoFrameSize); |
52 } | 53 } |
53 | 54 |
54 if (configs.empty()) { | 55 if (configs.empty()) { |
55 status_cb.Run(::media::PIPELINE_ERROR_INITIALIZATION_FAILED); | 56 status_cb.Run(::media::PIPELINE_ERROR_INITIALIZATION_FAILED); |
56 return; | 57 return; |
57 } | 58 } |
58 DCHECK(configs.size() <= 2); | 59 DCHECK(configs.size() <= 2); |
59 DCHECK(configs[0].IsValidConfig()); | 60 DCHECK(configs[0].IsValidConfig()); |
60 VideoConfig video_config = | 61 VideoConfig video_config = |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
119 delta_stats.video_frames_dropped = | 120 delta_stats.video_frames_dropped = |
120 current_stats.video_frames_dropped - previous_stats_.video_frames_dropped; | 121 current_stats.video_frames_dropped - previous_stats_.video_frames_dropped; |
121 | 122 |
122 previous_stats_ = current_stats; | 123 previous_stats_ = current_stats; |
123 | 124 |
124 client().statistics_cb.Run(delta_stats); | 125 client().statistics_cb.Run(delta_stats); |
125 } | 126 } |
126 | 127 |
127 } // namespace media | 128 } // namespace media |
128 } // namespace chromecast | 129 } // namespace chromecast |
OLD | NEW |