Musik-Zufallswiedergabe auf der Konsole

Sound, Digitalkameras, TV+Video und Spiele.
Antworten
Benutzeravatar
heisenberg
Beiträge: 3548
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Musik-Zufallswiedergabe auf der Konsole

Beitrag von heisenberg » 05.01.2021 15:50:47

Ich möchte einfach mal ein Mini-Skript von mir hier rein pasten, was ich mir mal geschrieben habe und was irgendwie schwieriger war als vorgestellt.

Aufgabe

Spiele mir in der Konsole aus einem Verzeichnis alle (Audio-)Dateien in zufälliger Reihenfolge ab und erlaube die Steuerung des Programms mit den gewohnten Tastendrücken.

Der Grund war der, dass ich mplayer grundsätzlich sehr mag, aber dieser mir der grundsätzlich zu geschwätzig ist und ich eigentlich nur den Liedtitel sehen möchte. Das unterstützt mplayer nicht. Wenn ich da jetzt also rumgreppe und so dann habe ich aber nicht mehr die Tastatursteuerung von mplayer und teilweise funktioniert es auch einfach nicht, weil mplayer manchmal einfach still geblieben ist - und nichts abgespielt hat. Das in den Liederdateinamen teilweise sehr exotische Sonderzeichen drin sind, hat die Sache zustätzlich erschwert.

Nach einer Weile hatte ich dann folgendes Script, benannt als randplay, was das tut was es soll. Ist nicht elegant aber tut was es soll:

Code: Alles auswählen

#!/bin/bash

get_rand_file() {
        while read nr;do
                file="$(eval ls \"\${$nr}\")"
                echo "$file"
        done < <(eval echo {1..$#} | xargs -n1 echo | sort -R )

}

mplay() {
        mplayer -really-quiet  "$@" 

}

export -f mplay

for f in $(get_rand_file "$@" );do
        echo "$f"
        mplay "$f" 2>&1 | grep -vE "(do_connect: could not connect to socket|connect: No such file or directory)"
done
Jede Rohheit hat ihren Ursprung in einer Schwäche.

tobo
Beiträge: 1991
Registriert: 10.12.2008 10:51:41

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von tobo » 05.01.2021 16:31:17

Hat mpv den Schalter --shuffle nicht von mplayer geerbt?

Benutzeravatar
heisenberg
Beiträge: 3548
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von heisenberg » 05.01.2021 16:36:25

Ähem, ja, danke, stammel, ....

Code: Alles auswählen

mplayer -shuffle * 2>1|grep Playing
...tut das gleiche...
Jede Rohheit hat ihren Ursprung in einer Schwäche.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von smutbert » 05.01.2021 16:37:05

@Meillo hat in einem anderen Thread („Totaler Zufall“), für eine zufällige Playlist auch erst vor kurzem ein Skript gepostet (und ich auch, allerdings in python und für mpd, weil ich beides sehr mag)
Meillo hat geschrieben: ↑ zum Beitrag ↑
22.12.2020 21:16:35
Hier mal ein Ansatz:

Code: Alles auswählen

#!/bin/sh
#
# Requires: mediainfo, mplayer

find "$1" -type f | sort -R | while read i; do
        length="$(expr $(mediainfo --Output="General;%Duration%" "$i") / 1000)"
        start="$(expr $RANDOM / "$i")"
        duration="$(expr $RANDOM / \( "$length" - "$start" \))"
        mplayer -fs -ss "$start" -endpos "$duration" "$i"
done
[...]
(Bei mplayer stört mich allerdings, dass ich nie eine vernünftige und aktuelle Dokumentation finde, wie man das Audioausgabegerät festlegt).

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von Lord_Carlos » 05.01.2021 17:05:34

heisenberg hat geschrieben: ↑ zum Beitrag ↑
05.01.2021 16:36:25
Ähem, ja, danke, stammel, ....

Code: Alles auswählen

mplayer -shuffle * 2>1|grep Playing
...tut das gleiche...
mpv hat auch noch --quiet und --really-quiet, sollte auch bei mplayer so sein. (Mit einem - dann)
mpv.com --shuffle --quiet --playlist="alles.pls"
https://mpv.io/manual/stable/#terminal

@smutbert
-ao help schon versucht?

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von smutbert » 05.01.2021 17:38:23

Nein, ich hab mplayer ja nicht einmal installiert :mrgreen:
Es fällt mir nur immer wieder auf, wenn ich versuche jemandem im Forum zu helfen (bei mpv übrigens dasselbe).

tobo
Beiträge: 1991
Registriert: 10.12.2008 10:51:41

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von tobo » 05.01.2021 18:41:11

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
05.01.2021 17:05:34
mpv hat auch noch --quiet und --really-quiet, sollte auch bei mplayer so sein.
Das (--really-quiet) ist ja oben schon drin im Skript und genauso wie den mplayer, bekommt man auch den mpv nicht ganz still damit!?

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von Lord_Carlos » 05.01.2021 19:10:36

tobo hat geschrieben: ↑ zum Beitrag ↑
05.01.2021 18:41:11
Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
05.01.2021 17:05:34
mpv hat auch noch --quiet und --really-quiet, sollte auch bei mplayer so sein.
Das (--really-quiet) ist ja oben schon drin im Skript und genauso wie den mplayer, bekommt man auch den mpv nicht ganz still damit!?
Oh, stimmt. Im originalen ganz oben ist es drinne.
mpv hat auch noch --no-terminal
smutbert hat geschrieben: ↑ zum Beitrag ↑
05.01.2021 17:38:23
Es fällt mir nur immer wieder auf, wenn ich versuche jemandem im Forum zu helfen (bei mpv übrigens dasselbe).
Die hier wird taeglich von Git aktualisiert: https://mpv.io/manual/master/

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Musik-Zufallswiedergabe auf der Konsole

Beitrag von smutbert » 06.01.2021 00:31:44

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
05.01.2021 19:10:36
Die hier wird taeglich von Git aktualisiert: https://mpv.io/manual/master/
Danke, schon gebookmarkt.

Antworten