Chromium Code Reviews| Index: chrome/browser/media/router/mojo/media_status.mojom |
| diff --git a/chrome/browser/media/router/mojo/media_status.mojom b/chrome/browser/media/router/mojo/media_status.mojom |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..30398f5c8cd47ef84ad7ddaeb10a8b8c890ac1ee |
| --- /dev/null |
| +++ b/chrome/browser/media/router/mojo/media_status.mojom |
| @@ -0,0 +1,50 @@ |
| +// Copyright 2017 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. |
| + |
| +module media_router.mojom; |
| + |
| +// Represents the current state of a media content. This struct should be kept |
| +// free of details specific to Media Router, so that it can be moved to the |
| +// media namespace and be reused for other features in the future. |
| +struct MediaStatus { |
| + // The main title of the media. For example, in a MediaStatus representing |
| + // a YouTube Cast session, this could be the title of the video. |
| + string title; |
| + // Text describing the status of the media, or a secondary title. For example, |
| + // in a MediaStatus representing a YouTube Cast session, this could be |
| + // "YouTube". |
| + string status; |
| + // If this is true, the media can be played and paused through its |
| + // MediaController. |
| + bool can_play_pause; |
| + // If this is true, the media can be muted and unmuted through its |
| + // MediaController. |
| + bool can_mute; |
| + // If this is true, the media's volume can be changed through its |
| + // MediaController. |
| + bool can_set_volume; |
| + // If this is true, the media's current playback position can be changed |
| + // through its MediaController. |
| + bool can_seek; |
| + bool is_paused; |
| + bool is_muted; |
| + // Current volume of the media, with 1 being the highest and 0 being the |
| + // lowest/no sound. When |is_muted| is true, there should be no sound |
| + // regardless of |volume|. |
| + float volume; |
| + // The length of the media in milliseconds. A value of 0 indicates that this |
| + // is a media with no set duration (e.g. a live stream). |
| + uint32 duration; |
|
dcheng
2017/03/08 01:08:20
Can we use mojo.common.mojom.TimeDelta from https:
takumif
2017/03/08 04:24:03
Done.
|
| + // Current playback position in milliseconds. Must be less than or equal to |
| + // |duration|. |
| + uint32 current_time; |
|
dcheng
2017/03/08 01:08:20
Same here.
takumif
2017/03/08 04:24:03
Done.
|
| +}; |
| + |
| +// Interface for being notified whenever the MediaStatus of a media changes. |
| +// This interface should be kept free of details specific to Media Router, so |
| +// that it can be moved to the media namespace and be reused for other features |
| +// in the future. |
| +interface MediaStatusObserver { |
| + OnMediaStatusUpdated(MediaStatus status); |
| +}; |