Εδώ και πολύ καιρό, παιδευόμουν χειροκίνητα να ακούσω ραδιόφωνο από το linux σύστημα μου,
ένα Raspberry Pi 3+, το οποίο έχω στην αποθήκη-συνεργείο, συνδεδεμένο με ενισχυτές - ηχεία κλπ.
Εννοείται πως έχω κάθε είδους μουσική που με ενδιαφέρει, σε μορφή mp3 και flac,
αλλά κάποιες φορές, δεν υπάρχει αντικαταστάτης ενός καλού ραδιοφωνικού σταθμού.
Έτσι λοιπόν, κάθισα και ζορίστηκα, κι έφτιαξα ένα bash script, που μου λύνει τα χέρια,
όταν πρόκειται να ακούσω ραδιόφωνο.
Και μιας και για εμένα, δουλεύει άριστα, είπα να σας το παραθέσω:
- Κώδικας: Επιλογή όλων
#!/bin/bash
if [ "$(which whiptail)" == "" ]
then
echo " Please install whiptail."
exit 1
fi
if [ "$(which mpv)" == "" ]
then
echo " Please install mpv."
exit 1
fi
if [ "$(which killall)" == "" ]
then
echo " Please install psmisc."
exit 1
fi
if [ "$(which wget)" == "" ]
then
echo " Please install wget."
exit 1
fi
if [ "$(wget -qO- 1.1.1.1)" == "" ]
then
echo " This script needs internet."
exit 1
fi
URL='http://opml.radiotime.com/Tune.ashx?id=s'
while [ 1 ]
do
CHOICE=$(
whiptail --title "ΡΑΔΙΟΦΩΝΟ" --menu "Επέλεξε σταθμό:" --default-item "$CHOICE" 40 40 30 \
"1)" "1055 Rock (Ροκ Χέβι)" \
"2)" "ERT-3 (Ελληνικά)" \
"3)" "99FM / Radio1 (Ελληνικά)" \
"4)" "Breeze (Ξένα)" \
"5)" "Ακρόαμα (Ελληνικά)" \
"6)" "Άλφα (Ξένα Σέρρες)" \
"7)" "Άρτι (Ξένα Χαλαρά)" \
"8)" "Baraza (Ξένα Χαλαρά)" \
"9)" "Μπλέ (Ελληνικά)" \
"10)" "Boite (Ξένα Επιτυχίες)" \
"11)" "Cosmos (Ελληνικά)" \
"12)" "CosmosFm (Ελληνικά)" \
"13)" "Echoes.gr (Ξένα Χαλαρά)" \
"14)" "Epiloges (Ελληνικά)" \
"15)" "Fly (Ξένα Χαλαρά)" \
"16)" "Focus (Πολιτικά)" \
"17)" "Free (Δεν παίζει συνήθως)" \
"18)" "Imagine (Ξένα Επιτυχίες)" \
"19)" "Kalamaria (Ελληνικά)" \
"20)" "Λαϊκός (Λαϊκά)" \
"21)" "LIBERO (Σπορ)" \
"22)" "Metropolis (Διάφορα)" \
"23)" "Mood (Ξένα)" \
"24)" "More (Ξένα)" \
"25)" "MousiRadio (Ξένα Χαλαρά)" \
"26)" "Music Art Club (Ξένα Χαλαρά)" \
"27)" "Next (Ελληνικά Λαϊκά)" \
"28)" "North (Ελληνικά)" \
"29)" "OFFradio (Ξένα Χαλαρά)" \
"30)" "Paranoise (Ξένα Χαλαρά)" \
"31)" "Peek (Ξένα Επιτυχίες)" \
"32)" "Περίπου (Ξένα Χαλαρά)" \
"33)" "Plus (Ξένα)" \
"34)" "Χίλια Αστέρια (Ξένα)" \
"35)" "Aquarius (Ξένα)" \
"36)" "Bella (Βουλγαρία)" \
"37)" "Boo (Ξένα)" \
"38)" "Nowhere (Ξένα)" \
"39)" "Νυχτοπούλι (Ελληνικά)" \
"40)" "Thessaloniki (Ελληνικά)" \
"41)" "Ultra (Γύφτικα)" \
"42)" "Radio1d.gr (Ξένα)" \
"43)" "Radio708090 (Ξένα)" \
"44)" "RadioCosmo (Ελληνικά)" \
"45)" "Rainbow (Ξένα Επιτυχίες)" \
"46)" "Dancefloor (Ξένα)" \
"47)" "RockRadio (Ξένα Ροκ-Χέβι)" \
"48)" "RSO (Ξένα Επιτυχίες)" \
"49)" "Shook (Ξένα)" \
"50)" "Skyline (Ξένα)" \
"51)" "Smooth (Ξένα)" \
"52)" "Σοχός (Ελληνικά)" \
"53)" "Studio 3 (Δημοτικά)" \
"54)" "Studio Thess (Ελληνικά)" \
"55)" "Σύνορα (Ελληνικά)" \
"56)" "Free 1431 (Ξένα)" \
"57)" "ThessRadio (Ξένα)" \
"58)" "Πικάπ (Πιάνο Τζαζ)" \
"59)" "Velvet (Ξένα Επιτυχίες)" \
"60)" "Zoo (Ξένα Μοντέρνα)" \
"61)" "Κλείσιμο" 3>&2 2>&1 1>&3
)
case $CHOICE in
"1)") killall mpv ; mpv $URL"47804" &>/dev/null & ;;
"2)") killall mpv ; mpv $URL"288636" &>/dev/null & ;;
"3)") killall mpv ; mpv $URL"78164" &>/dev/null & ;;
"4)") killall mpv ; mpv $URL"228588" &>/dev/null & ;;
"5)") killall mpv ; mpv $URL"103654" &>/dev/null & ;;
"6)") killall mpv ; mpv $URL"103656" &>/dev/null & ;;
"7)") killall mpv ; mpv $URL"141847" &>/dev/null & ;;
"8)") killall mpv ; mpv $URL"228803" &>/dev/null & ;;
"9)") killall mpv ; mpv $URL"290707" &>/dev/null & ;;
"10)") killall mpv ; mpv $URL"168951" &>/dev/null & ;;
"11)") killall mpv ; mpv $URL"102619" &>/dev/null & ;;
"12)") killall mpv ; mpv $URL"250137" &>/dev/null & ;;
"13)") killall mpv ; mpv $URL"97218" &>/dev/null & ;;
"14)") killall mpv ; mpv $URL"103609" &>/dev/null & ;;
"15)") killall mpv ; mpv $URL"266902" &>/dev/null & ;;
"16)") killall mpv ; mpv $URL"102469" &>/dev/null & ;;
"17)") killall mpv ; mpv $URL"302900" &>/dev/null & ;;
"18)") killall mpv ; mpv $URL"79446" &>/dev/null & ;;
"19)") killall mpv ; mpv $URL"78191" &>/dev/null & ;;
"20)") killall mpv ; mpv $URL"102462" &>/dev/null & ;;
"21)") killall mpv ; mpv $URL"78742" &>/dev/null & ;;
"22)") killall mpv ; mpv $URL"3055" &>/dev/null & ;;
"23)") killall mpv ; mpv $URL"120770" &>/dev/null & ;;
"24)") killall mpv ; mpv $URL"102725" &>/dev/null & ;;
"25)") killall mpv ; mpv $URL"272715" &>/dev/null & ;;
"26)") killall mpv ; mpv $URL"103081" &>/dev/null & ;;
"27)") killall mpv ; mpv $URL"208532" &>/dev/null & ;;
"28)") killall mpv ; mpv $URL"133388" &>/dev/null & ;;
"29)") killall mpv ; mpv $URL"103078" &>/dev/null & ;;
"30)") killall mpv ; mpv $URL"104790" &>/dev/null & ;;
"31)") killall mpv ; mpv $URL"225374" &>/dev/null & ;;
"32)") killall mpv ; mpv $URL"177778" &>/dev/null & ;;
"33)") killall mpv ; mpv $URL"102465" &>/dev/null & ;;
"34)") killall mpv ; mpv $URL"269522" &>/dev/null & ;;
"35)") killall mpv ; mpv $URL"124706" &>/dev/null & ;;
"36)") killall mpv ; mpv $URL"54417" &>/dev/null & ;;
"37)") killall mpv ; mpv $URL"163039" &>/dev/null & ;;
"38)") killall mpv ; mpv $URL"155185" &>/dev/null & ;;
"39)") killall mpv ; mpv $URL"281728" &>/dev/null & ;;
"40)") killall mpv ; mpv $URL"3037" &>/dev/null & ;;
"41)") killall mpv ; mpv $URL"297782" &>/dev/null & ;;
"42)") killall mpv ; mpv $URL"191812" &>/dev/null & ;;
"43)") killall mpv ; mpv $URL"73197" &>/dev/null & ;;
"44)") killall mpv ; mpv $URL"6659" &>/dev/null & ;;
"45)") killall mpv ; mpv $URL"87077" &>/dev/null & ;;
"46)") killall mpv ; mpv $URL"246057" &>/dev/null & ;;
"47)") killall mpv ; mpv $URL"9406" &>/dev/null & ;;
"48)") killall mpv ; mpv $URL"54732" &>/dev/null & ;;
"49)") killall mpv ; mpv $URL"323926" &>/dev/null & ;;
"50)") killall mpv ; mpv $URL"297521" &>/dev/null & ;;
"51)") killall mpv ; mpv $URL"284614" &>/dev/null & ;;
"52)") killall mpv ; mpv $URL"102473" &>/dev/null & ;;
"53)") killall mpv ; mpv $URL"234505" &>/dev/null & ;;
"54)") killall mpv ; mpv $URL"153053" &>/dev/null & ;;
"55)") killall mpv ; mpv $URL"78185" &>/dev/null & ;;
"56)") killall mpv ; mpv $URL"78184" &>/dev/null & ;;
"57)") killall mpv ; mpv $URL"122794" &>/dev/null & ;;
"58)") killall mpv ; mpv $URL"303530" &>/dev/null & ;;
"59)") killall mpv ; mpv $URL"168619" &>/dev/null & ;;
"60)") killall mpv ; mpv $URL"78170" &>/dev/null & ;;
"61)") killall mpv ; exit ;;
esac
done
Περιέχει 60 σταθμούς της Θεσσαλονίκης και περιχώρων,
που θα αρέσουν σε όλους πιστεύω, αλλά μπορείτε να το επεξεργαστείτε,
ώστε να περιέχει τους δικούς σας αγαπημένους σταθμούς.
Κάνετε αντιγραφή και επικόλληση των περιεχομένων του script σε ένα νέο αρχείο (π.χ. /usr/local/bin/radio),
και κάνετε το script εκτελέσιμο (chmod +x /usr/local/bin/radio).
Μετά από αυτό, ανοίγετε ένα τερματικό, και απλά γράφετε "radio".

Ελπίζω το script να μην παραβαίνει κάποιον όρο λειτουργίας του σάϊτ,
αλλά αν το κάνει, ας κατεβάσει την ανάρτηση μου αυτή ο διαχειριστής.
Όποιος το δοκιμάσει, ας μας πει την γνώμη του.
Κυρίως Desktop: MoBo: GA-MA78GM-S2H | CPU: AMD Phenom(tm) II X4 920 2.80 GHz | VGA: NVIDIA Corporation GF119 [GeForce GT 610] | RAM: 3GB DDR2 800 | Audio: Realtek ALC889A (ATI SB) | Audio: NVIDIA Corporation GF119 HDMI | OS: Debian jessie 64bit