From: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
To: linux-bluetooth@vger.kernel.org
Subject: [PATCH BlueZ 01/13 v2] media-api: Add playback control methods to MediaPlayer1
Date: Thu, 10 Jan 2013 15:37:06 +0200 [thread overview]
Message-ID: <1357825038-21970-1-git-send-email-luiz.dentz@gmail.com> (raw)
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
This adds methods such as Play, Pause directly in MediaPlayer1, in
addition to that Track is now turn into a property to take advantage of
ObjectManager and document the interface as experimental.
---
v2: Fix removing experimental flags, add patches to mpris-player and remove
VolumeUp and VolumeDown as they don't make sense to controller to send them.
doc/media-api.txt | 99 +++++++++++++++++++++++++++++--------------------------
1 file changed, 53 insertions(+), 46 deletions(-)
diff --git a/doc/media-api.txt b/doc/media-api.txt
index bb5ced0..ae4b0dd 100644
--- a/doc/media-api.txt
+++ b/doc/media-api.txt
@@ -129,7 +129,7 @@ Media Control hierarchy
=======================
Service org.bluez
-Interface org.bluez.MediaControl1
+Interface org.bluez.MediaControl1 [Deprecated]
Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
Methods void Play()
@@ -178,65 +178,39 @@ Properties
MediaPlayer1 hierarchy
======================
-Service unique name (Target role)
-Interface org.bluez.MediaPlayer1
-Object path freely definable
-
Service org.bluez (Controller role)
-Interface org.bluez.MediaPlayer1
+Interface org.bluez.MediaPlayer1 [Experimental]
Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/playerX
-Methods dict GetTrack()
-
- Returns known metadata of the current track.
-
- See TrackChanged for possible values.
-
- void Release()
-
- This method gets called when the service daemon
- unregisters the player which can then perform
- cleanup tasks. There is no need to unregister the
- player, because when this method gets called it has
- already been unregistered.
-
-Signals TrackChanged(dict metadata)
-
- This signal indicates that current track has changed.
- All available metadata for the new track shall be set
- at once in the metadata argument. Metadata cannot be
- updated in parts, otherwise it will be interpreted as
- multiple track changes.
-
- Possible values:
-
- string Title:
+Methods void Play()
- Track title name
+ Resume playback.
- string Artist:
+ void Pause()
- Track artist name
+ Pause playback.
- string Album:
+ void Stop()
- Track album name
+ Stop playback.
- string Genre:
+ void Next()
- Track genre name
+ Next item.
- uint32 NumberOfTracks:
+ void Previous()
- Number of tracks in total
+ Previous item.
- uint32 Number:
+ void FastForward()
- Track number
+ Fast forward playback, this action is only stopped
+ when another method in this interface is called.
- uint32 Duration:
+ void Rewind()
- Track duration in milliseconds
+ Rewind playback, this action is only stopped
+ when another method in this interface is called.
Properties string Equalizer [readwrite]
@@ -258,8 +232,8 @@ Properties string Equalizer [readwrite]
string Status [readonly]
Possible status: "playing", "stopped", "paused",
- "forward-seek", "reverse-seek" or
- "error"
+ "forward-seek", "reverse-seek"
+ or "error"
uint32 Position [readonly]
@@ -272,6 +246,39 @@ Properties string Equalizer [readwrite]
possible to signal its end by setting position to the
maximum uint32 value.
+ dict Track [readonly]
+
+ Track metadata.
+
+ Possible values:
+
+ string Title:
+
+ Track title name
+
+ string Artist:
+
+ Track artist name
+
+ string Album:
+
+ Track album name
+
+ string Genre:
+
+ Track genre name
+
+ uint32 NumberOfTracks:
+
+ Number of tracks in total
+
+ uint32 Number:
+
+ Track number
+
+ uint32 Duration:
+
+ Track duration in milliseconds
MediaEndpoint1 hierarchy
========================
--
1.8.0.1
next reply other threads:[~2013-01-10 13:37 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-10 13:37 Luiz Augusto von Dentz [this message]
2013-01-10 13:37 ` [PATCH BlueZ 02/13 v2] player: Remove GetTrack and TrackChanged Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 03/13 v2] player: Add support for button controls Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 04/13 v2] player: Fix documentation to use TrackNumber in track metadata Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 05/13 v2] AVRCP: Always create a controller player even for version 1.0 Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 06/13 v2] player: Add Device property Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 07/13 v2] media: Adapt RegisterPlayer to changes in MediaPlayer1 Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 08/13 v2] test: Adapt simple-player to the new API of MediaPlayer1 Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 09/13 v2] tools: Adapt mpris-player to " Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 10/13 v2] media-api: Change RegisterPlayer to use MPRIS spec Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 11/13 v2] test: Update test-player to register using MPRIS interface Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 12/13 v2] media: Implement new RegisterPlayer API Luiz Augusto von Dentz
2013-01-10 13:37 ` [PATCH BlueZ 13/13 v2] tools: Update mpris-player to register using MPRIS interface Luiz Augusto von Dentz
2013-01-10 16:02 ` Anderson Lizardo
2013-01-10 16:56 ` Luiz Augusto von Dentz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1357825038-21970-1-git-send-email-luiz.dentz@gmail.com \
--to=luiz.dentz@gmail.com \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox