Contrôler les lecteurs multimédias à partir de la ligne de commande sous Linux
Aujourd'hui, j'ai appris que nous pouvons contrôler les lecteurs multimédias à partir de la ligne de commande sous Linux et les systèmes d'exploitation de type Unix. Vous pouvez lire, mettre en pause, basculer entre lecture et pause, augmenter/diminuer le volume, passer aux fichiers multimédias suivants/précédents et arrêter la lecture multimédia dans vos lecteurs multimédias. Tout depuis Terminal ! Cool, ouais ? Oui c'est le cas. Dans ce guide, nous apprendrons à contrôler les lecteurs multimédias depuis le terminal sous Linux.
Contrôler les lecteurs multimédias à partir de la ligne de commande sous Linux
Pour cela, nous utiliserons deux utilitaires simples, à savoir Playerctl et OmniPause, pour contrôler les lecteurs multimédias depuis la ligne de commande.
1. Lecteurctl
Playerctl est un utilitaire de ligne de commande permettant de contrôler les fichiers multimédias depuis le terminal. Il vous permettra de lire, de mettre en pause des fichiers multimédias, de passer à la piste suivante ou précédente, d'augmenter ou de diminuer le volume, d'arrêter la lecture, etc. En utilisant Playerctl, nous pouvons gérer tous les lecteurs multimédias qui implémentent la spécification d'interface MPRIS D-Bus. Certains des lecteurs multimédias populaires pouvant être contrôlés à l'aide de Playerctl sont indiqués ci-dessous.
- Audacieux,
- Bmp,
- Spotify,
- Mplayer/SMplayer,
- VLC,
- Xmms2.
Installer Playerctl
Playerctl est disponible dans les référentiels officiels de toutes les distributions Linux modernes. Vous pouvez donc l'installer à l'aide du gestionnaire de packages par défaut de la distribution.
Sous Arch Linux :
sudo pacman -S playerctl
Sur Debian, Ubuntu et dérivés :
sudo apt-get install playerctlSur Fedora :
sudo dnf install playerctlSur openSUSE :
sudo zypper install playerctlS'il n'est pas disponible dans les référentiels officiels, vous pouvez le compiler et l'installer manuellement à partir de l'aide des sources. Les derniers fichiers sources sont disponibles sur la page des versions.
Contrôler les lecteurs multimédias à l'aide de Playerctl
Tout d’abord, listez tous les joueurs disponibles à l’aide de la commande :
playerctl -lOu,
playerctl --list-allUn exemple de résultat serait :
vlc
smplayerVous pouvez visualiser le statut d'un joueur en mentionnant son nom avec la commande playerctl :
$ playerctl status vlc
Stopped$ playerctl status smplayer
PlayingComme vous pouvez le voir, il y a actuellement deux lecteurs disponibles (joueurs actuellement ouverts et en cours d'exécution) dans mon système. VLC est arrêté et smplayer joue maintenant.
Pour lire le morceau, exécutez :
playerctl play -p smplayer
Ou,
playerctl play --player smplayerS'il n'y a qu'un seul lecteur en cours d'exécution, vous n'avez pas besoin d'utiliser le commutateur "-p" ou "--player". Playerctl lira automatiquement la piste en cours de lecture dans le lecteur actuellement ouvert.
Pour mettre en pause la piste en cours de lecture (en supposant que vous n'ayez qu'un seul lecteur en cours d'exécution), exécutez :
playerctl pause smplayerPour passer à la piste suivante, exécutez :
playerctl next smplayerPour revenir à la piste précédente, exécutez :
playerctl previous smplayerPour basculer entre lecture et pause, exécutez :
playerctl play-pause smplayerCette option reprendra la piste si elle est actuellement en pause ou lira la piste si elle est en cours de lecture.
Pour arrêter la lecture, exécutez :
playerctl stop smplayerPour afficher la section d'aide, exécutez :
$ playerctl --help
Usage:
playerctl [OPTION…] COMMAND - Controller for MPRIS players
For true players only: spotify, vlc, audacious, bmp, xmms2, and others.
Help Options:
-h, --help Show help options
Application Options:
-p, --player=NAME The name of the player to control (default: the first available player)
-l, --list-all List the names of running players that can be controlled
-V, --version Print version information and exit
Available Commands:
play Command the player to play
pause Command the player to pause
play-pause Command the player to toggle between play/pause
stop Command the player to stop
next Command the player to skip to the next track
previous Command the player to skip to the previous track
position [OFFSET][+/-] Command the player to go to the position or seek forward/backward OFFSET in seconds
volume [LEVEL][+/-] Print or set the volume to LEVEL from 0.0 to 1.0
status Get the play status of the player
metadata [KEY] Print metadata information for the current track. Print only value of KEY if passedPour plus de détails, consultez la page GitHub du projet indiquée à la fin.
2. OmniPause
OmniPause est une simple application Python permettant de contrôler les lecteurs multimédias via DBus. Contrairement à Playerctl, OmniPause est très nouveau dans la série et en est à ses premiers stades de développement. Cependant, il est entièrement fonctionnel et fera toutes les mêmes choses que Playerctl.
Installer Omnipause
OmniPause est écrit en Python, vous devez donc d'abord installer les dépendances suivantes. Ces packages sont disponibles dans les référentiels officiels de toutes les distributions Linux. Ainsi, vous pouvez les installer à l’aide du gestionnaire de packages par défaut.
- python2
- dbus-python
Après avoir installé les prérequis, git clonez le projet :
git clone https://github.com/mel00010/OmniPause.gitAllez dans le répertoire du projet :
cd OmniPause/Et exécutez la commande suivante pour l’installer.
sudo make installLa commande ci-dessus copiera le programme omnipause.py dans /usr/local/bin/omnipause.
Contrôler les lecteurs multimédias à l'aide d'Omnipause
L'utilisation est exactement la même que celle de Playerctl. Contrairement à Playerctl, Omnipause a des fonctionnalités limitées. Les seules fonctions disponibles sont :
- jouer,
- pause,
- suivant,
- précédent,
- basculer,
- arrêt.
Pour suspendre tous les lecteurs multimédias en cours d'exécution, exécutez :
omnipause pausePour reprendre la lecture des lecteurs multimédias interrompus par le programme, exécutez :
omnipause playPour arrêter tous les lecteurs multimédias, exécutez :
omnipause stopPour lire la piste suivante sur tous les lecteurs multimédias en cours de lecture, exécutez :
omnipause nextPour lire la piste précédente sur tous les lecteurs multimédias en cours de lecture, exécutez :
omnipause previousPour basculer l'état de lecture des lecteurs multimédias en cours d'exécution, exécutez :
omnipause toggleComme vous pouvez le voir, nous pouvons contrôler tous les lecteurs multimédias en cours d'exécution à l'aide d'une seule commande. C'est si simple. Comme Playerctl, il n'a aucune option pour arrêter un lecteur spécifique ou augmenter/diminuer le volume. Si vous souhaitez bénéficier de telles options et plus de contrôle sur vos lecteurs multimédias, utilisez le programme playerctl. Veuillez noter que Playerctl et OmniPause ne sont pas des lecteurs, mais des contrôleurs de lecteur multimédia CLI.
Ressources :
- Page GitHub Playerctl
- Page GitHub OmniPause