OLD | NEW |
| (Empty) |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 module media_router.mojom; | |
6 | |
7 import "chrome/browser/media/router/mojo/media_status.mojom"; | |
8 import "mojo/common/time.mojom"; | |
9 | |
10 // Interface for a controller to change the current state of a media content. | |
11 // This interface should be kept free of details specific to Media Router, so | |
12 // that it can be moved to the media namespace and be reused for other features | |
13 // in the future. | |
14 interface MediaController { | |
15 // Starts playing the media if it is paused. Is a no-op if not supported by | |
16 // the media or the media is already playing. | |
17 Play(); | |
18 | |
19 // Pauses the media if it is playing. Is a no-op if not supported by the media | |
20 // or the media is already paused. | |
21 Pause(); | |
22 | |
23 // Mutes the media if |mute| is true, and unmutes it if false. Is a no-op if | |
24 // not supported by the media. | |
25 SetMute(bool mute); | |
26 | |
27 // Changes the current volume of the media, with 1 being the highest and 0 | |
28 // being the lowest/no sound. Does not change the (un)muted state of the | |
29 // media. Is a no-op if not supported by the media. | |
30 SetVolume(float volume); | |
31 | |
32 // Sets the current playback position. |time| must be less than or equal to | |
33 // the duration of the media. Is a no-op if the media doesn't support seeking. | |
34 Seek(mojo.common.mojom.TimeDelta time); | |
35 }; | |
OLD | NEW |