| Index: mojo/services/media/control/interfaces/media_factory.mojom
|
| diff --git a/mojo/services/media/control/interfaces/media_factory.mojom b/mojo/services/media/control/interfaces/media_factory.mojom
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..826ce0708681c86f32295bcdb99cec2324cc6c5d
|
| --- /dev/null
|
| +++ b/mojo/services/media/control/interfaces/media_factory.mojom
|
| @@ -0,0 +1,34 @@
|
| +// Copyright 2015 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +[DartPackage="mojo_services"]
|
| +module mojo.media;
|
| +
|
| +import "mojo/services/media/common/interfaces/media_types.mojom";
|
| +import "mojo/services/media/control/interfaces/media_player.mojom";
|
| +import "mojo/services/media/control/interfaces/media_sink.mojom";
|
| +import "mojo/services/media/control/interfaces/media_source.mojom";
|
| +
|
| +// Exposed by the factory service to create media-related agents.
|
| +[ServiceName="mojo::media::MediaFactory"]
|
| +interface MediaFactory {
|
| + // Creates a player.
|
| + // TODO(dalesat): Add means of specifying destinations.
|
| + CreatePlayer(string origin_url, MediaPlayer& player);
|
| +
|
| + // Creates a source. If allowed_media_types is supplied, conversions will be
|
| + // added to each stream as needed to make the media type of the stream match
|
| + // one of the allowed types. If a stream cannot be converted to one of the
|
| + // allowed types, its media type will have the scheme NONE, and the stream
|
| + // will not be usable.
|
| + CreateSource(
|
| + string origin_url,
|
| + array<MediaTypeSet>? allowed_media_types,
|
| + MediaSource& source);
|
| +
|
| + // Creates a sink. Conversions are added to the pipeline as appropriate to
|
| + // convert the indicated media type to a type compatible with the
|
| + // destination.
|
| + CreateSink(string destination_url, MediaType media_type, MediaSink& sink);
|
| +};
|
|
|