สร้างเซิร์ฟเวอร์สตรีมมิ่งวิดีโอสดของคุณเองด้วย Linux
เครื่องมือและไซต์สตรีมมิงแบบสดส่วนใหญ่ไม่เสียค่าใช้จ่ายสำหรับสาธารณะ แต่มักจะต้องการให้คุณสร้างบัญชี โดยให้ข้อมูลที่คุณอาจไม่ต้องการให้ปรากฏทางออนไลน์ พวกเขาสามารถ(can )เก็บเนื้อหาบางส่วนไว้เบื้องหลังโฆษณาและรวมข้อกำหนดในการให้บริการ(Service)ที่สร้างความสับสนซึ่งพวกเขาอาจไม่ยึดติดกับตัวเอง
มีผู้ที่ชื่นชอบความสามารถในการสตรีมสด แต่ไม่จำเป็นต้องมีวิดีโอของพวกเขาให้คนทั่วไปดูได้ แต่พวกเขาต้องการควบคุมสตรีมและเนื้อหาที่พวกเขาสร้างขึ้นมากกว่า ซอฟต์แวร์ โอเพ่นซอร์ส(Open-source)เช่นLinuxเป็นคำตอบที่ดีที่สุดสำหรับอุปสรรคนี้
คิดไปข้างหน้า(Thinking Ahead)
ก่อนที่คุณจะเริ่มตั้งค่าเซิร์ฟเวอร์การสตรีมส่วนตัว คุณควรถามตัวเองสองสามคำถาม อันดับแรก(First)คุณกำลังมองหาคุณภาพของสตรีมแบบใด? ต่อไป(Next)คุณคาดว่าจะดึงดูดผู้ชมได้กี่คน คุณจะจัดเก็บเนื้อหาที่สตรีมทั้งหมดของคุณไว้ที่ใด ใครจะสามารถเข้าถึงเนื้อหานั้นได้?
ความต้องการของระบบยังถือเป็นข้อกังวลอีกด้วย อย่างไรก็ตาม ไม่มีกฎเกณฑ์ที่แน่นอนเกี่ยวกับสิ่งที่คุณต้องการในเรื่องนี้ ดังนั้นให้ลองทำเองและทดลองเพื่อดูว่าอะไรดีที่สุดสำหรับเป้าหมายของคุณ
คุณจะต้องหาว่าโปรโตคอลใดจะจัดการกับส่วนเสียงและวิดีโอของการสตรีม Real-Time Messaging Protocol ( RTMP ) เป็นตัวเลือกที่ดี แต่มีอย่างอื่น เช่นWebRTCที่อาจใช้งานได้ดีกว่าในสถานการณ์ของคุณ RTMPมีการสนับสนุนอย่างกว้างขวาง ดังนั้นเราจะเน้นที่บทความนี้
สิ่งที่ต้องกังวลอีกอย่างคืออาจเกิดความล่าช้าในการสตรีม "สด" ของคุณ เพียงเพราะคุณถ่ายทอดสดไม่ได้หมายความว่าทุกอย่างจะเข้าที่เข้าทาง สตรีม วิดีโอ(Video)จำเป็นต้องได้รับการเข้ารหัส ถ่ายโอน บัฟเฟอร์ และแสดง ดังนั้นคาดว่าจะต้องปรับเปลี่ยนเล็กน้อยในแอตทริบิวต์ของสตรีม
การติดตั้งเซิร์ฟเวอร์ Linux(Linux Server Setup)
Ubuntu Linuxเป็นรายการโปรดส่วนตัวของฉัน ดังนั้นมันจึงเป็นเวอร์ชันที่ฉันเลือกที่นี่ สำหรับผู้ที่ชื่นชอบตัวเลือกGUI สามารถใช้ (GUI)Ubuntu Desktopได้
- เปิด ไฟ(Fire)ตัว ติดตั้ง Ubuntuและเลือกการตั้งค่าที่เหมาะสมกับความต้องการของคุณมากที่สุด คุณอาจต้องการตั้งค่าเครือข่ายแบบคงที่เนื่องจากจะใช้เป็นเซิร์ฟเวอร์
- รีบูต(Reboot)ระบบหลังการติดตั้ง หากไม่ดำเนินการโดยอัตโนมัติ เมื่อ ระบบ Ubuntuบูทขึ้น ให้ติดตั้งการอัปเดตที่มีอยู่:
sudo apt update
sudo apt upgrade
เราจะใช้เว็บเซิร์ฟเวอร์ Nginx(Nginx web server)สำหรับเซิร์ฟเวอร์สตรีมมิ่งนี้ ติดตั้ง:
sudo apt install nginx
จัดหาโมดูลRTMP เพื่อให้ (RTMP)Nginxสามารถจัดการสตรีมสื่อของคุณได้:
sudo add-apt-repository universe
sudo apt install libnginx-mod-rtmp
ปรับการกำหนดค่าของ Nginx เพื่อให้สามารถรับและส่งกระแสข้อมูลสื่อของคุณได้
sudo nano /etc/nginx/nginx.conf
เพิ่มรหัสต่อไปนี้ที่ด้านล่างของไฟล์ปรับแต่ง:
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
record off;
}
}
}
บันทึกไฟล์กำหนดค่าเพราะเราจะใช้ในภายหลังเพื่อสร้างเซิร์ฟเวอร์การสตรีมที่ใช้งานได้
รีสตาร์ท Nginx(Restart Nginx)ด้วยการกำหนดค่าใหม่:
sudo systemctl restart nginx
การตั้งค่าซอฟต์แวร์สตรีมมิ่ง(Streaming Software Setup)
เซิร์ฟเวอร์พร้อมแล้ว ถึงเวลาตั้งค่าซอฟต์แวร์สตรีมมิงของคุณแล้ว ลองใช้Open Broadcaster Software (OBS) ในการรันทรูนี้
- ไปที่ไซต์และเลือกบิลด์ สำหรับ Linux หลังจากเปิดตัวซอฟต์แวร์ ให้กำหนดค่าOBSด้วยการตั้งค่าที่ตรงกับฮาร์ดแวร์ของคุณมากที่สุด
- เพิ่มแหล่งที่มา ของการสตรีมโดยคลิก + ใต้Source
- เพื่อการทดสอบ ให้เลือกDisplay Captureและป้อนชื่อสำหรับแหล่งที่มา
- คลิก ปุ่ม ตกลง(OK)และOBSจะจำลองเดสก์ท็อปของคุณ
- ถัดไป คลิก แท็บ ไฟล์(File)และเลือก การ ตั้ง ค่า(Settings)
ในส่วนสตรีมเลือกตั้งค่าประเภทสตรีมเป็นกำหนดเอง...(set Stream Type to Custom…)และป้อนURL ต่อไปนี้ ลงใน ฟิลด์ เซิร์ฟเวอร์(Server) :
rtmp://IPaddress/live
แทนที่IPaddressให้ป้อนที่อยู่ IP ของเซิร์ฟเวอร์สตรีมมิ่งของคุณ
ตอนนี้สร้างสตรีมคีย์(Stream Key) ของคุณเอง แล้วป้อนลงใน กล่อง สตรีม(Stream)คีย์ ทำให้เป็นสิ่งที่คุณจะจดจำและจดบันทึกไว้ เพื่อเพิ่มความปลอดภัย ให้ทำเครื่องหมายที่ ช่อง Use authenticationและเพิ่มข้อมูลประจำตัวที่คุณต้องการ
เสร็จสิ้นด้วยApplyตามด้วยปุ่มOK
ตอนนี้ทุกอย่างควรได้รับการกำหนดค่าสำหรับการสตรีม ในการเริ่มสตรีมแรกของคุณ ให้กดปุ่มStream Nowปุ่มจะเปลี่ยนเป็นหยุดการสตรีม(Stop Streaming)ตราบใดที่ทุกอย่างทำอย่างถูกต้อง ตัวชี้วัดแบนด์วิดท์ของสตรีมของคุณจะปรากฏที่ด้านล่างของหน้าต่างOBS
เป็นผู้ดูคนแรกของคุณ(Be Your First Viewer)
มีเครื่องเล่นสื่อโอเพ่นซอร์สมากมายที่รองรับRTMPซึ่งเป็นที่รู้จักมากที่สุดคือVLC media player (VLC media player)ติดตั้งและเปิดใช้ซอฟต์แวร์นี้ คลิก แท็บ Mediaแล้วเลือกOpen Network Streamจากเมนู
มี(Got)สตรีมคีย์(Stream Key)ของคุณ พร้อมใช้ ไหม พิมพ์เส้นทางไปยังสตรีมของคุณ และรวมสตรีมคีย์(Stream Key) ที่ คุณตั้งค่าไว้ก่อนหน้านี้ไว้ท้ายสุด ควรมีลักษณะดังนี้:
rtmp://IPaddress/live/SecretKey
คลิกเล่น(Play)และคุณจะได้รับการดูสดของสตรีมของคุณเอง
มาตรการเพิ่มเติม(Additional Measures)
เมื่อบรรลุถึงพื้นฐานแล้ว การจำกัดการเข้าถึงเซิร์ฟเวอร์สตรีมมิงของคุณ และความสามารถในการบันทึกและบันทึกวิดีโอของคุณเป็นอีกสองปัจจัยที่คุณอาจสนใจ
โดยค่าเริ่มต้น ทุกคนสามารถดูสตรีมของคุณได้ ซึ่งอาจขัดต่อวัตถุประสงค์ในการสร้างเซิร์ฟเวอร์ตั้งแต่แรก คุณจะต้องตั้งค่าการเข้าถึงแบบจำกัดโดยใช้ไฟร์วอลล์Linux , .htaccess fileหรือการควบคุมการเข้าถึงในตัวในโมดูล(built-in access controls in the RTMP module) RTMP ทางเลือกนี้ขึ้นอยู่กับคุณ
การ กำหนดค่า Nginxที่ให้ไว้ที่นี่จะช่วยให้คุณสามารถสตรีมวิดีโอได้เท่านั้น แต่ไม่สามารถบันทึกได้ ในการเพิ่มตัวเลือกการจัดเก็บ ในการกำหนดค่าNginxใต้ ส่วน RTMPคุณสามารถตั้งค่าตัวเลือกการบันทึกสตรีมและระบุตำแหน่งที่คุณต้องการบันทึกและจัดเก็บเนื้อหาของคุณ
กำหนด(Set)เส้นทางที่มีอยู่เพื่อให้Nginxเขียนลงไปได้ ป้อนต่อไปนี้:
แอปพลิเคชั่นสด { (application live {)
สดบน; ( live on;)
บันทึกทั้งหมด; ( record all;)
record_path /var/www/html/recordings;
บันทึก_unique บน; ( record_unique on;)
}
นั่นคือทั้งหมดที่คุณต้องการเมื่อตั้งค่าเซิร์ฟเวอร์สตรีมมิงแบบสดโดยใช้Ubuntu Linux(Ubuntu Linux OS) OS หากคุณสนใจเซิร์ฟเวอร์สตรีมมิ่งสื่อที่ไม่ใช่แบบสดมากกว่า ฉันขอแนะนำให้ใช้Plexแทน OBS
Related posts
สร้าง Custom Live Linux Distro ด้วย Linux Live Kit
คำสั่ง Linux FIND พร้อมตัวอย่าง
5 เหตุผลดีๆ ที่ควรเลิกใช้ Windows สำหรับ Linux
HDG อธิบาย : UNIX คืออะไร?
9 สุดยอด Linux Distros สำหรับการแฮ็ก
10 ตัวเลือกซอฟต์แวร์ยอดนิยมสำหรับผู้ใช้ Ubuntu ใหม่
วิธีการคอมไพล์แพ็คเกจซอฟต์แวร์บน Linux
Inodes ใน Linux คืออะไรและใช้อย่างไร?
สร้างและแก้ไขไฟล์ Zip ใน Linux โดยใช้ Terminal
ทำความเข้าใจเกี่ยวกับสิทธิ์ของ Linux และการใช้งาน chmod
เคล็ดลับเทอร์มินัล: ใช้เทอร์มินัลเป็นนาฬิกาปลุก
เพิ่มทางลัดไปยังเมนูบริบทคลิกขวาใน Ubuntu
ทำไมคำสั่ง "น้อย" จึงดีกว่า "มากกว่า" ใน UNIX และ Linux
Fedora vs Ubuntu: การกระจาย Linux ใดดีกว่ากัน?
ปิดเครื่องและรีสตาร์ทคอมพิวเตอร์ของคุณจากเทอร์มินัล Ubuntu
แปลงรูปภาพระหว่างรูปแบบผ่าน Command Line ใน Ubuntu
วิธีอัปเกรดเป็น Ubuntu ล่าสุด
สิทธิ์ของไฟล์ Linux – Chmod 777 คืออะไรและใช้งานอย่างไร
กำหนดค่า Ubuntu ให้ไม่หรี่หรือปิดจอแสดงผลที่ไม่ใช้งาน
10 สุดยอดเครื่องบันทึกหน้าจอสำหรับ Linux