Push Song Information
Beschreibung
Diese Shell-Funktionen holen sich von verschiedenen MusicPlayern die gerade gespielte Datei, erzeugen aus den Metadaten der Datei ein Template und laden dieses dann auf einen Webserver hoch.
Das sieht z. B. so aus:
2012-01-08 07:59 +0100
Processing file "/Music_Free/Rock/The Old Stoic - The Old Stoic -- Jamendo - OGG Vorbis q7 - 2010.11.19 [www.jamendo.com]/10 - Sadow And The Moon.ogg"...
New logical stream (#1, serial: 0be44329): type vorbis
Vorbis headers parsed for stream 1, information follows...
Version: 0
Vendor: AO; aoTuV b5 [20061024] (based on Xiph.Org's libVorbis)
Channels: 2
Rate: 44100
Nominal bitrate: 224,000000 kb/s
Upper bitrate not set
Lower bitrate not set
User comments section follows...
ARTIST=The Old Stoic
ALBUM=The Old Stoic
TRACKNUMBER=10
JAMENDO-TRACK-ID=684839
TITLE=Sadow And The Moon
ORGANIZATION=https://www.jamendo.com
COMMENT=https://www.jamendo.com
PUBLISHER=https://www.jamendo.com
DESCRIPTION=https://www.jamendo.com
WWW=https://www.jamendo.com/fr/album/79685
LICENSE=https://creativecommons.org/licenses/by-sa/3.0/
COPYRIGHT=https://creativecommons.org/licenses/by-sa/3.0/
ENCODED-BY=https://creativecommons.org/licenses/by-sa/3.0/
WCOP=https://creativecommons.org/licenses/by-sa/3.0/
COVERURL=https://imgjam.com/albums/s79/79685/covers/1.400.jpg
WOAF=https://www.jamendo.com/fr/track/684839
DATE=2010-11-19
REPLAYGAIN_TRACK_PEAK=1.05464709
REPLAYGAIN_TRACK_GAIN=-8.22 dB
Vorbis stream 1:
Total data length: 9273388 bytes
Playback length: 5m:41.319s
Average bitrate: 217,353522 kb/s
Logical stream 1 ended
Hintergrund
Hintergrund: Man fragt mich öfters mal, welche Musik im Hintergrund zu hören ist. Dann hatte ich nicht jedes Mal die Laune, die Datei herauszusuchen und demjenigen den Namen des Künstlers usw. zu schicken.
Mit diesen Shell-Funktionen kann man das dann über einen Mausklick bzw. auf der Konsole sehr schnell erledigen.
In meinem Fall wird die erstellte Vorlage hier hochgeladen: siehe hier.
Installation/Einrichtung
Man muss nun alle (benötigten) Funktionen in eine Datei packen und diese in seiner Shell “sourcen”. Dann erstellt man noch die .psi-settings.conf-Datei in seinem $HOME, passt die Variablen entsprechend an, fertig.
Alternativ kann man diese Funktionen auch in die Datei ~/.bashrc
einfügen.
Verwendung
Wenn man jetzt gerade ein Stück bei Clementine hört, reicht das Öffnen der Konsole und die Eingab von
m-psi-clementine
um den Mitmenschen die notwendigen Informationen zu liefern, um sich die freie Musik selbst herunterzuladen :)
Unterstützte Player
Aktuell werden folgende MusicPlayer unterstützt:
Die Shell-Funktionen
Shell-Funktionen zur Abfrage des gerade gespielten Stücks
Das Script mit den Funktionen gibt es bei GitHub: get_current_song.sh.
Jede dieser Funktionen liest das gerade gespielte Lied eines Players aus und ruft dann die Shell-Funktion m-psi mit dem Dateinamen als Argument auf.
Shell-Funktion zum Pushen der Dateiinformationen
Das Script mit der Funktion gibt es bei GitHub: push_current_song.sh.
Einstellungen
In der Funktion m-psi wird die Datei ~/.psi-settings.conf
eingelesen, die bei mir folgenden Inhalt hat (private Daten geaendert), siehe auf GitHub: .psi-settings.conf.