Кіріспе

Тегін және ашық бастапқы коды бар бағдарламалық құралдар

Music Player Daemon (MPD) – тегін және ашық бастапқы коды бар музыка ойнатқыш сервер. Ол дыбыс файлдарын ойнатады, ойнату тізімдерін ұйымдастырады және музыка дерекқорын сақтайды. Онымен байланысу үшін клиенттік бағдарлама қажет. MPD дистрибуциясы mpc, қарапайым командалық жол клиентін қамтиды. MPD коммерциялық аудио жабдықтарында қолданылады. MPD жобасы сатушылардың тізімін ұстап тұрады, олардың кейбіреулері GPL лицензиясын бұзады.

Дизайн

MPD тек қана өзінің ойнату тізімінен музыка ойнатып, фоно режимінде жұмыс істейді. Клиенттік бағдарламалар MPD-мен байланысып, ойнатуды, ойнату тізімін және деректер базасын басқаруға мүмкіндік алады. Бұл Amarok сияқты толыққанды музыкалық ойнатқыш емес, бірақ оның клиенттері осындай қызметті атқара алады. MPD музыка файлдары туралы негізгі ақпаратты сақтау үшін жазық файлдық деректер базасын пайдаланады, егер ол жұмыс істемейтін болса. Демон іске қосылғаннан кейін деректер базасы толығымен жадта сақталады және жергілікті аудио файлдарды іздеу үшін немесе қарау үшін қатты дискіге қатынау қажеттілігі туындамайды. Әдетте, музыка файлдары музыка каталогының ішкі каталогында орналасуы керек және деректер базасына тек жаңарту командасы серверге жіберілген кезде ғана қосылады. Кез келген файлдарды ойнатуға рұқсат етіледі, бірақ бұл мүмкіндік тек Unix Domain Socket арқылы серверге қосылған жергілікті клиенттерге ғана қолданылады. MPD-де ендірілген тег редакторы жоқ; бұл функционалдылық клиенттер немесе сыртқы бағдарламалар арқылы жүзеге асырылады, алайда серверге осы мүмкіндікті қосу үшін үшінші тараптан патчтар бар. Клиент-сервер моделі, барлық мүмкіндіктері бар музыкалық ойнатқыштарға қарағанда бірнеше артықшылықтар ұсынады. Клиенттер сервермен қашықтан, интранет немесе Интернет арқылы байланыса алады. Сервер желідегі кез келген жерде орналасқан, графикалық интерфейсі жоқ компьютер болуы мүмкін. X қолданылмай немесе қайта іске қосылмай тұрғанда музыка ойнату үздірілмей жалғаса береді. Әртүрлі клиенттерді әртүрлі мақсаттар үшін пайдалануға болады – ойнатуды басқару үшін әрдайым ашық күйде қалған жеңіл клиенттер, ал деректер базасын кең ауқымды іздеу үшін толыққанды мүмкіндіктерге ие клиенттер. Бірнеше клиент бір деректер базасын бір уақытта, қашықтан немесе әртүрлі пайдаланушы тіркелгіштері арқылы пайдалана алады.

Ерекшеліктері

Ogg Vorbis, FLAC, Opus, WavPack, MP2, MP3, MP4/AAC, MOD, Musepack, wave файлдарын және FFmpeg қолдайтын кез келген басқа файлдарды ойнатады. Желі арқылы (IPv4 және IPv6 қолдауы бар) MPD-ні қашықтан басқаруға болады. FLAC, OggFLAC, MP3 және Ogg Vorbis HTTP ағындарын ойнатады. Метадеректерді (ID3: ID3v1 және ID3v2), Vorbis пікірлемелерін және MP4 метадеректерін оқиды және кэштейді. Метадеректер бойынша іздеуге болады. Ойнату үшін буферлік қолдау (жоғары жүктеме немесе желілік кешігу кезінде музыканы өткізіп жібермеу үшін). Үзіліссіз ойнату. Кросфейдинг қолдауы. Іздеу мүмкіндігі. Ойнату тізімдерін (M3U форматында) сақтау, жүктеу және басқару. Жергілікті Zeroconf қолдауы. libsamplerate және түпкілікті үлгі алу жылдамдығын түрлендіру. ALSA, PulseAudio, PipeWire, OSS, MVP, JACK, Windows және macOS жүйелерін қолдау. Ogg Vorbis және MP3 форматтарында Icecast ағыны үшін дереккөз ретінде пайдалануға болады. Басқа форматтарды ағындық серверге жібермес бұрын Ogg/MP3 форматына өзгертуге болады. Ogg Vorbis және MP3 ағындарын таңдалған сапада шығара алатын кіріктірілген HTTP ағындық сервер. Графикалық интерфейске тәуелсіз. Музыка фронт-энд ашық болса да, болмаса да ойнатылады, тіпті X сервері жабылып қалса да ойнау жалғасады. Сығылған zip архивтеріндегі музыка файлдарын ойнатады.

Клиенттер

MPD сервермен TCP қосылысы арқылы қолданылатын арнайы протоколмен байланысатын әртүрлі интерфейстерге ие. Клиенттер көбінесе әртүрлі типтегі интерфейстерді қолданады.

Консоль

mpc (MPD жобасының бөлігі) – сервердің көптеген функцияларына арналған қарапайым командалық қатар интерфейсі. ncmpc (MPD жобасының бөлігі) – MOC тұжырымдамасына ұқсас, толық мүмкіндіктерге ие ncurses клиенті. ncmpcpp – бұл функцияларын көшіретін, бірақ тег редакторы сияқты жаңа мүмкіндіктері бар тағы бір ncurses клиенті. Practical Music Search – Vim сияқты интерфейсі бар тағы бір ncurses клиенті. fmui – fzf және mpc арқылы жасалған терминал пайдаланушы интерфейсі.

Графикалық

Ario GTK+ негізінде құрылған және интерфейсінде қойындыларды пайдаланады. Cantata Windows, macOS және Linux жүйелерінде жұмыс істейді, кітапхананы немесе ойнату тізімдерін басқару үшін Qt 5 қолданады, сондай-ақ тегтер редакторы, ән мәтіндері мен обложкаларды интернеттен жүктеу және жаппай сақтау құрылғыларын қолдау сияқты мүмкіндіктері бар. Cantata 2017 жылдың қазан айында Linux дистрибутиві Kubuntu-ның стандартты аудио ойнатқышы ретінде танылды, бұл Amarok аудио ойнатқышының орнына болды. Gimmix өте аз жадты пайдаланатын қарапайым интерфейс ұсынады. gmpc – ең ескі GTK+ 2 (GTK+ 3 даму нұсқасы) клиенті, ол музыка коллекциясын қарастырудың көптеген әртүрлі тәсілдерін және ән мәтіндері, обложкалар, орындаушы/альбом туралы ақпарат, орындаушы/альбом/түрлі фондық суреттер, ұқсас орындаушылар және тағы да басқа бай метадеректерді ұсынады. Клиент мүмкіндіктерге толы, бірақ төменгі деңгейдегі аппараттық құралдарда тұрақты жұмыс істеу үшін жеңіл болуға бағытталған. Интеллектуалды музыка ойнатқыш клиенті (IMPC) GTK+ 3.0 қолданады және ойналып жатқан әнмен байланысты ақпаратты (мақалалар, обложкалар, суреттер) жүктеуді қолдайды, сондай-ақ байланысты мазмұнды жіктеуге үйренеді. mpdlirc инфрақызыл қашықтан басқару арқылы MPD-мен байланыс жасайды. Qmobilempd, әсіресе Symbian сияқты мобильді құрылғылар үшін Qt4 клиентін ұсынады. Qmpdplasmoid KDE жұмыс үстеліне тікелей енгізілген клиентті ұсынады. Sonata GTK+ пайдаланып, файлдарды ойнату және ойнату тізімдерін басқаруға арналған графикалық интерфейс ұсынады.

Қозғалтқыш

MPDPilot – iOS үшін заманауи және қолдануға оңай MPD клиенті. M.A.L.P. – Android үшін жылдам әрі пайдалануға ыңғайлы MPD клиенті.

Көбірек

Толық тізімді Клиенттердің MPD Wiki сайтынан қараңыз. Қарапайым клиенттер серверге командалар жіберу үшін бағдарламаны скрипттеуге болады. Кейбір клиенттер HTML немесе AJAX қолданушы интерфейсін ұсынады және сервермен бір компьютерде орналасуы мүмкін, мұнда клиенттік машинада тек браузер орнатылған болуы керек. Firefox кеңейтімдері, Xfce панель плагині, Wii қолданбасы және Windows 8/Windows RT үшін Windows Store қолданбасы ретінде іске асырылған клиенттер бар. C, Python, Ruby, Perl, Lua және Haskell сияқты көптеген бағдарламалау тілдерінен MPD-мен байланысу үшін кітапханалар бар. Emacs Lisp кітапханасы Emacs-тан MPD-ді басқаруға мүмкіндік береді.