یکی از چیزهایی که من توی گنو/لینوکس خیلی دوستش دارم اینه که لازم نیست برای هر کاری یه برنامهی سنگین با رابط گرافیکی باز کنی. مثلاً برای پخش موزیک.
امروز توی این پست از بلاگم یه سری میزنیم به MPD و کلاینت ترمینالیش ncmpcpp، که باهاش بتونیم بدون حواسپرتی موزیک گوش بدیم :)
ابزار MPD یه دیمون پخش موزیکه که در پسزمینه اجرا میشه و کارش فقط مدیریت و پخش صداست. ncmpcpp هم یه رابط ترمینالیه که باهاش با MPD حرف میزنی. این دوتا با هم خیلی خوب جفت میشن.
نصب روی پارچ لینوکس
پارچ لینوکس مبتنی بر آرچه، پس مستقیم از مخازن پکیجها رو نصب میکنیم:
sudo pacman -S mpd mpc ncmpcpp
اینجا سه تا چیز نصب میشه: خود MPD که دیمون اصلیه، mpc که یه کلاینت خطفرمان سادهست برای دستورهای سریع، و ncmpcpp که رابط اصلی ترمینالی ماست.
ساختار پوشهها
قبل از هر چیز باید پوشههای لازم رو بسازیم:
mkdir -p ~/.config/mpd ~/.local/share/mpd/playlists
touch ~/.local/share/mpd/database
فایل تنظیمات MPD
فایل تنظیمات اصلی رو در این آدرس میسازیم: ~/.config/mpd/mpd.conf
music_directory "~/Music"
playlist_directory "~/.local/share/mpd/playlists"
db_file "~/.local/share/mpd/database"
log_file "~/.local/share/mpd/mpd.log"
pid_file "~/.local/share/mpd/mpd.pid"
state_file "~/.local/share/mpd/state"
bind_to_address "127.0.0.1"
port "6600"
audio_output {
type "pipewire"
name "PipeWire Output"
}
نکته: اگه از PulseAudio استفاده میکنید، مقدار type رو از pipewire به pulse تغییر بدید.
راهاندازی به عنوان سرویس کاربر
بهترین روش اینه که MPD رو به عنوان سرویس کاربر فعال کنیم تا با ورود به سیستم خودش بالا بیاد:
systemctl --user enable --now mpd
تنظیمات ncmpcpp
حالا نوبت رابط ترمینالیمونه. پوشه و فایل تنظیماتش رو میسازیم:
mkdir -p ~/.config/ncmpcpp
فایل ~/.config/ncmpcpp/config رو با این محتوا میسازیم:
mpd_host = 127.0.0.1
mpd_port = 6600
user_interface = classic
media_library_primary_tag = album_artist
playlist_display_mode = columns
browser_display_mode = columns
progressbar_look = ━━╸
بعد از ذخیره، کافیه توی ترمینال بنویسیم ncmpcpp و اینتر بزنیم.
کلیدهای اصلی داخل ncmpcpp
| کار | کلید |
|---|---|
| پخش / مکث | p |
| توقف | s |
| آهنگ بعدی | > |
| آهنگ قبلی | < |
| افزودن به پلیلیست | a |
| بهروزرسانی پایگاه داده | u |
| جستجو | / |
| رفتن به صفحات مختلف | 1 تا 8 |
پخش رادیو اینترنتی
یکی از کاربردهای جالب MPD اینه که میتونیم مستقیم یه آدرس استریم بدیم بهش. سیدمهدی یک رادیوی اینترنتی داره که توی این آموزش من ازش استفاده میکنم.
مثلاً برای پخش رادیو لوفای:
mpc clear
mpc add https://radio.9craft.ir:7443/lofi
mpc play
اگه بخوایم این رادیو رو برای دفعات بعد ذخیره کنیم، باید یک فایل پلیلیست بسازیم:
~/.local/share/mpd/playlists/lofi.m3u
با این محتوا:
#EXTM3U
#EXTINF:-1,Lofi Radio
https://radio.9craft.ir:7443/lofi
دفعه بعد کافیه بنویسیم:
mpc clear && mpc load lofi && mpc play
همین :) الان یک پخش کننده موسیقی داریم که بدون دردسر خاصی کار میکنه و میتونیم باهاش بدون حواسپرتی به موزیک گوش بدیم.
اگر سوالی دارید خوشحال میشم بهم ایمیل بزنید. الان جیمیل کار میکنه.
behdanisohrab@gmail.com
اگر به هر دلیلی به جیمیل هم نتونستید دسترسی بگیرید روی چاپار هم حساب دارم ولی خب اونجا دیگه باید حساب شده صحبت کنیم :)
behdanisohrab@chmail.ir