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

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

Issue 1809703003: Motown: Add examples/media_test, a command line media player app. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Tweaks based on feedback. Created 4 years, 9 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_metadata.mojom"; 8 import "mojo/services/media/common/interfaces/media_metadata.mojom";
9 import "mojo/services/media/common/interfaces/media_state.mojom"; 9 import "mojo/services/media/common/interfaces/media_state.mojom";
10 import "mojo/services/media/common/interfaces/rate_control.mojom"; 10 import "mojo/services/media/common/interfaces/rate_control.mojom";
11 11
12 // Plays media. 12 // Plays media.
13 interface MediaPlayer { 13 interface MediaPlayer {
14 // Special value for GetStatus version_last_seen parameter to get the current
15 // status immediately.
16 const uint64 kInitialStatus = 0;
17
14 // Starts playback. 18 // Starts playback.
15 Play(); 19 Play();
16 20
17 // Pauses playback. 21 // Pauses playback.
18 Pause(); 22 Pause();
19 23
20 // Seeks to the specified position, specified in nanoseconds. 24 // Seeks to the specified position, specified in nanoseconds.
21 // TODO(dalesat): Consider adding relative vs remote flag. 25 // TODO(dalesat): Consider adding relative vs remote flag.
22 // TODO(dalesat): Consider adding parameters regarding desired precision. 26 // TODO(dalesat): Consider adding parameters regarding desired precision.
23 Seek(int64 position); 27 Seek(int64 position);
24 28
25 // Gets the status. To get the status immediately, call GetStatus(0). To 29 // Gets the status. To get the status immediately, call
26 // get updates thereafter, pass the version sent in the previous callback. 30 // GetStatus(kInitialStatus). To get updates thereafter, pass the version
31 // sent in the previous callback.
27 GetStatus(uint64 version_last_seen) => 32 GetStatus(uint64 version_last_seen) =>
28 (uint64 version, MediaPlayerStatus status); 33 (uint64 version, MediaPlayerStatus status);
29 }; 34 };
30 35
31 // MediaPlayer status information. 36 // MediaPlayer status information.
32 struct MediaPlayerStatus { 37 struct MediaPlayerStatus {
33 // Current state of the player. 38 // Current state of the player.
34 MediaState state; 39 MediaState state;
35 40
36 // Transform translating local time to presentation time. Reverse translation 41 // Transform translating local time to presentation time. Reverse translation
37 // (presentation time to local time) is only valid when media is playing. 42 // (presentation time to local time) is only valid when media is playing.
38 TimelineTransform? timeline_transform; 43 TimelineTransform? timeline_transform;
39 44
40 // Describes the media. 45 // Describes the media.
41 MediaMetadata? metadata; 46 MediaMetadata? metadata;
42 }; 47 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698