Bash um Instanzen von MPV Player nacheinander auszuführen
Ich habe es gelöst !!
===================
Ich führe 3 Bash-Dateien aus
==== Shuf_1.sh ================
! / bin / sh -e
wmctrl -r: ACTIVE: -b umschalten, über xdotool getactivewindow windowmove 689 785
N=$(cat name) #<-- name is set coming from the script that launched #the 3 scripts go (){ xdotool key p echo "playing $1" wmctrl -ir $WINDOWID -N "Shuf_1 $N $1" a="$(youtube-dl --get-id "ytsearch:$1" | tail -1)" b="$(youtube-dl --get-title "ytsearch:$1" | tail -1)" echo $b c="mpv --pause --no-video https://youtu.be/$a" $c < /dev/tty wmctrl -a "Shuf_2 $N" }
wenn [-n "$ "]; dann geh "$ ", um fi zu verlassen
während Titel lesen; mache "$ title" fertig
==== Shuf_2.sh ======================
! / bin / sh -e
wmctrl -r: ACTIVE: -b umschalten, über xdotool getactivewindow windowmove 689 785
N=$(cat name) go (){ xdotool key p echo "playing $1" wmctrl -ir $WINDOWID -N "Shuf_2 $N $1" a="$(youtube-dl --get-id "ytsearch:$1" | tail -1)" b="$(youtube-dl --get-title "ytsearch:$1" | tail -1)" echo $b c="mpv --pause --no-video https://youtu.be/$a" $c < /dev/tty wmctrl -a "Shuf_3 $N" }
wenn [-n "$ "]; dann geh "$ ", um fi zu verlassen
während Titel lesen; mache "$ title" fertig
==== Shuf_3.sh =======
! / bin / sh -e
wmctrl -r: ACTIVE: -b umschalten, über xdotool getactivewindow windowmove 689 785
N=$(cat name) go (){ xdotool key p echo "playing $1" wmctrl -ir $WINDOWID -N "Shuf_3 $N $1" a="$(youtube-dl --get-id "ytsearch:$1" | tail -1)" b="$(youtube-dl --get-title "ytsearch:$1" | tail -1)" echo $b c="mpv --pause --no-video https://youtu.be/$a" $c < /dev/tty wmctrl -a "Shuf_1 $N" }
wenn [-n "$ "]; dann geh "$ ", um fi zu verlassen
während Titel lesen; mache "$ title" fertig
==========================
#I'm using this script to read playlists of Artist Title from text files #like this ./p.sh << EOF The Beatles Twist And Shout Elvis Presley Jailhouse Rock etc EOF
Das Ziel ist es, keine unnötige Stille zwischen den Tracks zu haben und zwischen Instanzen zu wechseln, da der YouTube-Anruf einige Sekunden hat, um den Song zu suchen und abzuspielen. Grund dafür, eine andere bereits "geladene" Instanz zu pausieren.
0 Antworten auf die Frage
Verwandte Probleme
-
1
Pausieren Sie alle Aufgaben außer x CPU-intensiven Aufgaben
-
10
Wie kann ich die Bash-Historie durchsuchen und einen Befehl erneut ausführen?
-
2
Kann die Ausgabe eines Befehls an zwei andere Befehle weitergeleitet werden?
-
8
Benennen Sie eine Gruppe von Dateien mit einem Befehl um
-
2
Warum aktualisiert sich mein Pfad nicht * jetzt *?
-
5
Wie entferne ich einen symbolischen Link zu einem Verzeichnis?
-
8
Rette mich vor dem Kauderwelsch
-
9
Wie kann ich jeder Zeile einer Textdatei eine Zeilennummer und einen Tabulator voranstellen?
-
1
Wann sollte ich Konfigurationen in .bashrc vs einfügen? .bash_profile?
-
1
Umleitung: Wie kam das zusätzliche Wort in die Datei?