it-swarm.it

Posso usare banshee dalla riga di comando?

Adoro il lettore multimediale Banshee in generale e ho già un'importante libreria di musica, che ho trascorso molto tempo a organizzare (etichettare, correggere, ecc.).

Uso anche molto la riga di comando, quindi mi chiedo se esiste un modo per controllare la banshee dalla riga di comando. Come in:

  • Avanti, Indietro, Stop, Riproduci, ecc
  • In ogni caso, eseguire una query sul database Banshee come se stesse utilizzando la casella di ricerca nella GUI

Ero simile a programmarlo da solo se non ci fosse, ma sarebbe un'altra domanda :)

12
tutuca

Secondo man banshee, è possibile controllare la riproduzione. Non sono sicuro di cercare però.

Ecco alcuni dei controlli che hai citato. Controlla la pagina man per molti altri.

--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
18
/usr/bin/banshee --next
/usr/bin/banshee --previous
/usr/bin/banshee --stop
/usr/bin/banshee --play

Tutti quelli sopra possono essere utilizzati in XFCE per le scorciatoie sulla tastiera, rispettivamente per:

X86AudioNext
X86AudioPrev
X86AudioStop
X86AudioPlay
3
Zoltan Breller

Se stai cercando di programmare un'interfaccia per Banshee (Oltre a poter semplicemente inviare banshee --next o un altro flag di controllo. Allora potresti essere interessato al MPD - The Music Player Daemon che consente di creare la propria interfaccia o modificare/utilizzare uno di questi Clienti progettato per funzionare su MPD

2
Marco Ceppi

Ci sono molti comandi che puoi usare con banshee, è passato un po 'di tempo, ma ecco uno script che ho scritto perché non sono riuscito a trovare un modo per riprodurre una playlist intelligente al momento del login. È stato mesi fa, è stato uno dei miei primi script e l'ho fatto per divertimento, quindi è piuttosto male, non l'ho provato da allora, ma questo dovrebbe almeno darvi un esempio di quanto sia utilizzabile il banshee sul terminale:

   #!/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;

Spero ti sia d'aiuto, scusa se ti confonde ...

1
sinekonata