Puis-je utiliser banshee depuis la ligne de commande?

12

J'adore le lecteur multimédia Banshee en général, et j'ai déjà une importante bibliothèque de musique, que j'ai passé beaucoup de temps à organiser (étiquetage, correction, etc.).

J'utilise également beaucoup la ligne de commande, donc je me demande s'il existe un moyen de contrôler le banshee à partir de la ligne de commande. Un péché:

  • Suivant, Précédent, Arrêter, Jouer, etc.
  • Dans tous les cas interrogez la base de données Banshee comme si vous utilisiez le champ de recherche dans l'interface graphique

J'étais semblable à le programmer moi-même s'il n'y en a pas, mais ce serait une autre question :)

tutuca
la source

Réponses:

18

Selon man banshee, il est possible de contrôler la lecture. Je ne suis pas sûr de chercher cependant.

Voici quelques-uns des contrôles que vous avez mentionnés. Consultez la manpage pour bien d'autres.

--next 
    Play the next track, optionally restarting if the 'restart' value is set

--previous 
    Play the previous track, optionally restarting if the 'restart value is set

--stop 
    Completely stop playback

--play 
    Start playback
Michael Crenshaw
la source
Doh !, Je suppose que j'ai besoin de RTFM !, merci de l'avoir signalé. Il existe de nombreuses options, mais il semble que je ne puisse pas interroger la base de données. les commandes query- * servent uniquement à imprimer des informations sur la sortie standard. : - /
tutuca
1
Oui, on dirait que les arguments de requête sont uniquement destinés à obtenir des informations sur la piste actuelle. Pas tout à fait ce que vous cherchez.
Michael Crenshaw
1
BTW, si cette réponse répond réellement à votre question, veuillez cocher la case à côté.
Michael Crenshaw
1
banshee stocke dans une base de données SQLite. De là, vous pouvez faire des requêtes.
hgoebl
3
/usr/bin/banshee --next
/usr/bin/banshee --previous
/usr/bin/banshee --stop
/usr/bin/banshee --play

Tous ceux ci-dessus peuvent être utilisés dans XFCE pour les raccourcis sur votre clavier, respectivement pour:

X86AudioNext
X86AudioPrev
X86AudioStop
X86AudioPlay
Zoltan Breller
la source
2

Si vous cherchez à programmer une interface pour Banshee (autre que d'avoir simplement la possibilité d'envoyer banshee --nextou un autre indicateur de contrôle. Alors vous pourriez être intéressé par le MPD - The Music Player Daemon qui vous permet de créer votre propre interface ou de modifier / utiliser l'un de ces clients conçu pour fonctionner sur MPD

Marco Ceppi
la source
1

Il y a pas mal de commandes que vous pouvez utiliser avec banshee, ça fait longtemps, mais voici un script que j'ai écrit parce que je n'ai pas trouvé de moyen de lire une liste de lecture intelligente lors de la connexion. C'était il y a des mois, c'était l'un de mes premiers scripts et je l'ai fait pour le plaisir, donc c'est assez mauvais, je ne l'ai pas essayé depuis, mais cela devrait au moins vous donner un exemple de l'utilité de la banshee sur le terminal:

   #!/bin/bash
    banshee --hide &
    sleep 3;
    banshee --play;

    while true; do
        pos=`banshee --query-position| sed s/position:\ //| sed s/,.*//`;
        dur=`banshee --query-duration| sed s/duration:\ //| sed s/,.*//`;
        left="$(expr $dur - $pos)";

        rating=`banshee --query-rating|sed s/rating:\ //`;
        isHumour="$(banshee --query-uri|sed s/.*Music//|grep /Humour)";

      if [[ $pos -lt "3" ]] && ([[ $rating -lt "2" ]] || [[ -n "$isHumour" ]]);
      then
        echo "next";
        exec banshee --next &
      else
        echo "sleep for" $left;
        sleep "$left";
        pos=`banshee --query-position| sed s/position:\ //| sed s/,.*//`;
        dur=`banshee --query-duration| sed s/duration:\ //| sed s/,.*//`;
        left= expr $dur - $pos;
        echo $left;
    fi;
    sleep 0.0001;
    done;
    exit 0;

J'espère que cela vous aide, désolé si cela vous embrouille ...

sinekonata
la source
-1

Je ne pense pas qu'il existe une interface de ligne de commande pour Banshee à ce stade. Et je n'ai rien entendu pour indiquer qu'ils travailleraient sur un.

Tommy Brunn
la source
1
Je pense que tutuca cherche simplement un moyen de contrôler Banshee à partir de la ligne de commande; pas une interface de ligne de commande complète (bien que ce serait très cool).
Michael Crenshaw
-1

Voici ce que tout le monde recherchait:

sh -c "sleep 1m; banshee --hide & sleep 20; banshee --play"

le 1mreprésente un délai d'attente que vous pouvez modifier.

Vous devez le mettre dans vos applications de démarrage

cconwell2
la source
1
Pouvez-vous expliquer comment cela permet de répondre à la demande du PO? Suivant, Précédent, Arrêter, Jouer, Rechercher dans la base de données?
DrSAR