โลโก้ Icecast
Media และ StreamingGPLv2 (โอเพนซอร์ส)

Icecast คืออะไร และวิธีติดตั้งบน Cloud Server

Icecast คือเซิร์ฟเวอร์กระจายเสียงออนไลน์ที่ใช้ทำสถานีวิทยุอินเทอร์เน็ต รับสัญญาณเสียงจากโปรแกรมส่งแล้วกระจายให้ผู้ฟังจำนวนมากพร้อมกันโดยใช้ทรัพยากรน้อย

หมวดหมู่
Media และ Streaming
ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
1 vCPU · RAM 2 GB
ไลเซนส์
GPLv2 (โอเพนซอร์ส)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

Icecast คืออะไร

Icecast ทำหน้าที่เดียวคือรับสัญญาณเสียงจากแหล่งส่งแล้วกระจายต่อให้ผู้ฟัง ความเรียบง่ายนี้ทำให้ใช้ทรัพยากรน้อยมากและรองรับผู้ฟังพร้อมกันได้จำนวนมากบนเครื่องสเปกไม่สูง

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

การใช้งานที่พบในองค์กรไม่ได้มีแค่วิทยุ ยังรวมถึงการกระจายเสียงประกาศภายในอาคาร การถ่ายทอดเสียงงานสัมมนา และการกระจายเสียงในสถาบันการศึกษา

แผนผังการวางระบบ Icecast บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 8000, 443 ตัว Icecast และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 1 vCPU แรม 2 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
Icecast ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ Icecast

ใช้ทรัพยากรน้อยมาก

รองรับผู้ฟังจำนวนมากบนเครื่องสเปกไม่สูง

รองรับหลายช่องพร้อมกัน

ทำหลายสถานีหรือหลายคุณภาพเสียงบนเซิร์ฟเวอร์เดียว

ผู้ฟังเชื่อมต่อได้หลายทาง

ผ่านโปรแกรมเล่นเสียงทั่วไปหรือผ่านหน้าเว็บ

แสดงข้อมูลเพลงที่กำลังเล่น

ส่งชื่อเพลงและรายละเอียดไปแสดงที่ฝั่งผู้ฟัง

มีสถิติผู้ฟัง

ดูจำนวนผู้ฟังปัจจุบันและสูงสุดได้

ใช้ Icecast ทำอะไรได้บ้าง

  • สถานีวิทยุอินเทอร์เน็ตขององค์กรหรือชุมชน
  • กระจายเสียงประกาศภายในอาคารหรือโรงงาน
  • ถ่ายทอดเสียงงานสัมมนาให้ผู้ที่ไม่ได้เข้าร่วม
  • สถาบันการศึกษาที่มีรายการวิทยุของตัวเอง

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ Icecast 3 ระดับ เริ่มจาก 1 vCPU แรม 2 GB ดิสก์ NVMe 20 GB ไปจนถึง 4 vCPU ขึ้นไป แรม 8 GB ขึ้นไป ดิสก์ NVMe 80 GB โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
เริ่มต้นผู้ฟังหลักสิบคน1 vCPU2 GBNVMe 20 GB
แนะนำผู้ฟังหลักร้อยคนพร้อมกัน2 vCPU4 GBNVMe 40 GB
ผู้ฟังมากผู้ฟังหลักพัน ข้อจำกัดหลักคือแบนด์วิดท์4 vCPU ขึ้นไป8 GB ขึ้นไปNVMe 80 GB

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง Icecast บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • Ubuntu Server 24.04 LTS หรือ Rocky Linux 9
  • โปรแกรมส่งสัญญาณเสียง เช่น Liquidsoap หรือ BUTT
  • แบนด์วิดท์ที่เพียงพอกับจำนวนผู้ฟังคูณอัตราบิต
  • ใบรับรอง SSL ถ้าต้องการให้ฟังผ่าน HTTPS

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    ติดตั้ง Icecast

    ระหว่างติดตั้งระบบจะถามรหัสผ่านของผู้ดูแลและรหัสผ่านสำหรับแหล่งส่งสัญญาณ ให้ตั้งเป็นค่าที่แข็งแรงทั้งคู่

    sudo apt update
    sudo apt -y install icecast2
  2. 2

    ตั้งค่าหลักใน /etc/icecast2/icecast.xml

    <icecast>
      <limits>
        <clients>1000</clients>
        <sources>4</sources>
      </limits>
      <authentication>
        <source-password>ChangeThisSourcePassword</source-password>
        <admin-user>admin</admin-user>
        <admin-password>ChangeThisAdminPassword</admin-password>
      </authentication>
      <hostname>radio.example.com</hostname>
      <listen-socket>
        <port>8000</port>
      </listen-socket>
    </icecast>
  3. 3

    เปิดบริการ

    sudo systemctl enable --now icecast2
    sudo systemctl status icecast2 --no-pager
  4. 4

    ตั้ง Nginx ให้บริการผ่าน HTTPS

    ให้ผู้ฟังเชื่อมต่อผ่าน HTTPS เพื่อไม่ให้เบราว์เซอร์เตือนเรื่องเนื้อหาที่ไม่ปลอดภัยเมื่อฝังตัวเล่นในเว็บ

    location / {
      proxy_pass http://127.0.0.1:8000;
      proxy_buffering off;
      proxy_set_header Host $host;
    }
  5. 5

    ต่อโปรแกรมส่งสัญญาณ

    ตั้งค่าโปรแกรมส่งให้ชี้มาที่เซิร์ฟเวอร์นี้พร้อมรหัสผ่านของแหล่งส่ง แล้วกำหนดจุดกระจายเสียงที่ต้องการ

    # ค่าที่ตั้งในโปรแกรมส่ง
    Server: radio.example.com
    Port: 8000
    Mount: /live
    Password: ChangeThisSourcePassword
  6. 6

    ฝังตัวเล่นในเว็บ

    <audio controls src="https://radio.example.com/live"></audio>

ประเมินแบนด์วิดท์จากจำนวนผู้ฟังคูณอัตราบิตของเสียง เช่น ผู้ฟังหนึ่งพันคนที่ 128 กิโลบิตต่อวินาทีจะใช้ประมาณ 128 เมกะบิตต่อวินาที

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
8000TCPรับสัญญาณและกระจายเสียง (เข้าผ่าน Reverse Proxy)
443TCPHTTPS สำหรับผู้ฟัง

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

  • เปลี่ยนรหัสผ่านของผู้ดูแลและของแหล่งส่งสัญญาณจากค่าเริ่มต้น
  • จำกัดจำนวนผู้ฟังสูงสุดให้พอดีกับแบนด์วิดท์ที่มี
  • ไม่เปิดหน้าจอผู้ดูแลสู่อินเทอร์เน็ตโดยไม่จำกัดไอพี
  • เฝ้าระวังแบนด์วิดท์เพราะเป็นค่าใช้จ่ายหลัก

ทำไมควรรัน Icecast บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

ผู้ฟังในไทยได้เสียงที่ไม่สะดุดเพราะเซิร์ฟเวอร์อยู่ในประเทศ

ใช้ทรัพยากรน้อยมาก จึงรันบน Cloud Server สเปกเล็กที่สุดได้

ปรับแบนด์วิดท์และสเปกได้ตามจำนวนผู้ฟังที่เพิ่มขึ้น

คำถามที่พบบ่อยเกี่ยวกับ Icecast

Icecast รองรับผู้ฟังได้กี่คน

ข้อจำกัดหลักคือแบนด์วิดท์ไม่ใช่ซีพียู ผู้ฟังหนึ่งพันคนที่คุณภาพเสียงปานกลางใช้แบนด์วิดท์ประมาณหนึ่งร้อยกว่าเมกะบิตต่อวินาที ควรคำนวณจากจำนวนผู้ฟังสูงสุดที่คาดไว้

ต้องใช้โปรแกรมอะไรส่งสัญญาณ

ใช้ได้หลายตัว ทั้งโปรแกรมที่เล่นรายการอัตโนมัติตามผังและโปรแกรมที่ส่งสัญญาณสดจากไมโครโฟน สถานีที่ต้องออกอากาศตลอดยี่สิบสี่ชั่วโมงมักใช้โปรแกรมที่จัดผังรายการอัตโนมัติ

ทำสถานีหลายช่องได้ไหม

ได้ โดยสร้างจุดกระจายเสียงหลายจุดบนเซิร์ฟเวอร์เดียว ซึ่งใช้ทำได้ทั้งหลายช่องรายการและหลายคุณภาพเสียงของช่องเดียวกันสำหรับผู้ฟังที่เน็ตต่างกัน

ให้เราติดตั้ง Icecast ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด