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 module media.mojom; | 5 module media.mojom; |
6 | 6 |
7 import "media/mojo/interfaces/demuxer_stream.mojom"; | 7 import "media/mojo/interfaces/demuxer_stream.mojom"; |
8 import "media/mojo/interfaces/media_types.mojom"; | 8 import "media/mojo/interfaces/media_types.mojom"; |
9 import "ui/gfx/geometry/mojo/geometry.mojom"; | 9 import "ui/gfx/geometry/mojo/geometry.mojom"; |
10 | 10 |
11 interface Renderer { | 11 interface Renderer { |
12 // Initializes the Renderer with one or both of an audio and video stream, | 12 // Initializes the Renderer with one or both of an audio and video stream, |
13 // executing the callback with whether the initialization succeeded. | 13 // executing the callback with whether the initialization succeeded. |
14 // Audio stream will be played on device_id, which is defined in | |
15 // media/audio/audio_device_description.h. | |
14 Initialize(RendererClient client, | 16 Initialize(RendererClient client, |
15 DemuxerStream? audio, | 17 DemuxerStream? audio, |
16 DemuxerStream? video) => (bool success); | 18 DemuxerStream? video, |
19 string device_id) => (bool success); | |
alokp
2016/05/27 04:43:08
It is possible to target a particular device when
xhwang
2016/05/27 06:06:35
+dalecurtis
I am not super familiar with audio, b
alokp
2016/05/27 18:31:01
In that case you would provide an AudioRendererSin
| |
17 | 20 |
18 // Discards any buffered data, executing callback when completed. | 21 // Discards any buffered data, executing callback when completed. |
19 // NOTE: If an error occurs, RendererClient::OnError() can be called | 22 // NOTE: If an error occurs, RendererClient::OnError() can be called |
20 // before the callback is executed. | 23 // before the callback is executed. |
21 Flush() => (); | 24 Flush() => (); |
22 | 25 |
23 // Starts rendering from |time_usec|. | 26 // Starts rendering from |time_usec|. |
24 StartPlayingFrom(int64 time_usec); | 27 StartPlayingFrom(int64 time_usec); |
25 | 28 |
26 // Updates the current playback rate. The default playback rate should be 1. | 29 // Updates the current playback rate. The default playback rate should be 1. |
(...skipping 26 matching lines...) Expand all Loading... | |
53 // this error happens during an operation that has a completion callback, | 56 // this error happens during an operation that has a completion callback, |
54 // OnError() will be called before firing the completion callback. | 57 // OnError() will be called before firing the completion callback. |
55 OnError(); | 58 OnError(); |
56 | 59 |
57 // Executed for the first video frame and whenever natural size changes. | 60 // Executed for the first video frame and whenever natural size changes. |
58 OnVideoNaturalSizeChange(mojo.Size size); | 61 OnVideoNaturalSizeChange(mojo.Size size); |
59 | 62 |
60 // Executed for the first video frame and whenever opacity changes. | 63 // Executed for the first video frame and whenever opacity changes. |
61 OnVideoOpacityChange(bool opaque); | 64 OnVideoOpacityChange(bool opaque); |
62 }; | 65 }; |
OLD | NEW |