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

Side by Side Diff: mojo/services/media/control/interfaces/media_factory.mojom

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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 [DartPackage="mojo_services"] 5 [DartPackage="mojo_services"]
6 module mojo.media; 6 module mojo.media;
7 7
8 import "mojo/services/media/common/interfaces/media_types.mojom"; 8 import "mojo/services/media/common/interfaces/media_types.mojom";
9 import "mojo/services/media/control/interfaces/media_player.mojom"; 9 import "mojo/services/media/control/interfaces/media_player.mojom";
10 import "mojo/services/media/control/interfaces/media_sink.mojom"; 10 import "mojo/services/media/control/interfaces/media_sink.mojom";
11 import "mojo/services/media/control/interfaces/media_source.mojom"; 11 import "mojo/services/media/control/interfaces/media_source.mojom";
12 import "mojo/services/media/core/interfaces/media_demux.mojom"; 12 import "mojo/services/media/core/interfaces/media_demux.mojom";
13 import "mojo/services/media/core/interfaces/media_renderer.mojom";
13 import "mojo/services/media/core/interfaces/media_type_converter.mojom"; 14 import "mojo/services/media/core/interfaces/media_type_converter.mojom";
14 import "mojo/services/media/core/interfaces/seeking_reader.mojom"; 15 import "mojo/services/media/core/interfaces/seeking_reader.mojom";
15 import "mojo/services/media/core/interfaces/timeline_controller.mojom"; 16 import "mojo/services/media/core/interfaces/timeline_controller.mojom";
16 17
17 // Exposed by the factory service to create media-related agents. 18 // Exposed by the factory service to create media-related agents.
18 [ServiceName="mojo::media::MediaFactory"] 19 [ServiceName="mojo::media::MediaFactory"]
19 interface MediaFactory { 20 interface MediaFactory {
20 // Creates a player. 21 // Creates a player.
21 // TODO(dalesat): Add means of specifying destinations. 22 CreatePlayer(SeekingReader reader,
22 CreatePlayer(SeekingReader reader, MediaPlayer& player); 23 MediaRenderer? audio_renderer,
24 MediaRenderer? video_renderer,
25 MediaPlayer& player);
23 26
24 // Creates a source. If allowed_media_types is supplied, conversions will be 27 // Creates a source. If allowed_media_types is supplied, conversions will be
25 // added to each stream as needed to make the media type of the stream match 28 // added to each stream as needed to make the media type of the stream match
26 // one of the allowed types. If a stream cannot be converted to one of the 29 // one of the allowed types. If a stream cannot be converted to one of the
27 // allowed types, its media type will have the scheme NONE, and the stream 30 // allowed types, its media type will have the scheme NONE, and the stream
28 // will not be usable. 31 // will not be usable.
29 CreateSource(SeekingReader reader, 32 CreateSource(SeekingReader reader,
30 array<MediaTypeSet>? allowed_media_types, 33 array<MediaTypeSet>? allowed_media_types,
31 MediaSource& source); 34 MediaSource& source);
32 35
33 // Creates a sink. Conversions are added to the pipeline as appropriate to 36 // Creates a sink. Conversions are added to the pipeline as appropriate to
34 // convert the indicated media type to a type compatible with the 37 // convert a media type supported by the renderer.
35 // destination. 38 CreateSink(MediaRenderer? renderer,
36 CreateSink(string destination_url, MediaType media_type, MediaSink& sink); 39 MediaType media_type,
40 MediaSink& sink);
37 41
38 // Creates a demux. 42 // Creates a demux.
39 CreateDemux(SeekingReader reader, MediaDemux& demux); 43 CreateDemux(SeekingReader reader, MediaDemux& demux);
40 44
41 // Creates a decoder. 45 // Creates a decoder.
42 CreateDecoder(MediaType input_media_type, MediaTypeConverter& decoder); 46 CreateDecoder(MediaType input_media_type, MediaTypeConverter& decoder);
43 47
44 // Creates a network reader. 48 // Creates a network reader.
45 CreateNetworkReader(string url, SeekingReader& reader); 49 CreateNetworkReader(string url, SeekingReader& reader);
46 50
47 // Creates a timeline controller reader. 51 // Creates a timeline controller reader.
48 CreateTimelineController(MediaTimelineController& timeline_controller); 52 CreateTimelineController(MediaTimelineController& timeline_controller);
49 }; 53 };
OLDNEW
« no previous file with comments | « mojo/services/media/audio/interfaces/audio_track.mojom ('k') | mojo/services/media/core/interfaces/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698