INTERNETOVÉ RÁDIO – INTALACE JEDNOHO RÁDIA na jednom stroji RaspBery Pi, Raspbian:

Rádio pracuje na systému démona - MPD a jeho ovládátka - MPC. MPD je připojen do zdroje hudby
a je připraven hudbu posílat (streamovat) do zvolených výstupů. Naslouchá na defaultním portu 6600 a čeká na povely od MPC, který s démonem na tomto portu komunikuje.

výpis manuálů:
man mpd, man mpd.conf, man mpc 

napřed updatujeme systém: sudo apt-get update
- vlastní instalace: sudo apt-get install mpc mpd
- nevím úplně proč, ale je potřeba spustit toto: sudo modprobe ipv6
- je potřeba nakonfigurovat MPD: sudo nano /etc/mpd.conf

Zde je třeba nastavit zdroj hudby. Je možno na kopírovat soubory přímo na kartu do adresáře /var/lib/mpd/music (ale vejde se tam muzika podle velikosti karty) a pouze odkomentovat tento řádek:
music_directory                	"/var/lib/mpd/music"
NEBO
já mám hudbu na NAS úložišti, takže jsem ji připojil takto:
music_directory               	"smb://uzivatel_NAS:heslo_NAS@IP_NAS/adresar_hudby"
Nezkoumal jsem, jak tvořit konkrétní playlisty, spokojil jsem se s automatikou, že MPD načte všechny soubory a vytvoří playlist z určeného adresáře, je třeba mít odkomentovaný tento řádek:
playlist_directory              "/var/lib/mpd/playlists"
Defaultně je nastaveno, že se do playlistu vejde něco přes 16tis. skladeb, máte-li skladeb více, je potřeba vložit řádek s vlastním číslem:
max_playlist_length		"60000"

Další odkomentovaný řádek:
db_file                 	"/var/lib/mpd/tag_cache"

Tyto 3 odkomentované řádky není třeba měnit, ALE pamatujte si je pro případnou konfiguraci více rádií na jednom stroji:
log_file                        "/var/log/mpd/mpd.log"
pid_file                        "/run/mpd/pid"
state_file                      "/var/lib/mpd/state"

Další odkomentované řádky:
sticker_file		"/var/lib/mpd/sticker.sql"
user                            	"mpd"
bind_to_address 	"localhost"
Port, na kterém démon MPD naslouchá je zakomentovaný (je potřeba ho odkomentovat a měnit v případě více rádií na jednom stroji):
#port                           "6600"

Chcete-li, můžete odkomentovat (změnit):
save_absolute_paths_in_playlists        	"no"
auto_update    				"yes"
auto_update_depth 			"3"
Další odkomentované řádky:
follow_outside_symlinks 		"yes"
follow_inside_symlinks          		"yes"

Důležitá je konfigurace audio výstupu, je k dispozici spousta možností, zkoušel jsem jen výstup do zvukovky s připojeným reproduktorem např. takto:
audio_output {
        type            		"alsa"
        name           	 "Moje zvukové zařízení ALSA Device"
        device          	"hw:0,0" 	# optional
        mixer_type      	"hardware"      	# optional
        mixer_device    	"default"       	# optional
        mixer_control   	"PCM"           	# optional
        mixer_index     	"0"             	# optional
}
zároveň se streamováním:
audio_output {
       type            		"httpd"
       name            	"Můj HTTP Stream"
       encoder         	"lame"			# optional, vorbis or lame
       port            		"8000"
#      bind_to_address "0.0.0.0"			# optional, IPv4 or IPv6
#      quality         "5.0"                   		# do not define if bitrate is def$
       bitrate         "128"                   		# do not define if quality is def$
       format          "44100:16:2"
       max_clients     "0"                     		# optional 0=no limit
}
kde port 8000 je ten, na kterém rádio "vysílá" a pro poslech se pak zadává takto: http://IP_adresa_radia:8000/mpd
Samozřejmě je možno zvolit jiný volný port.

Podle výkonu mašiny, linky a očekávané návštěvnosti je vhodné omezit 
max_clients		"pocet_klientu"
Položka format je defaultně na konci s jedním kanálem (1) = mono. Já vyslílám stereo, takže:
format			"44100:16:2"

Dále jsem zvolil (nebo nechal) tyto možnosti:
volume_normalization            	"yes" (defaultně je vypnuto)
filesystem_charset		"UTF-8"
id3v1_encoding                  	"UTF-8"

Tím je konfigurace MPD pro jedno rádio na jednom stroji hotová.

Pro spuštění je ještě třeba ošetřit přístupová práva do adresářů:
sudo usermod -a pi -G audio (pi je uživatel Raspberry stroje)
sudo chmod g+w /var/lib/mpd/music/ /var/lib/mpd/playlists/
sudo chgrp audio /var/lib/mpd/music/ /var/lib/mpd/playlists/
 
Je třeba načíst skladby z adresáře do playlistu, to už dělá MPC:
mpc ls | mpc add
playlist si můžeme prohlédnout: mpc playlist
pozor, informace ze souborů se načítají delší dobu, takže zpočátku zobrazí jen pár skladeb, ale postupně se dočítají všechny
po změnách je dobré provést aktualizaci: mpc update
vyčistit playlist: mpc clear
pro opakování playlistu: mpc repeat
pro náhodné pořadí skladeb: mpc random
prolínání skladeb: mpc crossfade 5 (vteřiny)  
spustit rádio: mpc play
přehled dalších povelů - viz man mpc

Je-li (někdy) potřeba MPD restartovat: sudo /etc/init.d/mpd restart

SPUŠTĚNÍ VÍCE RÁDIÍ NA JEDNOM STROJI:
Je třeba:
- vytvořit další MPD konfigurační soubor, (nejlépe otevřít mpd.conf z prvního rádia a uložit pod jiným jménem) např. /etc/mpd_jiny.conf
- v něm zvolit jiný zdroj hudby:
sudo nano /etc/mpd_jiny.conf
music_directory	“smb://uzivatel_NAS:heslo_NAS@IP_NAS/jiny_adresar_hudby"
(nebo se jinak poprat s playlisty..)
změnit cestu na logy (a jiné) soubory:
log_file                        "/var/log/mpd/mpd_jiny.log"
pid_file                        "/run/mpd/pid_jiny"
state_file                      "/var/lib/mpd/state_jiny"

Port, na kterém démon MPD naslouchá je zakomentovaný a je potřeba ho odkomentovat a zvolit odlišný od prvního rádia, např:
Port			"6601"

Audio výstup je třeba také nasměrovat na odlišný port
audio_output {
       type		"httpd"
       name            	"Můj jiný HTTP Stream"
       encoder         	"lame		# optional, vorbis or lame
       port            		"8001"
#      bind_to_address "0.0.0.0"               	# optional, IPv4 or IPv6
#      quality         "5.0"                   	# do not define if bitrate is def$
       bitrate         "128"                   	# do not define if quality is def$
       format          "44100:16:2"
       max_clients     "0"                     	# optional 0=no limit
}
pro poslech rádia se pak zadává takto: http://IP_adresa_radia:8001/mpd

Ovládání více rádií:
Démony se pouštějí (a přepínají) zavoláním jejich konfigurace: 
sudo mpd /etc/mpd.conf resp. sudo mpd /etc/mpd_jiny.conf
Přiznám se, že přesný systém jsem neodhalil, někdy je potřeba je přepnout, někdy ne. MPC komunikuje s konkrétním démonem zadáním portu, na kterém ten konkrétní MPD naslouchá, tedy, např:
mpc -p 6601 ls | mpc -p 6601 add
mpc -p 6601 playlist
mpc -p 6601 play
Někdy je třeba povel zopakovat, nebo zkusit jiné pořadí (zvlášť při manipulaci s playlisty), démon možná moc dobře neslyší nebo MPC šeptá :-)

Pár dní zkouším 5 rádií současně na Raspbery Pi 3B+, samozřejmě mám posluchače jen z rodinného okruhu, takže bez velké zátěže (a závažného porušení autorských práv..) a funguje to.