J'aimerais vraiment communiquer avec rhythmbox avec un serveur Web afin de pouvoir modifier à distance la musique en cours de lecture sur mon smartphone. Existe-t-il une interface de ligne de commande permettant à rhythmbox d'effectuer des opérations telles que les commandes (fictives) suivantes?
rhythmbox next
rhythmbox shuffle=false
rhythmbox change album='Dark Side of the Moon' artist='Pink Floyd' song='Time'
Existe-t-il une interface de socket ou de transmission de message? Existe-t-il des programmes de remplacement pouvant effectuer le travail, comme Banshee ou un autre type de serveur?
En gros, la réponse courte est "Oui" et le complément de cette réponse sera "Utilisez la commande rhythmbox-client
à partir d'un terminal afin de contrôler votre Rhythmbox en cours d'exécution. S'il n'est pas déjà chargé, la première instance de vos commandes l'invoquera. "
Par exemple: rhythmbox-client --play
fera en sorte que la session actuelle de Rhythmbox commence à jouer la chanson en cours (ou la première chanson de la liste). Si Rhythmbox est fermé, il l'ouvrira d'abord pour pouvoir commencer à jouer.
Des informations complémentaires sur le rhythmbox-client
et son utilisation sont disponibles dans la page de manuel rhythmbox-client. Je place ici une partie de la page de manuel juste pour référence.
NAME
rhythmbox-client - controls a running instance of rhythmbox
SYNOPSIS
rhythmbox-client [option...][file...]
DESCRIPTION
rhythmbox-client is a tool for controlling an already running instance
of rhythmbox. It's useful for remote control scripting, adding
specific files to the library from the Shell, or printing details of
what's playing. It also has an interactive mode, useful for controlling
playback remotely via ssh. Any files specified after the option
arguments will be added to the library. If the --enqueue option is
given, the files will also be added to the play queue.
OPTIONS
-?,--help
Show help options
--debug
Enable debug output
--no-start
Do not start a new instance of rhythmbox
--quit Quit rhythmbox
-i,--interactive
Start interactive mode --no-present Don't present an existing
rhythmbox window
--next Jump to next song
--previous
Jump to previous song
--play Resume playback if currently paused
--pause
Pause playback if currently playing
--play-pause
Toggle play/pause mode
--stop Stop playback if currently playing
--play-uri=URI
Play a specified URI, importing it if necessary
--enqueue
Add specified tracks already in the library to the play queue
--clear-queue
Empty the play queue before adding new tracks
--print-playing
Print the title and artist of the playing song
--print-playing-format=format
Print formatted details of the song (see FORMAT OPTIONS below).
--set-volume
Set the playback volume
--volume-up
Increase the playback volume
--volume-down
Decrease the playback volume
--print-volume
Print the current playback volume
--select-source=URI
Select the source corresponding to a URI (device or mount point)
--activate-source=URI
Select the source corresponding to a URI (device or mount point)
and start playing from it if not already playing.
--play-source=URI
Select the source corresponding to a URI (device or mount point)
and start playing from it.
FORMAT OPTIONS
%at album title
%aa album artist
%aA album artist (lowercase)
%as album artist sortname
%aS album artist sortname (lowercase)
%ay album year
%ag album genre
%aG album genre (lowercase)
%an album disc number
%aN album disc number, zero padded
%st stream title
%tn track number (i.e 8)
%tN track number, zero padded (i.e 08)
%tt track title
%ta track artist
%tA track artist (lowercase)
%ts track artist sortname
%tS track artist sortname (lowercase)
%td track duration
%te track elapsed time
Variables can be combined using quotes. For example "%tn %aa %tt", will
print the track number followed by the artist and the title of the
track.
AUTHOR
This manual page was written by Sven Arvidsson <[email protected]>, for the
Debian system (but may be used by others).
Je me suis intéressé à ce sujet et j'ai donc lancé un test avec la commande suivante:
dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Seek int64:60000000
De la réponse originale affichée ici. Ce qui fonctionne bien pour la tâche de recherche sur la chanson en cours de lecture (basée sur le commentaire du demandeur).
Bonne chance!