Trochę ponad półtora roku temu opisałem jak zainstalować i skonfigurować OwnCloud na komputerze z systemem Linux (na przykładzie Raspberry Pi). OwnCloud to całkiem solidny kombajn – znajdziemy w nim odtwarzanie filmów i muzyki, kalendarz, kontakty i zadania, aż po dysk internetowy (coś jak DropBox czy Copy).

W dzisiejszym wpisie chciałbym Wam przybliżyć aplikację mpd (Music Player Daemon), która bez problemu zainstalujecie na komputerze czy serwerze z systemem Linux… Ale by tradycji stało się zadość – przykład będzie oparty o Raspberry Pi z systemem Raspbian (Debian).

Wprawdzie na dziś zaplanowany był inny wpis, ale jak to często bywa – do publikacji skłonił mnie komentarz jednego z czytelników… Tak więc do dzieła…

mpd (Music Player Daemon)

Jest to malutki program, swego rodzaju lokalny serwera audio który pozwala nam zdalnie lub lokalnie kontrolować lokalne lub zdalne odtwarzanie muzyki. Ale może na przykładzie będzie łatwiej zrozumieć o co chodzi:

Odtwarzanie na głośnikach podłączonych do Raspberry Pi

Mamy Raspberry Pi z programem mpd, a do Pi mamy podpięte głośniki – teraz możemy za pomocą mpd wysłać sygnał audio na głośniki, a tym procesem możemy sterować z innego urządzenia za pomocą sieci, bądź bezpośrednio z poziomu konsoli.

Co więcej – odtwarzaniem można sterować z kilku urządzeń (klientów) symultanicznie, i będą one się automatycznie synchronizować. O samych  klientach umożliwiających sterowanie mpd więcej będzie za chwilę…

Odtwarzanie na urządzeniu zdalnym (streaming)

W kilku prostych krokach można zmienić mpd w serwer strumieniowy, dzięki któremu będziemy mogli słuchać muzyki serwowanej prosto z Raspberry Pi na innym urządzeniu (komputerze, telefonie, itp.).

O tym więcej również za chwilę…

mpd – instalacja i podstawowa konfiguracja

Jak zwykle – zaczynamy od aktualizacji systemu, po czym instalujemy program:

sudo apt-get install mpd mpc

Wprawdzie naszym głównym bohaterem jest mpd, to od razu można zainstalować mpc (Music Player Command). Jest to „konsolowy” klient dla usługi mpt. A więcej o klientach będzie za chwilę…

I przechodzimy do konfiguracji:

sudo nano /etc/mpd.conf

Konfiguracji jest całkiem sporo, ale ja na początek polecam zainteresować się wpisami:

  • music_directory – katalog z muzyka, można posiłkować się linkami symbolicznymi
  • playlist_directory – katalog z listami odtwarzania
  • db_file – katalog z bazą danych
  • port – port na którym nasłuchuje usługa połączenia od klientów (sterowanie)
  • bind_to_address „any”

Teoretycznie po tej konfiguracji program jest gotowy do działania, choć zanim do tego dojdziemy jeszcze stworzymy plik bazy danych:

sudo touch /var/lib/mpd/mpd.db

Oraz nadamy odpowiednie uprawnienia użytkownikowi „mpd” do „swojego katalogu”:

sudo chown -R mpd /var/lib/mpd

Na koniec restart usługi:

sudo /etc/init.d/mpd restart

Jeśli wszystko jest OK – usługa powinna uruchomić się prawidłowo…

Klient mpd, czyli sterowanie odtwarzaniem

Sam mpd robi za serwer audio, który wysyła dźwięk do odpowiedniego (skonfigurowanego) portu/urządzenia, ale przyda nam się jakiś klient by tym sterować/zarządzać. Z racji tego, że mpd jest dość popularnym rozwiązaniem, to nie powinniście mieć problemów ze znalezieniem odpowiedniej dla siebie aplikacji.

Od siebie pomogę polecić m.in.:

  • Gnome Music Player Client – aplikacja na komputer, dostępna zarówno dla systemu Windows, jak i Linux/Mac
  • mpc (Music Player Command) – klient mpd działający z poziomu konsoli, sterowanie odbywa się za pomocą poleceń
  • ncmpcpp – kolejny konsolowy klient, choć z bardziej „przyjaznym użytkownikowi” sterowaniem
  • MPDroid – Jedna z lepszych (a może i najlepsza?) aplikacja na urządzenia z systemem Android
  • Klient/skrypt PHP – tu nie mam swojego faworyta, ale chciałem zasygnalizować, że istnieje i taką możliwość

Gnome Music Player Client:

Ncmpcpp:

instalacja aplikacji w systemach Debian/Ubuntu:

sudo apt-get install ncmpcpp

MPDroid:

Listę aplikacji/klientów mpd znajdziecie na tej stronie…

VPN, czyli bezpieczne zarządzanie odtwarzaniem z internetu

Gdy zamierzacie słuchać muzyki przez internet zapewne będziecie chcieli umożliwić sobie sterowanie usługą z internetu.

Wprawdzie można przekierować na routerze port 6600 (domyślny port do kontroli), ale wtedy teoretycznie każdy będzie mógł się połączyc z Waszym urządzeniem i za Was sterować usługą.

W tym wypadku polecam skorzystać z VPNa.

Odtwarzanie lokalne i sieciowe (streaming)

Aplikacje do sterowania tym co jest odtwarzane mamy już za sobą – teraz pora na efekty, czyli muzykę :-)

Od razu dodam – nic nie stoi na przeszkodzie by skorzystać z więcej niż jednego „wyjścia audio”, czyli można naraz strumieniować audio „w świat” i zarazem odtwarzać na głośnikach wpiętych bezpośrednio do urządzenia.

Pamiętajcie też, by po każdej zmianie konfiguracji zrestartować usługę:

sudo /etc/init.d/mpd restart

alsa, czyli odtwarzanie lokalne

Standardowo mpd wysyła sygnał audio na lokalne wyjście audio (np. gniazdo głośników), i odpowiada za to np. taka konfiguracja w „mpd.conf”:

audio_output {
type        „alsa”
name        „My ALSA Device”
device        „hw:0,0”    # optional
format        „44100:16:2”    # optional
mixer_device    „default”    # optional
mixer_control    „PCM”        # optional
mixer_index    „0”        # optional
}

Jeśli korzystasz z Raspberry Pi przeczytaj jak zarządzać/sterować wyjściem audio w systemie Raspbian…

https, czyli odtwarzanie strumieniowe

Nic nie stoi tez na przeszkodzie by na bazie mpd zrobić swoje prywatne radio internetowe, tj. słuchac odtwarzanej muzyki z dowolnego urządzenia, przez sieć LAN czy internet.

Za aktywację strumieniowania audio odpowiada np. taka konfiguracja w „mpd.conf”:

audio_output {
type        „httpd”
name        „My HTTP Stream”
encoder        „lame”        # optional, vorbis or lame
port        „8000”
#    quality        „5.0”            # do not define if bitrate is defined
bitrate        „128”            # do not define if quality is defined
format        „44100:16:2”
}

Taki zapis umożliwi odtwarzanie muzyki za pośrednictwem przeglądarki internetowej i/lub dowolnego programu który pozwala na strumieniowe odtwarzanie audio ze wskazanego adresu URL.

Podstawowy adres audio:

http://Twoje_publiczne_IP:8000

Gdy zamierzacie słuchać muzyki przez internet pamiętajcie by odblokować odpowiedni port na Waszym routerze.

(!) Zgłoś błąd na stronie
Spodobał Ci się artykuł? Zapisz się do naszego Newslettera - ZERO SPAMu, same konkrety, oraz dostęp do dodatkowych materiałów przeznaczonych dla subskrybentów!
Na podany adres e-mail otrzymasz od nas wiadomość e-mail, w której znajdziesz link do potwierdzenia subskrypcji naszego Newslettera. Dzięki temu mamy pewność, że nikt nie dodał Twojego adresu przez przypadek. Jeśli wiadomość nie przyjdzie w ciągu najbliższej godziny (zazwyczaj jest to maksymalnie kilka minut) sprawdź folder SPAM.

Patryk

CEO Webinsider.pl, a do tego CTO, CIO, CFO, CMO, CSO, COO i CRO ;-)
Pasjonat nowych technologii - od sprzętu po oprogramowanie, od serwerów po smartfony i rozwiązania IoT. Potencjalnie kiepski bloger, bo nie robi zdjęć "talerza" zanim zacznie jeść.

Dumny przyjaciel swoich psów :-)
Napisz komentarz
wipl_napisz-komentarz_01
Jeśli informacje zawarte na tej stronie okazały się pomocne, możesz nam podziękować zostawiając poniżej swój komentarz.

W tej formie możesz również zadać dodatkowe pytania dotyczące wpisu, na które – w miarę możliwości – spróbujemy Ci odpowiedzieć.
Linki partnerskie
Niektóre z linków na tej stronie to tzw. „linki partnerskie”, co oznacza, że jeśli klikniesz na link i dokonasz wymaganej akcji (np. zakup/rejestracja) możemy otrzymać za to prowizję. Pamiętaj, że polecamy tylko te produkty i usługi, z których sami korzystamy, i uważamy, że są tego na prawdę warte… :-)
Znaki towarowe i nazwy marek
W niektórych wpisach (oraz innych miejscach na stronie) mogą być przedstawione/użyte znaki towarowe i/lub nazwy marek, które stanowią własność intelektualną tych podmiotów, a zostały użyte wyłącznie w celach informacyjnych.