หากต้องการส่ง RTMP จาก OBS ให้ป้อน URL และคีย์สตรีมที่ได้รับใน Settings → Stream หากต้องการรับฟีดใน OBS ให้ใช้ URL ผู้รับที่ออกให้สำหรับงานนั้นใน Media Source ผู้เผยแพร่และผู้รับเป็นบทบาทการเข้าถึงที่ต่างกัน แต่ใช้ชื่อสตรีมที่กำหนดค่าเดียวกันและอาจใช้ URL RTMP เดียวกัน
สิ่งที่ต้องมี ก่อนเปิด OBS
- listener RTMP ที่เปิดใช้งานแล้ว และ URL/คีย์สำหรับผู้เผยแพร่ที่ออกให้
- ฉาก OBS ที่ทราบแน่ชัดพร้อมแหล่งวิดีโอและเสียงที่เลือกไว้โดยตั้งใจ
- เส้นทางรับหรือมอนิเตอร์แยกต่างหาก เพื่อพิสูจน์ฟีดหลังจากมาถึงแล้ว
ขั้นตอนนี้ใช้ค่า Custom RTMP ที่ให้ไว้สำหรับการปรับใช้ OBS มีเอกสารการตั้งค่าตามเวอร์ชัน
อินพุตแบบควบคุมและแบบ Guest
สำหรับโหมดควบคุม ให้ใช้ URL ที่ออกให้และชื่อสตรีมที่กำหนดค่าไว้ บทบาทผู้เผยแพร่และผู้รับใช้ชื่อการเชื่อมต่อเดียวกัน สำหรับโหมด Guest นั้น OBS ยังคงเรียกช่องนี้ว่า Stream Key: ให้ใส่ชื่อสตรีมที่เลือกและไม่ว่างลงไป แล้วใช้ชื่อนั้นเดียวกันในการรับ โหมด Guest เปิดปลายทางโดยเจตนา
ส่ง RTMP จาก OBS ไปยัง Callaba
- ใน OBS ให้เปิด Settings → Stream
- เลือก Custom… เป็นบริการ
- วาง URL เซิร์ฟเวอร์ที่ได้รับลงใน Server และค่าสำหรับผู้เผยแพร่ลงใน Stream Key
- คลิก Apply แล้วเริ่มสตรีม
- ใน Callaba ให้ยืนยันว่า RTMP Server รายงานผู้เผยแพร่ที่ทำงานอยู่และบิตเรตขาเข้า
ผลลัพธ์ที่คาดหวัง: ผู้เผยแพร่ที่ออกให้ปรากฏว่าทำงานอยู่ และบิตเรตเปลี่ยนแปลงระหว่างที่ OBS ส่งข้อมูล หาก OBS ระบุว่ากำลังสตรีมแต่ listener ยังคงว่างอยู่ ให้เปรียบเทียบเส้นทางเซิร์ฟเวอร์และคีย์แบบตรงตัว จากนั้นตรวจพอร์ต listener และกฎการเข้าถึงผู้เผยแพร่
รับฟีด RTMP ใน OBS
- รับ URL ผู้รับหรือโปรแกรมเล่นที่มีไว้สำหรับเส้นทางรับใน OBS นี้
- ในฉาก ให้เพิ่ม Media Source
- ปิด Local File แล้ววาง URL ผู้รับนั้นลงใน Input
- ยืนยันภาพและเสียงที่ตั้งใจไว้ในหน้าพรีวิว OBS
ผลลัพธ์ที่คาดหวัง: ฉาก OBS ฝั่งรับแสดงฟีดที่เลือกและเสียงที่ตั้งใจไว้ URL รับเข้า RTMP ไม่ใช่ URL ของโปรแกรมเล่นบนเบราว์เซอร์ การเล่นบนเบราว์เซอร์เป็นเวิร์กโฟลว์แยกต่างหาก และควรใช้ปลายทาง HLS/Web Player ที่กำหนดค่าไว้ แทน RTMP ดั้งเดิมในเบราว์เซอร์
ทดสอบทั้งสองทิศทางก่อนงาน
| การตรวจสอบ | สิ่งที่พิสูจน์ได้ |
|---|---|
| ผู้ส่ง OBS เชื่อมต่อแล้ว | OBS ได้พยายามเริ่มเซสชันผู้เผยแพร่ |
| กิจกรรมและบิตเรตของเซิร์ฟเวอร์ | listener ยอมรับผู้เผยแพร่และเห็นการไหลของสื่อ |
| ภาพและเสียงของผู้รับ | เส้นทางรับที่เลือกถอดรหัสสื่อโปรแกรมที่ใช้ได้ |
| เอาต์พุตที่เลือก | การบันทึก เส้นทาง หรือโปรแกรมเล่นที่กำหนดค่าแยกไว้ทำงานได้ |
ข้อขัดข้องที่พบบ่อย
การเชื่อมต่อล้มเหลวทันที: คัดลอก URL และชื่อ/คีย์สตรีมใหม่ ตรวจ listener และเส้นทางเครือข่าย เชื่อมต่อสำเร็จแต่ไม่มีสื่อที่ใช้ได้: ตรวจฉาก OBS แหล่งเสียง บันทึก encoder และสื่อฝั่งผู้รับ ผู้รับยังคงว่างเปล่า: ยืนยันว่า OBS ใช้เส้นทางรับ RTMP ที่กำหนดค่าไว้และชื่อ/คีย์สตรีมเดียวกัน จากนั้นตรวจความเข้ากันได้ของสื่อและสถานะผู้รับ
การกำหนดค่าที่เกี่ยวข้อง
ใช้Callaba RTMP Serverเพื่อสร้างเส้นทางรับเข้าที่กำหนดค่าไว้ ใช้คู่มือผู้ปฏิบัติงาน RTMP Serverสำหรับรายละเอียดวงจรชีวิตและการเข้าถึง และใช้โปรแกรมเล่น RTMP และการเล่นบนเบราว์เซอร์เมื่อการดูในเบราว์เซอร์คืองานถัดไป
การทดสอบการยอมรับ OBS ที่ทำซ้ำได้
สร้าง RTMP Server บนพอร์ต TCP ที่ว่าง จากนั้นสร้าง Publisher Stream หนึ่งรายการและ Receiver Stream หนึ่งรายการ คัดลอก URL ผู้เผยแพร่และชื่อ/คีย์สตรีมที่ออกให้ตามตัวอักษร อย่าสร้าง URL จากชื่อเซิร์ฟเวอร์ที่แสดง สำหรับผู้รับใน OBS ให้ใช้เส้นทางรับ RTMP ที่กำหนดค่าไว้กับชื่อ/คีย์สตรีมเดียวกัน สำหรับการดูในเบราว์เซอร์ ให้สร้างเอาต์พุต HLS หรือ Web Player แยกต่างหาก ใน OBS ให้ใช้บริการ Custom ไม่ใช่ค่าล่วงหน้าของแพลตฟอร์ม สำหรับการทดสอบแรกที่ระมัดระวัง ให้ส่งวิดีโอ H.264 พร้อมเสียง AAC ในเส้นทางเอาต์พุต FLV/RTMP รักษาความละเอียด อัตราเฟรม และบิตเรตให้อยู่ในค่าที่การปรับใช้ของคุณยอมรับ แล้วเปลี่ยนครั้งละหนึ่งพารามิเตอร์
ใน Callaba ให้ตรวจ getStatistics: บิตเรตขาเข้าและจำนวนผู้เผยแพร่ยืนยันการรับเข้า จำนวนผู้รับจะเปลี่ยนก็ต่อเมื่อผู้รับเชื่อมต่อจริงเท่านั้น สำหรับผู้รับใน OBS ให้เพิ่ม Media Source ปิด Local File ป้อน URL ผู้รับเป็น Input และให้แหล่งนั้นมองเห็นได้ในฉาก พรีวิวสีดำเมื่อผู้เผยแพร่ทำงานอยู่ชี้ไปที่ URL ผู้รับหรือความเข้ากันได้ของสื่อ ส่วนบิตเรตขาเข้าเป็นศูนย์ชี้กลับไปที่ผู้ส่ง คีย์ พอร์ต หรือบทบาทผู้เผยแพร่ ดูข้อมูลอ้างอิงวงจรชีวิต RTMP Serverสำหรับฟิลด์ listener และสถิติที่แน่นอน
ขั้นตอนถัดไป
ใช้Callaba RTMP Serverเพื่อสร้างเส้นทางรับเข้า จากนั้นใช้โปรแกรมเล่น RTMP และการเล่นบนเบราว์เซอร์เมื่อการดูในเบราว์เซอร์คืองานถัดไป