การเปิดตัวแพลตฟอร์มการกระจายอำนาจสำหรับการจัดการโฮสต์วิดีโอและการแพร่ภาพวิดีโอ PeerTube 6.0 เกิดขึ้น PeerTube เสนอทางเลือกที่เป็นกลางสำหรับผู้ขายแทน YouTube, Dailymotion และ Vimeo โดยใช้เครือข่ายการกระจายเนื้อหาตามการสื่อสาร P2P และเชื่อมโยงเบราว์เซอร์ของผู้เยี่ยมชมเข้าด้วยกัน การพัฒนาของโครงการได้รับการเผยแพร่ภายใต้ใบอนุญาต AGPLv3
นวัตกรรมหลัก:
- เพิ่มความสามารถในการโพสต์วิดีโอที่ป้องกันด้วยรหัสผ่านแล้ว สามารถตั้งรหัสผ่านได้เมื่ออัปโหลด นำเข้า หรืออัปเดต หลังจากนั้นเฉพาะผู้ใช้ที่มีรหัสผ่านเท่านั้นจึงจะสามารถเข้าถึงเนื้อหาได้ สามารถตั้งรหัสผ่านได้หลายรหัสผ่าน REST API (เช่น ผู้ใช้แต่ละคนจะได้รับรหัสผ่านแยกต่างหาก) และสามารถเพิกถอนรหัสผ่านได้
- ขณะนี้ภาพขนาดย่อจะปรากฏขึ้นเมื่อเลื่อนตัวชี้เมาส์ไปเหนือแถบเลื่อนตำแหน่งการเล่น ช่วยให้สามารถนำทางผ่านสตรีมได้ สตอรี่บอร์ดพร้อมภาพขนาดย่อจะถูกสร้างขึ้นระหว่างการอัปโหลดหรือนำเข้าวิดีโอ ซึ่งหมายความว่าการรองรับภาพขนาดย่อจะใช้งานได้เฉพาะกับวิดีโอใหม่ที่อัปโหลดหลังจากอัปเกรดโหนดเป็น PeerTube 6.0 เท่านั้น หากต้องการสร้างภาพขนาดย่อสำหรับวิดีโอเก่า ผู้ดูแลระบบควรรันคำสั่ง "npm run create-generate-storyboard-job"
- เราได้เพิ่มความสามารถในการอัปโหลดวิดีโอเวอร์ชันใหม่ ซึ่งสามารถใช้เพื่ออัปเดตวิดีโอได้ เช่น หลังจากแก้ไขข้อผิดพลาดหรือเพิ่มข้อมูลที่ขาดหายไป หลังจากการอัปเดต วิดีโอเวอร์ชันเก่าจะหายไปอย่างถาวร และเวอร์ชันที่อัปเดตจะสามารถเข้าถึงได้ผ่านลิงก์เดิม (ความคิดเห็นและสถิติยังคงอยู่) เนื่องจากฟีเจอร์นี้อาจถูกนำไปใช้ในทางที่ผิด เช่น การแทรกโฆษณาหลังจากการตรวจสอบ ผู้ดูแลระบบจึงต้องเปิดใช้งานการรองรับการอัปโหลดการอัปเดตบนแพลตฟอร์มของตนอย่างชัดเจน
- เราได้เพิ่มความสามารถในการแนบสารบัญเข้ากับวิดีโอ ช่วยให้คุณดูรายการตอนต่างๆ และสลับไปมาระหว่างตอนต่างๆ ได้อย่างรวดเร็ว แท็บ "บท" ได้ถูกเพิ่มเข้าไปในหน้าการตั้งค่าเพื่อกำหนดตอนต่างๆ เพื่อให้คุณกำหนดเวลาเริ่มต้นและคำอธิบายของช่วงเวลาสำคัญในวิดีโอได้ นอกจากนี้ ตอนต่างๆ จะถูกนำเข้าโดยอัตโนมัติเมื่อนำเข้าวิดีโอจาก YouTube
- เราดำเนินการปรับปรุงและเพิ่มประสิทธิภาพอย่างต่อเนื่องโดยอิงจากการทดสอบภาวะวิกฤตของการถ่ายทอดสดและการสตรีมวิดีโอแบบดั้งเดิมที่มีผู้เข้าร่วมพร้อมกันหลายพันคน ตัวอย่างเช่น เราได้ปรับปรุงการประมวลผล HTTP unicast ในเวิร์กโฟลว์ การตรวจสอบคำขอ ActivityPub การประมวลผลคำแนะนำ การค้นหา SQL ที่กรองตามแท็ก และการร้องขอ /videos/{id}/views จำนวนมาก เรายังเพิ่มความสามารถในการปิดใช้งานการบันทึก HTTP
- การสนับสนุนสำหรับโปรโตคอล WebTorrent ได้ถูกลบออกแล้ว และการพัฒนาจะมุ่งเน้นไปที่การใช้โปรโตคอล HLS (HTTP Live Streaming) กับ WebRTC สำหรับ P2P
- ประสิทธิภาพของเครื่องเล่นวิดีโอได้รับการปรับปรุงด้วยการเลือกขนาดหน้าต่างอัตโนมัติตามอัตราส่วนภาพของวิดีโอ การจดจำการตั้งค่า และไม่จัดเรียงใหม่เมื่อเปลี่ยนวิดีโอ
- ปรับปรุงการสนับสนุนสำหรับเครื่องมือเพิ่มประสิทธิภาพเครื่องมือค้นหา (SEO)
- มีการขยายสิ่งอำนวยความสะดวกสำหรับคนพิการ
แพลตฟอร์ม PeerTube เริ่มต้นจากการใช้ WebTorrent ซึ่งเป็นโปรแกรมไคลเอ็นต์ BitTorrent ที่ทำงานในเบราว์เซอร์และใช้เทคโนโลยี WebRTC เพื่อสร้างช่องทางการสื่อสารแบบ P2P โดยตรงระหว่างเบราว์เซอร์ ต่อมา WebTorrent ถูกแทนที่ด้วยโปรโตคอล HLS (HTTP Live Streaming) ร่วมกับ WebRTC ทำให้สามารถจัดการสตรีมได้อย่างปรับเปลี่ยนได้ตามแบนด์วิดท์ เพื่อรวมระบบที่แตกต่างกันเข้าด้วยกัน เซิร์ฟเวอร์ โปรโตคอล ActivityPub ใช้สำหรับผสานรวมวิดีโอเข้ากับเครือข่ายแบบรวมศูนย์ที่ใช้ร่วมกัน ซึ่งผู้เข้าชมสามารถมีส่วนร่วมในการส่งมอบเนื้อหา สมัครรับข้อมูลจากช่องต่างๆ และรับการแจ้งเตือนเกี่ยวกับวิดีโอใหม่ๆ ได้ อินเทอร์เฟซเว็บของโครงการนี้สร้างขึ้นโดยใช้เฟรมเวิร์ก Angular
เครือข่ายแบบเฟเดอเรตของ PeerTube ก่อตั้งขึ้นในรูปแบบของชุมชนเซิร์ฟเวอร์ขนาดเล็กที่เชื่อมต่อถึงกัน โฮสติ้ง วิดีโอแต่ละรายการมีผู้ดูแลระบบและกฎของตนเอง เซิร์ฟเวอร์วิดีโอแต่ละเครื่องทำหน้าที่เป็นตัวติดตาม BitTorrent โดยจัดเก็บบัญชีผู้ใช้และวิดีโอของเซิร์ฟเวอร์นั้นๆ รหัสผู้ใช้จะอยู่ในรูปแบบ "@ชื่อผู้ใช้@โดเมนของเซิร์ฟเวอร์" การถ่ายโอนข้อมูลระหว่างการรับชมเกิดขึ้นโดยตรงจากเบราว์เซอร์ของผู้เข้าชมรายอื่นๆ ที่กำลังดูเนื้อหานั้นๆ
หากไม่มีใครดูวิดีโอ การอัปโหลดจะถูกจัดระเบียบตามเซิร์ฟเวอร์ที่วิดีโอนั้นถูกอัปโหลดในตอนแรก (ใช้โปรโตคอล WebSeed) นอกเหนือจากการกระจายการรับส่งข้อมูลระหว่างผู้ใช้ที่ดูวิดีโอแล้ว PeerTube ยังอนุญาตให้โหนดที่เปิดใช้งานโดยผู้สร้างสามารถโฮสต์วิดีโอในขั้นต้นเพื่อแคชวิดีโอจากผู้สร้างรายอื่น สร้างเครือข่ายแบบกระจายไม่เพียงแต่ไคลเอนต์เท่านั้น แต่ยังรวมถึงเซิร์ฟเวอร์ด้วย เช่นเดียวกับการให้ความทนทานต่อข้อผิดพลาด มีการรองรับการสตรีมสดด้วยการส่งเนื้อหาในโหมด P2P (โปรแกรมมาตรฐาน เช่น OBS สามารถใช้ควบคุมการสตรีมได้)
ในการเริ่มออกอากาศผ่าน PeerTube ผู้ใช้เพียงแค่ต้องอัปโหลดวิดีโอ คำอธิบาย และชุดแท็กไปยังเซิร์ฟเวอร์แห่งใดแห่งหนึ่ง หลังจากนี้ วิดีโอจะพร้อมใช้งานทั่วทั้งเครือข่ายรวม ไม่ใช่แค่จากเซิร์ฟเวอร์ดาวน์โหลดเริ่มแรกเท่านั้น หากต้องการทำงานร่วมกับ PeerTube และมีส่วนร่วมในการเผยแพร่เนื้อหา เบราว์เซอร์ปกติก็เพียงพอแล้วและไม่จำเป็นต้องติดตั้งซอฟต์แวร์เพิ่มเติม ผู้ใช้สามารถติดตามกิจกรรมในช่องวิดีโอที่เลือกได้โดยสมัครรับช่องที่สนใจในเครือข่ายสังคมออนไลน์แบบรวมศูนย์ (เช่น Mastodon และ Pleroma) หรือผ่านทาง RSS ในการเผยแพร่วิดีโอโดยใช้การสื่อสาร P2P ผู้ใช้สามารถเพิ่มวิดเจ็ตพิเศษที่มีเครื่องเล่นเว็บในตัวลงในเว็บไซต์ของเขาได้
ปัจจุบันมีเซิร์ฟเวอร์ 1122 เครื่องที่เปิดให้บริการสำหรับการโฮสต์เนื้อหา ซึ่งดูแลโดยอาสาสมัครและองค์กรต่างๆ หากผู้ใช้ไม่พอใจกับกฎเกณฑ์การโฮสต์วิดีโอบนเซิร์ฟเวอร์ PeerTube ใดเซิร์ฟเวอร์หนึ่ง ผู้ใช้สามารถเชื่อมต่อกับเซิร์ฟเวอร์อื่นหรือเปิดใช้งานเซิร์ฟเวอร์ของตนเองได้ มี Docker Image (chocobozzz/peertube) ที่กำหนดค่าไว้ล่วงหน้า เพื่อการปรับใช้เซิร์ฟเวอร์อย่างรวดเร็ว
ที่มา: opennet.ru
