ความเห็น: 56
การทำสถานีวิทยุ Online ด้วย Shoutcast Server ฉบับ Mr_Gill
สวัสดีครับท่านทุกคนคืนนี้ว่างจัดเลยมานั่งเขียนเรื่องการทำ Audio Broadcast ด้วย Shoutcast Broadcast Server ซึ่งมันก็ไม่ได้มีขั้นตอนอะไรยุ่งยากสักเท่าไหร่เลยมาเขียนให้ได้อ่านกัน
ขั้นแรกต้องถามตัวเองก่อนครับว่าเราจะติดตั้ง Shoutcast ใน OS อะไร ในที่นี่ผมขอเสนอ 3 ประเภทแล้วกันน่ะครับ
1.Windows XP Professtional SP2
2.FreeBSD
3.Linux
อธิบายหลักการทำงานของ Shoutcast กันก่อนน่ะครับ
หลักการทำงานของ Shoutcast มีอยู่ว่าเจ้าตัว Shoutcast เองไม่ได้มีหน้าที่เล่นเพลงแต่อย่างใด มันมีหน้าที่อย่างเดียวคืนกระจ่ายสัญญาณเสียงให้กับเครื่องที่ Request ขอเข้ามา(เครื่องผู้ฟังนั้นเอง) เราจำเป็นต้องมี Client ที่คอย encode ไฟล์เพลง หรือพูดง่ายก็คือต้องมี DJ หรือ PJ ค่อยเปิดเพลงแล้ว encode ให้เจ้า Shoutcast กระจายให้นั้นเอง
ดังนั้นเราจึงต้องมี software ที่คอย encode ให้ Shoutcast ในที่นี่ขอแนะนำ SHOUTcast DSP Plug-In for Winamp 5.x
คุณสามารถ Download Shoutcast Server ได้จากที่นี่
ไฟล์ Binary Shoutcast ภาษาไทย
และ Download SHOUTcast DSP Plug-In for Winamp 5.x
SHOUTcast DSP Plug-In for Winamp 5.x
เริ่มกันเลยผมขอเริ่มด้วยการติดตั้ง Shoutcast Broadcast Server บน Windows XP ก่อนละกันน่ะครับ
1.เริ่มด้วยการดาวน์โหลดโปรแกรมมาก่อนน่ะครับ
2.จากนั้นก็ติดตั้งปกติ Next ไปเรื่อยๆ มันจะถามนิดหน่อยให้เราเลือก Console แต่เราสามารถใช้ค่า Default ของมันได้เลย
3.เมื่อติดตั้งเสร็จโปรแกรมจะถูกติดตั้งไว้ในโฟลเดอร์ C:\Program Files\SHOUTcast
4.เข้าไปในโฟล์เดอร์ C:\Program Files\SHOUTcast
5.คลิกขวาที่ไฟล์ sc_serv.ini (สังเกตมันจะเป็นไฟล์เอกสารที่มีรูปเฟืองอะครับ)จากนั้น Open With >> Choose Program.. >> Wordpad หรือถ้าใครมี EditPlus ก็สามารถเปิดจาก EditPlus ได้
6.มี 2 จุดสำคัญที่เราต้องแก้ไขครับ
6.1 หาบรรทัดที่เขียนว่า
password=changme เปลี่ยนจาก changme เป็น password เราครับนี่เป็น passwd สำหรับคนที่จะ encode เข้ามายังเครื่องของเราครับ ตัวอย่าง
password=encoder123
; AdminPassword=adminpass ให้เอาเครื่องหมาย ; ออกน่ะครับจากนั้นหลังเครื่องหมาย = เราสามารถเปลี่ยนได้ตามต้องการ นี่เป็น password สำหรับ admin ตัวอย่างหลังการแก้ AdminPassword=admin1234
6.2 หาบรรทัดที่เขียนว่า
PortBase=8000 นี่เป็น port ที่เราจะใช้ในการ Broadcast และ encoding เข้ามา เรามาสามารถแก้ได้ตามความเหมาะสมแต่ต้องระวังเรื่องการชนกันของ port ด้วยนะครับ ต้องแน่ใจว่า port ที่เราเปลี่ยนมาใช้นั้นไม่ได้ถูกใชู้่โดยโปรแกรมอื่น
หลังจากแก้ไขเรียบร้อยแล้วก็ save ให้เรียบร้อย
7.จากนั้นเราก็มา run ตัว Shoutcast ได้เลยครับ โดยการคลิก Start >> All Programs >> SHOUcast DNAS >> SHOUTcast DNAS (GUI ) เป็นอันเสร็จในฝั่ง Server
มาต่อกันด้วยการติดตั้งบน FreeBSD กันครับ
ต้องบอกไว้ก่อนน่ะครับคือ ผมติดตั้งบน FreeBSD 6.1 STABLE สำหรับผู้ที่ใช้ FreeBSD4x หรือ 5x สามารถดาวน์โหลดเวอร์ชั่นสำหรับ FreeBSD ของท่านได้เลย แต่คนที่ลง FreeBSD6x ก็สามารถติดตั้งได้เหมือนกันครับโดยการตั้งตั้ง package compat5x เข้าไปขั้นตอนการติดตั้ง compat5x
# cd /usr/ports/misc/compat5x/
# make install clean
# echo 'compat5x_enable="YES"' >> /etc/rc.conf
# reboot สัก 1 รอบ
หลังจากระบบของเราพร้อมแล้วก็มาติดตั้งกันเลย
1.login เข้าระบบ
2.ทำการ download shoutcast มาไว้ที่ server ของเราครับ
# cd /tmp
# fetch http://www.shoutcast.com/downloads/sc1-9-5/shoutcast-1-9-5-freebsd4-elf.tar.gz สำหรับ FreeBSD4x หรือ
# fetch http://www.shoutcast.com/downloads/sc1-9-5/shoutcast-1-9-5-freebsd5-elf.tar.gz สำหรับ FreeBSD5x
3.เมื่อดาวน์โหลดเสร็จแล้วทำการ extract ออกมาด้วยคำสั่ง
# tar -xvvzf shoutcast-1-9-5-freebsd4-elf.tar.gz สำหรับ FreeBSD4x หรือ
# tar -xvvzf shoutcast-1-9-5-freebsd5-elf.tar.gz สำหรับ FreeBSD5x
เราจะได้ directory shoutcast-1-9-5-freebsdX-elf X = version ที่คุณโหลดมา
4.จากนั้นทำการย้าย directoty ทีได้ไปเก็บไว้ใน /usr/local/
# mv shoutcast-1-9-5-freebsdX-elf /usr/local
5. แล้วเปลี่ยน directory ไปยัง /usr/local/shoutcast-1-9-5-freebsdX-elf
# cd /usr/local/shoutcast-1-9-5-freebsdX-elf
6.ทำการแก้ไขไฟล์ sc_serv.conf ด้วย editor ตัวไหนก็ได้ผมขอใช้ ee ละกัน
# cp sc_serv.conf sc_serv.conf.bak
# ee sc_serv.conf
ทำการแก้ไขเหมือนกับข้อ 6.1 และ 6.1 บน windows แล้ว save ให้เรียบร้อยครับ
7.ทำการ chmod ให้กับไฟล์ sc_serv เพื่อให้สามารถ run ได้
# chmod +x sc_serv
8.ทำการ run sc_serv ได้เลยครับ
# ./sc_serv sc_serv.conf
*** เห็นถามกันมามากเหลือเกินเลยมาแก้เนื้อหาให้ครับ สำหรับคนที่ต้องการเปิด port มากกว่า 1 port ก็ให้ทำการก๊อปปี้ไฟล์คอนฟิกเพิ่มเป็นหลายๆ ไฟล์ตามต้องการเลยน่ะครับ แล้วก็ไปเปลี่ยน password และก็ port ในนั้นแล้วเวลารันก็สั่ง # ./sc_serv ตามด้วยชื่อไฟล์คอนฟิก เช่น # ./sc_serv p8000.conf หรือ # ./sc_serv sc_p9000.conf
ถ้าต้องการให้ sc_serv start เองเวลา boot เครื่องก็สามารถเขียนเป็น shell script สั่นๆ ไว้ใช้งานกันได้โดยการ
# ee /usr/local/etc/rc.d/sc_serv.sh จะเข้าสู่หน้า editor ของ ee
พิมพ์
/usr/local/shoutcast-1-9-5-freebsdX-elf/sc_serv /usr/local/shoutcast-1-9-5-freebsdX-elf/sc_serv.conf & เข้าไปครับ อย่าลืมน่ะครับ X = version ที่ท่านโหลดมา จากนั้นทำการ save ให้เรียบร้อย
จากนั้นก็ทำการ
# chmod +x /usr/local/etc/rc.d/sc_serv.sh
# echo 'sc_serv_enable="YES"' >> /etc/rc.conf
# reboot ดูผล
เสร็จครับ
มาถึงการติดตั้งบน Linux ก้นบ้าง
มันก็ไม่มีอะไรแตกต่างจากการ config บน FreeBSD สักเท่าไหร่ครับ
1.ดาวน์โหลด http://www.shoutcast.com/downloads/sc1-9-5/shoutcast-1-9-5-linux-glibc6.tar.gz มา
2.ทำการ extract ออกมาแล้วย้ายไปเก็บไว้ที่ /usr/bin (ความจริงจะเก็บไว้ที่ไหนก็ได้ครับไม่สำคัญสักเท่าไหร่)
3.เข้าไปแก้ไฟล์ sc_serv.conf เหมือนกับที่แก้ไขบน windows แล้วทำการ save
4. # chmod +x sc_serv
5.ทำการ run sc_serv ได้เลยครับ
# ./sc_serv sc_serv.conf
หากต้องการให้ shoutcast ทำงานหลาย port โปรแกรมด้านบน
*** ข้อควรระวังของการติดตั้ง Shoutcast Server คือ ถ้าหาก Sever ได้ติดตั้ง Firewall ไว้ควร Allow port ที่เราได้ตั้งไว้ในไฟล์ config ไม่งั้นจะไม่สามารถใช้ port ที่่ตั้งไว้ได้ครับ
หลังจากเราได้ติดตั้ง Server เสร็จเรียบร้อยแล้วก็มาจัดการกับตัว encode กันบ้างครับ
ผมใช้ winamp 5.12 สำหรับ encode น่ะครับ
1.ดาวน์โหลด http://www.shoutcast.com/downloads/shoutcast-dsp-1-9-0-windows.exe มาแล้วติดตั้งครับ Next อย่างเดียว
2. หลังจากติดตั้งแล้วเปิดโปรแกรม Winamp ขึ้นมา
3. เข้าไปที่หน้า Preferences ของ winamp ครับ โดยการคลิกขวาที่ส่วนของหัวโปรแกรม winamp >> Options >> Preferences... หรือกด Ctrl+p ก็ได้ครับ
4.ตอนนี้เราจะอยู่ที่หน้า Preferences ของ winamp แล้วน่ะครับ เลือกหัวข้อ DSP/Effect หน้าต่างด้านขวาจะแสดงDSP ที่ winamp มีอยู่ คลิกเลือกที่ Nullsoft SHOUTcast Source DSP V1.9.0 (dsp_sc.dll) จากนั้น มันจะเปิดหน้า config ของ SHOUTcast Sourc มาให้น่ะครับ
จะมีอยู่ด้วยกัน 4 tab เลือก tab ที่ 2 Output ก่อนน่ะครับ 
5.ช่อง Address กรอก ip หรือ domain ของ server ที่เราได้ติดตั้ง Shoutcast Server ไว้ ถ้าเป็น windows เรามาสามารถติดตั้ง server และตัว encode ไว้ในเครื่องเดียวกันได้ ถ้าติดตั้งภายในเครื่องเดียวเราก็ใส่เป็น localhost ครับ
6.ช่อง Port กรอก port ที่เราได้ตั้งไว้ในไฟล์ config
7.ช่อง Password กรอก password ที่เราได้ตั้งไว้ในไฟล์ config
8.สำหรับช่อง Encoder เลือกเป็น 1 ไว้น่ะครับ
9.กรอกข้อมูลครบแล้วคลิกที่ปุ่ม Connect ถ้าหาก connect ติดแสดงว่าผ่านครับ (สังเกตตรง Status น่ะครับ จากเดิม Not Connected จะเป็นดังรูปข้างล่าง)

หลังจากตั้งค่าเสร็จคลิกทีุ่ปุ่ม Yellowpages แล้วตั้งค่าต่างๆ ตามต้องการ
9.จากนั้นเปลี่ยนไปยัง tab Encoder

10.เมื่อกี้ตอนเราแก้ไขข้อมูลหน้า Output เราได้เลือก Encoder 1 ไว้เราสามารถตั้งค่าได้ตามความต้องการครับ
11.ทดลองฟังโดย copy url ของ server รูปแบบ http://ipserver:port ไปวางในช่อง Open url ของ pleyer ใดๆ
เช่น http://cpe-ru.homeip.net:30000 เอาไปวางในช่อง Open url ของ windows medial player หรือ pleyer ตัวอื่นๆ ถ้าอยาก connect กับ server ได้และ buffer จนได้ยินเสียงเพลง แสดงว่าผ่านครับ ถ้าหากไม่ผ่านลองไล่ดูขึ้นตอนใหม่น่ะครับ
ยังไม่เสร็จครับ แหมผมลืมไปได้ยังไงเนี่ย
มาส่วนของ web admin กันครับ ผมลืมไปเลย
เรามาสามารถดูว่ามีคนฟังกี่คน จาก ip อะไร สามารถ ban ip ต่างๆ ได้จากหน้า page
http://yourhost:port/admin.cgi
เช่นของผม http://cpe-ru.homeip.net:30000/admin.cgi
กรอก
user : admin
passwd: พาสเวิส ที่คุณได้ตั้งไว้ในไฟล์ config
สำหรับผู้ฟังก็เข้าไปดูรายชื่อเพลงที่กำลังเล่นได้ที่ http://yourhost:port/
เช่น http://cpe-ru.homeip.net:30000
บันทึกอื่นๆ
- เก่ากว่า « วิธีเปลี่ยน Registered owner nam...
- ใหม่กว่า » Live Video Steaming โดยใช้ NSVca...
ความเห็น
ขอบคุณมากครับ คุณ mrGilL
ผมลองศึกษ .bat ดูแล้ว แต่ก็ยังไม่รู้จะเขียนยังไงดีอ่ะครับ
เลยจะขอรบกวนคุณ mrGilL
ช่วยเขียนตัวอย่าง เพื่อให้ผมศึกษาสักหน่อยนะครับ
เพราะไม่ทราบว่าจะสั่ง รันโปรแกรมให้ได้หลายสถานียังไงอ่ะครับ
และจะต้องรัน อะไรยังไงด้วยอ่ะครับ
(ผมไม่เก่งเรื่องคอมสักเท่าไรครับ)
กว่าจะวิธีให้โปรแกรมรันออโต้ก็ใช้เวลานานล่ะ..^_^
ขอบพระคุณมากครับ
log file มันชอบขึ้นว่า
[yp_add] yp.shoutcast.com gave error (nak)
[yp_add] yp.shoutcast.com gave extended error (Please identify this station's genre (in the dsp plugin YP tab).)
ไม่ทราบว่า เป็นเพราะอะไรอ่ะครับ ขอบพระคุณครับ
บอกไงดีวิธีสร้าง .bat ไฟล์
ทำได้หลายวิธีครับ
ผมแนะนำวิธีการละกันนะครับ
วิธีการรันหลายๆ port ต้องมีกลักการดังนี้
ห้ามเปิด port ติดกัน เช่น เปิด port 8000 ห้ามเปิด port 8001 ติดกัน ต้องไปเปิด 8002 นะครับเพราะ shoutcast จะสงวนไว้สำหรับเป็น input port
วิธีเปิดหลายๆ port ทำได้โดย copy ไฟล์ sc_serv.ini เพิ่ม เช่น
ผมต้องการเปิด port 8000 กับ 8002
ผม copy ไฟล์ sc_serv.ini ไปเป็นชื่อ sc_serv_8000.ini กับ sc_serv_8002.ini (ชื่อไฟล์จะเป็นอะไรก็ได้)
จากนั้นเปิด notepad แล้วใส่บรรทัดเหล่านี้เข้าไป
C:\Shoutcast_Install_Path\sc_serv.exe C:\sc_serv_path\sc_serv_8000.ini
C:\Shoutcast_Install_Path\sc_serv.exe C:\sc_serv_path\sc_serv_8002.ini
save เป็นชื่อ start_shoutcast.bat
ถ้าอยากให้ start เองทุกครั้งที่เปิดเครื่องก็เอาไฟล์ .bat ที่สร้างไปไว้ใน folder C:\Documents and Settings\userlogin\Start Menu\Programs\Startup ครับ
ลองทำดูนะครับ
ส่วนเรื่อง log มันก็เป็นปกติของมันอย่างนั้นแหละครับ
ขอบพระคุณมากๆ ครับ
ผมลองรันแล้ว .bat แล้ว แต่ว่าโปรแกรมไม่รันตามอ่ะครับ
ก็เลย ก๊อปโปรแกรมทั้งโฟรเดอร์ ไว้อีกอัน ก็เลยเปิดโปรแกรม 2 อันซ้อน ตามจำนวนสถานี
แต่มีปัญหาว่า สถานีที่ 2 login ไม่ได้เลยอ่ะครับ
มันบอกว่ารหัสผิดตลอด ทั้งปิดเปิดโปรแกรม และรีเครื่อง
ซึ่งสถานีแรก ไม่มีปัญหาครับ สถานี2 นี้ login เปิดเพลงกับ เข้า admin ไม่ได้เลย
จะขอรบกวนท่าน ช่วยแนะนำให้ผมอีกครับ
ส่วน autorun ผมก๊อป shortcut ไว้ใน startup แทนครับ
ขอรบกวน และขอพระคุณอีกครั้งครับ
ผมได้ทำตามขั้นตอนทุกขั้นตอนแล้วครับ พอเปิดฟังในเครื่องปรากฏว่าฟังได้แต่พอ ให้เพื่อนฟังไม่ได้ครับ แบบนี้เป็นเพราะอะไรครับ
พี่กิวคะ คือหนูมีเรื่องรบกวนอีกแล้วคะ
ในการโชว์ชื่อเพลง หนูทำได้เรียบร้อยแล้ว
แต่ยังไม่เป็นภาษาไทยเลยคะ
หนูต้องไปปรับเปลี่ยนตรงไหนบ้างคะ
ขอบคุณพี่ล่วงหน้านะคะ สำหรับคำชี้แนะ ขอบคุณจริงๆคะ
ตอบ คุณ neoclassic ต้อง forward port ใน adsl router ก่อนครับ
ตอบ คุณ Crazy-Bitch ต้องเข้าไปแก้ในไฟล์ sc_serv.exe ครับโดยใช้โปรแกรมพวก hexeditor เข้าไปแก้ font ให้มันเป็นตระกูลภาษาไทยครับ
ขอบพระคุณเป็นอย่างสูงคะพี่กิว
แต่พี่พอจะมีวิธีการหรือตัวอย่างการแก้ฟอนต์
ให้หนูหน่อยได้มั้ยคะ พอดีหนูไม่เคยใช้โปรแกรม hexeditor เลยคะ
ขอบคุณสำหรับคำแนะนำอีกครั้งนะคะ ^^
พี่กิวคะ
หนูยังหาตัวอย่างการใช้ hexeditor ไม่ได้เลยคะ
พี่พอจะทราบลิงค์ที่มีข้อมูลการใช้ hexeditor บ้างมั้ยคะ
ถ้าพอจะมีลิงค์ หนูรบกวนพี่ช่วยส่ง URL ให้หนูหน่อยได้มั้ยคะ
ขอบคุณพีล่วงหน้าคะ ^o^~
http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=14629 วิธีการแก้ประมาณนี้นะครับ
เดี่ยวจะลองหาตัวที่เค้าแก้ไขแล้วให้นะครับ
เย้ ๆ ...
ขอบคุณพี่กิวมาก ๆ เลยนะคะ
หนูรบกวนพี่ซะเยอะเลย.. อิอิ
พี่กิวใจดีจังเลยคะ ขอบพระคุณพี่กิวมาก ๆ นะคะ
พี่กิว.. หนูลองเปลี่ยนดูตามตัวอย่างแล้วนะคะ
แต่ยังไม่ได้เลยคะ ผลก็เหมือนเดิมเลย
คือเป็นภาษาไทย แต่อ่านไม่รู้เรื่องเลยคะ
พี่กิว.. หนูลองเปลี่ยนดูตามตัวอย่างแล้วนะคะ
แต่ยังไม่ได้เลยคะ ผลก็เหมือนเดิมเลย
คือเป็นภาษาไทย แต่อ่านไม่รู้เรื่องเลยคะ
พี่กิว...
ในหน้าเวลาที่เรารันขึ้นเว็บอ่ะคะ
มันขึ้นเป็น "ระบบขัดข้องกรุณาติดต่อรอสักครู่" อะคะ
แต่ในหน้า http://localhost:8000/ แสดงชื่อเพลงเรียบร้อยล่ะคะ
.
.
แนะให้หนูหน่อยนะพี่กิว.. ขอบคุณมากๆคะ
ได้แล้วใคร
ไม่ทราบว่าเอาขึ้นเวบอย่างไรอ่ะ ครับ
ก้อได้แค่ http://localhost:8000/
ฟังก้อ mss://localhost:8000/
ตันแล้วครับ
ใครต้องการ shoutcast ภาษาไทยโหลดได้จากที่นี่นะครับ http://imrgill.com/2009/10/23/shoutcast-thai-patch/
ครับ รบกวนถาม หน่อยครับ.....
ขอไล่ตามหัวข้อละกัน หัวข้อที่ 9. ครับ...
แท็บ output
ในหัวข้อ Output Configuration .. Address <-- เนี่ย ตัวนี้คับ สงสัยจริง ๆว่าเอามาจากไหนคับ ใส่ localhost เหลอคับ มันก็ได้แค่ ในเครื่องเราสิคับ แล้วถ้าต้องการให้มันใช้งานได้จริง หน่ะคับ จะทำยังไงครับช่วย ผมหน่อยละกันนะคับ จนปัญญา จริงๆแล้ว หาวันนี้ นั่งหาเรื่องนี้ ทั้งวันคับ... จนตรอกแล้วคับ รบกวนช่วยหน่อยนะครับ ขอบพระคุณครับ
ก็เอามาจาก shoutcast server เลยครับ หากคุณไปใช้บริการ hosting ที่บริการ shoutcast เค้าก็จะบอก ip กับ port คุณมา หากคุณติดตั้ง shoutcast บนเครื่องตัวเอง คุณก็ต้องทำการ forward port บนอุปกรณ์ modem adsl ไปยังเครื่องที่คุณเปิด shoutcast ถ้าจะเอาให้ละเอียดคงต้องคุยกันยาวครับ
พี่ขอโทษที่มาช้าน่ะครับ
ตอนนี้เค้าฟังกันไม่ได้แล้วหรอครับ
ผมลองเข้าของพี่อ่ะ เข้าไม่ได้เลย
ผมอยากทำบ้างอ่ะ
แต่งงมากเลยครับ
ถ้าพี่อ่านกระทู้นี้ ว่างๆรึไม่ว่างยังงัยก้อรบกวนหน่อยน่ะครับ
ผมไม่รู้ว่าตอนนี้ ปัจจุบันเค้าทำยังงัยถึงจะดี รบกวนหน่อยน่ะครับ ขอบคุณม๊ากมากครับ
พี่คับกลับมาใหม่ คือผมทำได้แล้วครับ
เล่นจาก sam dj ฟังผ่าน winamp ในเครื่องเดียวกันครับ
แล้วถ้าจะออนไลน์ฟังผ่านอินเตอร์เน็ตทำไงครับ
รบกวนหน่อยน่ะครับ
ขอบคุณมากๆ น่ะครับ
ขอรบกวนอีกหน่อยน่ะครับ
พี่พอแนะนำได้มั้ยครับว่าที่ไหนเค้า บริการ host free บ้าง แล้วก้อใช้งานได้จริงๆอ่ะครับ
ผมกำลังพยายามหาอยู่แต่ไม่รู้จะอันไหนดี
-*-
ผมลองทำให้ฟังอีกเครื่องได้ครับ แต่ในวง lan เดียวกัน ฟังได้จาก winamp ครับ แต่ทำไมฟังใน windowmediaplayer ไม่ไดอ่ะครับ
แต่ก้อขอบคุณมากครับ สำหรับความรู้ที่ให้ เป็นอะไรที่มีประโยชน์มากครับ
**ยังงัยจะขอคำปรึกษาพี่เรื่อยๆน่ะครับ

















ร่วมแสดงความเห็นในหน้านี้