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

Side by Side Diff: services/media/factory_service/factory_service.cc

Issue 2069873003: Motown: Define MediaRenderer and make it the way we identify renderers. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Fix build break...audio_track_controller.* gone for good. Created 4 years, 6 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 "services/media/factory_service/factory_service.h" 5 #include "services/media/factory_service/factory_service.h"
6 6
7 #include "mojo/public/cpp/application/service_provider_impl.h" 7 #include "mojo/public/cpp/application/service_provider_impl.h"
8 #include "services/media/factory_service/media_decoder_impl.h" 8 #include "services/media/factory_service/media_decoder_impl.h"
9 #include "services/media/factory_service/media_demux_impl.h" 9 #include "services/media/factory_service/media_demux_impl.h"
10 #include "services/media/factory_service/media_player_impl.h" 10 #include "services/media/factory_service/media_player_impl.h"
(...skipping 12 matching lines...) Expand all
23 bool MediaFactoryService::OnAcceptConnection( 23 bool MediaFactoryService::OnAcceptConnection(
24 ServiceProviderImpl* service_provider_impl) { 24 ServiceProviderImpl* service_provider_impl) {
25 service_provider_impl->AddService<MediaFactory>( 25 service_provider_impl->AddService<MediaFactory>(
26 [this](const ConnectionContext& connection_context, 26 [this](const ConnectionContext& connection_context,
27 InterfaceRequest<MediaFactory> media_factory_request) { 27 InterfaceRequest<MediaFactory> media_factory_request) {
28 bindings_.AddBinding(this, media_factory_request.Pass()); 28 bindings_.AddBinding(this, media_factory_request.Pass());
29 }); 29 });
30 return true; 30 return true;
31 } 31 }
32 32
33 void MediaFactoryService::CreatePlayer(InterfaceHandle<SeekingReader> reader, 33 void MediaFactoryService::CreatePlayer(
34 InterfaceRequest<MediaPlayer> player) { 34 InterfaceHandle<SeekingReader> reader,
35 AddProduct(MediaPlayerImpl::Create(reader.Pass(), player.Pass(), this)); 35 InterfaceHandle<MediaRenderer> audio_renderer,
36 InterfaceHandle<MediaRenderer> video_renderer,
37 InterfaceRequest<MediaPlayer> player) {
38 AddProduct(MediaPlayerImpl::Create(reader.Pass(), audio_renderer.Pass(),
39 video_renderer.Pass(), player.Pass(),
40 this));
36 } 41 }
37 42
38 void MediaFactoryService::CreateSource(InterfaceHandle<SeekingReader> reader, 43 void MediaFactoryService::CreateSource(InterfaceHandle<SeekingReader> reader,
39 Array<MediaTypeSetPtr> media_types, 44 Array<MediaTypeSetPtr> media_types,
40 InterfaceRequest<MediaSource> source) { 45 InterfaceRequest<MediaSource> source) {
41 AddProduct( 46 AddProduct(
42 MediaSourceImpl::Create(reader.Pass(), media_types, source.Pass(), this)); 47 MediaSourceImpl::Create(reader.Pass(), media_types, source.Pass(), this));
43 } 48 }
44 49
45 void MediaFactoryService::CreateSink(const String& destination_url, 50 void MediaFactoryService::CreateSink(InterfaceHandle<MediaRenderer> renderer,
46 MediaTypePtr media_type, 51 MediaTypePtr media_type,
47 InterfaceRequest<MediaSink> sink) { 52 InterfaceRequest<MediaSink> sink) {
48 AddProduct(MediaSinkImpl::Create(destination_url, media_type.Pass(), 53 AddProduct(MediaSinkImpl::Create(renderer.Pass(), media_type.Pass(),
49 sink.Pass(), this)); 54 sink.Pass(), this));
50 } 55 }
51 56
52 void MediaFactoryService::CreateDemux(InterfaceHandle<SeekingReader> reader, 57 void MediaFactoryService::CreateDemux(InterfaceHandle<SeekingReader> reader,
53 InterfaceRequest<MediaDemux> demux) { 58 InterfaceRequest<MediaDemux> demux) {
54 AddProduct(MediaDemuxImpl::Create(reader.Pass(), demux.Pass(), this)); 59 AddProduct(MediaDemuxImpl::Create(reader.Pass(), demux.Pass(), this));
55 } 60 }
56 61
57 void MediaFactoryService::CreateDecoder( 62 void MediaFactoryService::CreateDecoder(
58 MediaTypePtr input_media_type, 63 MediaTypePtr input_media_type,
59 InterfaceRequest<MediaTypeConverter> decoder) { 64 InterfaceRequest<MediaTypeConverter> decoder) {
60 AddProduct( 65 AddProduct(
61 MediaDecoderImpl::Create(input_media_type.Pass(), decoder.Pass(), this)); 66 MediaDecoderImpl::Create(input_media_type.Pass(), decoder.Pass(), this));
62 } 67 }
63 68
64 void MediaFactoryService::CreateNetworkReader( 69 void MediaFactoryService::CreateNetworkReader(
65 const String& url, 70 const String& url,
66 InterfaceRequest<SeekingReader> reader) { 71 InterfaceRequest<SeekingReader> reader) {
67 AddProduct(NetworkReaderImpl::Create(url, reader.Pass(), this)); 72 AddProduct(NetworkReaderImpl::Create(url, reader.Pass(), this));
68 } 73 }
69 74
70 void MediaFactoryService::CreateTimelineController( 75 void MediaFactoryService::CreateTimelineController(
71 InterfaceRequest<MediaTimelineController> timeline_controller) { 76 InterfaceRequest<MediaTimelineController> timeline_controller) {
72 AddProduct( 77 AddProduct(
73 MediaTimelineControllerImpl::Create(timeline_controller.Pass(), this)); 78 MediaTimelineControllerImpl::Create(timeline_controller.Pass(), this));
74 } 79 }
75 80
76 } // namespace media 81 } // namespace media
77 } // namespace mojo 82 } // namespace mojo
OLDNEW
« no previous file with comments | « services/media/factory_service/factory_service.h ('k') | services/media/factory_service/media_player_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698