Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1389)

Side by Side Diff: media/mojo/clients/mojo_decoder_factory.cc

Issue 2871503002: Remove ScopedVector from audio/video renderer related code in media/ (Closed)
Patch Set: Address xhwang's comments and delete some useless includes Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "media/mojo/clients/mojo_decoder_factory.h" 5 #include "media/mojo/clients/mojo_decoder_factory.h"
6 6
7 #include "base/memory/ptr_util.h"
7 #include "base/single_thread_task_runner.h" 8 #include "base/single_thread_task_runner.h"
8 #include "media/mojo/clients/mojo_audio_decoder.h" 9 #include "media/mojo/clients/mojo_audio_decoder.h"
9 #include "media/mojo/clients/mojo_video_decoder.h" 10 #include "media/mojo/clients/mojo_video_decoder.h"
10 #include "media/mojo/interfaces/audio_decoder.mojom.h" 11 #include "media/mojo/interfaces/audio_decoder.mojom.h"
11 #include "services/service_manager/public/cpp/connect.h" 12 #include "services/service_manager/public/cpp/connect.h"
12 13
13 namespace media { 14 namespace media {
14 15
15 MojoDecoderFactory::MojoDecoderFactory( 16 MojoDecoderFactory::MojoDecoderFactory(
16 service_manager::mojom::InterfaceProvider* interface_provider) 17 service_manager::mojom::InterfaceProvider* interface_provider)
17 : interface_provider_(interface_provider) { 18 : interface_provider_(interface_provider) {
18 DCHECK(interface_provider_); 19 DCHECK(interface_provider_);
19 } 20 }
20 21
21 MojoDecoderFactory::~MojoDecoderFactory() {} 22 MojoDecoderFactory::~MojoDecoderFactory() {}
22 23
23 void MojoDecoderFactory::CreateAudioDecoders( 24 void MojoDecoderFactory::CreateAudioDecoders(
24 scoped_refptr<base::SingleThreadTaskRunner> task_runner, 25 scoped_refptr<base::SingleThreadTaskRunner> task_runner,
25 ScopedVector<AudioDecoder>* audio_decoders) { 26 std::vector<std::unique_ptr<AudioDecoder>>* audio_decoders) {
26 #if defined(ENABLE_MOJO_AUDIO_DECODER) 27 #if defined(ENABLE_MOJO_AUDIO_DECODER)
27 mojom::AudioDecoderPtr audio_decoder_ptr; 28 mojom::AudioDecoderPtr audio_decoder_ptr;
28 service_manager::GetInterface<mojom::AudioDecoder>(interface_provider_, 29 service_manager::GetInterface<mojom::AudioDecoder>(interface_provider_,
29 &audio_decoder_ptr); 30 &audio_decoder_ptr);
30 31
31 audio_decoders->push_back( 32 audio_decoders->push_back(base::MakeUnique<MojoAudioDecoder>(
32 new MojoAudioDecoder(task_runner, std::move(audio_decoder_ptr))); 33 task_runner, std::move(audio_decoder_ptr)));
33 #endif 34 #endif
34 } 35 }
35 36
36 void MojoDecoderFactory::CreateVideoDecoders( 37 void MojoDecoderFactory::CreateVideoDecoders(
37 scoped_refptr<base::SingleThreadTaskRunner> task_runner, 38 scoped_refptr<base::SingleThreadTaskRunner> task_runner,
38 GpuVideoAcceleratorFactories* gpu_factories, 39 GpuVideoAcceleratorFactories* gpu_factories,
39 ScopedVector<VideoDecoder>* video_decoders) { 40 std::vector<std::unique_ptr<VideoDecoder>>* video_decoders) {
40 #if defined(ENABLE_MOJO_VIDEO_DECODER) 41 #if defined(ENABLE_MOJO_VIDEO_DECODER)
41 mojom::VideoDecoderPtr remote_decoder; 42 mojom::VideoDecoderPtr remote_decoder;
42 service_manager::GetInterface<mojom::VideoDecoder>(interface_provider_, 43 service_manager::GetInterface<mojom::VideoDecoder>(interface_provider_,
43 &remote_decoder); 44 &remote_decoder);
44 video_decoders->push_back(new MojoVideoDecoder(task_runner, gpu_factories, 45 video_decoders->push_back(base::MakeUnique<MojoVideoDecoder>(
45 std::move(remote_decoder))); 46 task_runner, gpu_factories, std::move(remote_decoder)));
46 #endif 47 #endif
47 } 48 }
48 49
49 } // namespace media 50 } // namespace media
OLDNEW
« no previous file with comments | « media/mojo/clients/mojo_decoder_factory.h ('k') | media/renderers/audio_renderer_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698