To jest stara wersja strony!
Spis treści
moode Audio Player
Configure
Library
Audio
- Output device: 1:HiFiBerry DAC+
- Volume type: Fixed (0db)
- Device ready wait: 1 min (default)
- Named I2S device: HiFiBerry DAC+
- or DT overlay: None
- Driver options: None available
- Integrated audio: Kernel mode (default)
Network
System
Renderers
Peripherals
MPD
CamillaDSP
Multiroom Audio
Clock radio settings
Input Select
Inne
Konwersja i dzielenie pliku .ape lub .flac na pliki .flac
Wymogiem jest posiadanie do pliku .ape lub .flac pliku .cue z informacją o poszczególnych ścieżkach płyty.
shnsplit -f Kitaro-Silk_Road_Suite.cue -t "%n %t" -o flac Kitaro-Silk_Road_Suite.ape
shnsplit -f Kitaro-Silk_Road_Suite.cue -t "%n %t" -o flac Kitaro-Silk_Road_Suite.flac
Można też użyć gwiazdek i dodać katalog wyjściowy np out, ale uprzednio taki katalog musi być utworzony.
shnsplit -f *.cue -t "%n %t" -d out -o flac *.flac
Ponieważ w niektórych tytułach utworów pojawiają się niedozwolone znaki dla nazw plików jeszcze lepsze rozwiązanie to:
shnsplit -f *.cue -t "%n" -d out -o flac *.flac && cd out && cuetag.sh ../*.cue *.flac
Pliki są tylko numerowane ścieżką a tagowanie wykonane jest osobno poleceniem cuetag.sh.
Jeżeli shnsplit tworzy kilkusekundowy plik 00 to można użyć:
shnsplit -f *.cue -t "%n" -d out -o flac *.flac && cd out && rm -f 00.flac && cuetag.sh ../*.cue *.flac
Automatyczne odtwarzanie playlisty po uruchomieniu
sudo nano /etc/rc.local
dopisać przed exit 0:
# Autoplay playlist after boot (random + consume) ( sleep 10 mpc clear mpc load "Muzyczka" mpc shuffle mpc random on mpc consume on mpc play ) &
Uruchomienie odpowiedniej playlisty w zależności od pory dnia
( sleep 10 # Pobranie aktualnej godziny (00-23) HOUR=$(date +%H) # Sprawdzenie godziny i wybór playlisty if [ "$HOUR" -lt 12 ]; then PLAYLIST="Rano" elif [ "$HOUR" -lt 18 ]; then PLAYLIST="Popoludnie" else PLAYLIST="Wieczor" fi # Wykonanie poleceń MPD mpc clear mpc load "$PLAYLIST" mpc shuffle mpc random on mpc consume on mpc play ) &
O czym musisz pamiętać?
- Nazwy playlist: Upewnij się, że masz w moOde stworzone i zapisane dokładnie takie playlisty, jakich nazwy wpiszesz w skrypcie (np. Rano, Popoludnie, Wieczor – uważaj na wielkość liter).
- Poprawny czas na Raspberry Pi: Aby ten skrypt działał prawidłowo, malinka musi znać aktualną godzinę. Jeśli jest podłączona do sieci/Internetu, czas ustawi się automatycznie przez NTP po uruchomieniu. Stąd opóźnienie sleep 10 jest bardzo ważne, by pobrać prawidłową godzinę przed wykonaniem skryptu.
Odpalenie odbiornika podczerwieni do pilota
Utworzenie urządzenia /dev/lirc0.
sudo nano /boot/firmware/config.txt
Jeżeli używasz nakładkę DAC zgodną z HiFiBerry dodajemy:
# Włączenie odbiornika IR na GPIO 26 w przypadku użycia HiFiBerry dtoverlay=gpio-ir,gpio_pin=26
Następnie restart maliny:
sudo reboot
Sprawdzamy czy powstało urządzenie /dev/lirc0
ls -l /dev/lirc*
Sprawdzamy czy dioda coś odbiera gdy strzelamy do niej z pilota:
sudo ir-ctl -d /dev/lirc0 -r -1 -v
Jeżeli nie to walczymy z odpowiednim ustawieniem gpio_pin=XX. Jeżeli tak to instalujemy dwa pakiety:
sudo apt install -y v4l-utils ir-keytable
Uruchom polecenie:
sudo ir-keytable -p nec -t
W moim przypadku otrzymałem wynik:
Protocols changed to nec Testing events. Please, press CTRL-C to abort. 1037.356020: lirc protocol(nec): scancode = 0x7a04 1037.356060: event type EV_MSC(0x04): scancode = 0x7a04 1037.356060: event type EV_KEY(0x01) key_down: KEY_MEDIA(0x00e2) 1037.356060: event type EV_SYN(0x00). 1037.408071: lirc protocol(nec): scancode = 0x7a04 repeat 1037.408107: event type EV_MSC(0x04): scancode = 0x7a04 1037.408107: event type EV_SYN(0x00). 1037.516071: lirc protocol(nec): scancode = 0x7a04 repeat 1037.516244: event type EV_MSC(0x04): scancode = 0x7a04 1037.516244: event type EV_SYN(0x00). 1037.624064: lirc protocol(nec): scancode = 0x7a04 repeat 1037.624102: event type EV_MSC(0x04): scancode = 0x7a04 1037.624102: event type EV_SYN(0x00). 1037.756051: event type EV_KEY(0x01) key_up: KEY_MEDIA(0x00e2) 1037.756051: event type EV_SYN(0x00).
Interesuje nas kod 0x7a04. To jest kod mojego przycisku na pilocie. Sprawdzamy wszystkie pozostałe interesujące nas przyciski i wpisujemy do pliku:
sudo nano /etc/rc_keymaps/moj_pilot.toml
Z treścią:
[[protocols]] name = "moj_pilot" protocol = "nec" [protocols.scancodes] 0x7a00 = "KEY_PLAY" 0x7a01 = "KEY_REWIND" 0x7a02 = "KEY_FASTFORWARD" 0x7a03 = "KEY_STOP" 0x7a04 = "KEY_MEDIA" 0x7a06 = "KEY_PAUSE" 0x7a07 = "KEY_PREVIOUSSONG" 0x7a40 = "KEY_NEXTSONG"
