วันศุกร์ที่ 4 มีนาคม พ.ศ. 2559

ติดตั้ง Samba และ mDNS และ MPD, MPC เพื่อเล่นเพลงบน Raspberry Pi A+

การเชื่อมต่อผ่านเครือข่ายถือว่าเป็นสิ่งสำคัญสำหรับ Raspberry Pi หรืออุปกรณ์ที่ทำงานเกี่ยวกับ IoT ทั้งหลาย ซึ่งการเชื่อมต่อเข้ากับระบบเน็ตเวิร์คทุกครั้งจะต้องติดต่อผ่าน IP แต่การแจกจ่าย IP เป็นแบบ DHCP ทำให้เราไม่ทราบว่า IP ที่ได้นั้นเป็นอะไร หรือเปลี่ยนแปลงตลอดเวลา ดังนั้นหากจะให้ง่ายก็ต้องติดตั้ง DNS คือ ตัวแปลงชื่อให้เป็น IP

ใน Raspberry Pi จะมีระบบ mDNS ซึ่งทำให้อุปกรณ์นั้นสามารถกำหนดชื่อแล้วตามด้วย .local เพื่อให้ง่ายต่อการเข้าถึงเช่น

openelec.local/ หรือ volumio.local/

การเข้าถึงต้องใส่เครื่องหมาย / ต่อท้ายด้วย ไม่เช่นนั้นจะกลายเป็นการค้นหาในเว็บเบราเซอร์




ติดตั้ง mDNS

mDNS มีหลายตัวในที่นี้จะใช้ avahi-daemon ซึ่งเป็นที่นิยมใน Linux โดยติดตั้งผ่านคำสั่ง

sudo apt-get install avahi-daemon

เพียงเท่านี้เราก็สามารถเรียกผ่าน mDNS ได้ โดยชื่อโฮสต์เนมเริ่มต้นของ Raspberry Pi มักจะเป็น raspberrypi ดังนั้นเราสามารถเรียกใช้งานผ่าน raspberrypi.local/ ที่เว็บเบราเซอร์ได้ทันที

แก้ไข Host Name 

เราสามารถกำหนดชื่อให้สอดคล้องกับเครื่องหรือ Project ของเราเพื่อให้ง่ายต่อการจดจำได้ เช่น openelec.local เป็นชื่อของระบบ OpenElec หรือ volumio.local เป็นชื่อของ Volumio เป็นต้น

วิธีการให้เข้าไปแก้ไขใน raspi-config ดังนี้

sudo raspi-config

เลือก Advance และเลือก Host name


ข้อกำหนดการตั้งชื่อจะใช้ตัวอักษรและตัวเลข ห้าใช้อักขรพิเศษ

เปลี่ยนชื่อที่เราต้องการ


ทดสอบ ping ชื่อที่เปลี่ยนจากเครื่องในเครือข่ายเดียวกัน

ping raspi-a.local

ถ้าไม่ผ่านก็ต้องไปตรวจสอบ host name กันให้ดี


ติดตั้ง Samba สำหรับแชร์ไฟล์

sudo apt-get install samba samba-common-bin
เสร็จแล้วเข้าไปแก้ไขไฟล์ smb.conf ดังนี้

workgroup = WORKGROUP
wins support = yes
[NAS]
 comment=Raspberry Pi NAS
 path=/home/pi/nas
 browseable=Yes
 writeable=Yes
 only guest=no
 create mask=0777
 directory mask=0777
 public=Yes
*** 

  1. wins support = yes ใช้สำหรับ Windows Client
  2. Public = Yes จะไม่ถาม Password แต่ถ้าต้องการให้ระบุ Password ให้กำหนดเป็น No แล้วใช้คำสั่ง sudo smbpasswd -a pi หลังจากนั้นให้ใส่รหัสผ่าน 2 ครั้งให้เหมือนกัน ปกติก็ใช้ raspberry ตามรหัสล็อกอิน


จากนั้นอย่าลืมเข้าไปสร้างไดเรคทอรีชื่อ nas และ playlists ใน /home/pi แล้วกำหนดให้สามารถเขียนได้ทุกคนด้วยคำสั่ง

mkdir /home/pi/nas
mkdir /home/pi/nas/playlists
chmod -R 777 /home/pi/nas


ติดตั้ง mpd, mpc

จากนั้นให้ติดตั้งโปรแกรมสำหรับเล่นเพลงซึ่งบน Linux มักจะใช้ mpd server และ mpc เป็นโปรแกรมเล่นเพลง เริ่มติดตั้งด้วยคำสั่ง

sudo apt-get install mpd mpc 

เสร็จเรียบแล้วเข้าไปแก้ไขไฟล์ /etc/mpd.conf ดังนี้

music_directory      "/home/pi/nas"
playlist_directory   "/home/pi/nas/playlists"

บันทึกไฟล์แล้วรีสตาร์ท mpd ด้วยคำสั่ง

sudo /etc/init.d/mpd restart

ฟังเพลงกันได้แล้ว

หลังจากติดตั้งโปรแกรมเสร็จต่อไปก็ลองฟังเพลงกัน ก่อนอื่นก็คัดลอกไฟล์เพลงไปเก็บไว้ในไดร์ฟแชร์ที่สร้างขึ้น ในที่นี้คือ nas โดยเข้าผ่าน Windows Explorer ดังนี้

หน้าจอเชื่อมต่อไปยัง raspi-a และมองเห็นโฟลเดอร์แชร์ที่สร้างไว้

เมื่อคัดลอกไปแล้วก็กลับไปที่หน้าจอ Terminal ให้ใช้คำสั่งจาก Command Line ดังนี้

อัพเดทไฟล์ใน NAS
mpc update 
เพิ่มไฟล์เพลงลงใน Playlists ก่อน ถึงจะเล่นเพลงได้
mpc ls | mpc add
เล่นเพลง
mpc play
mpc pause
mpc stop
mpc next
mpc prev
ปรับเสียง (0-100)
mpc volume 90

ลองดูคำสั่งเพิ่มเตมได้จากเว็บ mpc 


ถึงตอนนี้เชื่อว่าผู้อ่านคงเล่นเพลงผ่าน Raspberry Pi ได้กันบ้างแล้ว หากติดขัดประการใดก็สอบถามมาได้ หรือลองกลับไปดูขั้นตอนให้ดี อย่ารีบร้อน โลกของ OpenSource มันต้องใช้เวลาสั่งสมประสบการณ์ ถ้าทำได้แล้วสามารถต่อยอดได้อีกมาก

เราสามารถประยุกต์ใช้ Remote ควบคุมการเล่นเพลงผ่าน Remote หรือสวิทช์กดก็ได้ ซึ่งจะทะยอยแนะนำกันไป...



ไม่มีความคิดเห็น:

แสดงความคิดเห็น

Gtk4 ตอนที่ 6 Defining a Child object

Defining a Child object A Very Simple Editor ในบทความที่ผ่านมาเราสร้างโปรแกรมอ่านไฟล์ชนิดข้อความ และในบทความนี้ก็จะมาปรับแต่งโปรแกรมกันสักหน...