Difference between revisions of "DBus"

From VideoLAN Wiki
Jump to navigation Jump to search
m (syntaxhighlight)
 
(22 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 +
{{See also|DBus-spec|DBus-usage}}
 +
 
== TODO for DBus integration ==
 
== TODO for DBus integration ==
  
=== List all signals, methods with their arguments and return value ===
+
VLC implements [[DBus-spec]], a desktop-neutral document, that aims to be suitable for every Media Players.
  
Decide what to do when org.videolan service is already registered by another instance of vlc: let the first instance do all the work ? replace it ? place vlc on the queue ?
+
=== Decide service behaviour ===
  
Now if vlc is built with D-Bus >= 1.0.0 it will automatically register org.videolan.vlc, and no other instances of vlc will be allowed to replace it
+
Could vlc be a on-demand startable service, would it be useful ?
 
 
 
 
 
 
=== Decide service bahaviour ===
 
  
Could vlc be a on-demand startable service, would it be useful ?
+
We just have to create a /usr/share/dbus-1/org.freedesktop.MediaPlayer.service:
  
We just have to create a /usr/share/dbus-1/org.videolan.vlc.service:
+
<syntaxhighlight lang="ini">
----
 
 
[D-BUS Service]
 
[D-BUS Service]
  
Name=org.videolan.vlc
+
Name=org.freedesktop.MediaPlayer
  
 
Exec=/usr/bin/vlc -I dummy --control dbus
 
Exec=/usr/bin/vlc -I dummy --control dbus
----
+
</syntaxhighlight>
 
 
 
 
 
 
=== Missing features ===
 
 
 
volume control => VolumeGet and VolumeSet
 
 
 
playlist => hard.... could we use xspf ?
 
 
 
timing of the input element (position, jump)
 
 
 
preferences ?
 
 
 
 
 
== List of signals and methods ==
 
 
 
 
 
 
 
=== Signals ===
 
 
 
"ItemChange" "s" : Emitted when a new input element is played, the string contains the filename, or the input name if it has some metadata.
 
 
 
"NewInstance" "i" : Emitted when vlc control interface is started, with vlc pid
 
 
 
=== Methods ===
 
 
 
"GetPlayStatus" ""->"s" : return "play" "pause" "stopped" or "unknown"
 
 
 
"GetPlayingItem" ""->"s" : return the filename of the current item being played, or it's name if it has some metadata. Same data provided by "ItemChange"
 
 
 
"ToglePause" ""->"b" : toggle the play/pause status, and start playing if it was stopped, return true if playing, false if paused
 
 
 
"AddMRL" "sb"->"" : add string to the playlist, and play it if bool is true
 
 
 
"Nothing" ""->"" : do nothing, just here for tests, and code example
 
 
 
"Quit" ""->"" : exits vlc
 
 
 
"Stop" ""->"" : stop playlist
 
 
 
"Prev" ""->"" : plays previous playlist item
 
  
"Next" ""->"" : plays next playlist item
+
[[Category:Development]]

Latest revision as of 03:54, 19 March 2019

See also: DBus-spec and DBus-usage

TODO for DBus integration

VLC implements DBus-spec, a desktop-neutral document, that aims to be suitable for every Media Players.

Decide service behaviour

Could vlc be a on-demand startable service, would it be useful ?

We just have to create a /usr/share/dbus-1/org.freedesktop.MediaPlayer.service:

[D-BUS Service]

Name=org.freedesktop.MediaPlayer

Exec=/usr/bin/vlc -I dummy --control dbus