การเปิดตัวโครงการ PipeWire 0.3.33 ได้รับการเผยแพร่แล้ว โดยพัฒนาเซิร์ฟเวอร์มัลติมีเดียรุ่นใหม่เพื่อแทนที่ PulseAudio PipeWire ขยายขีดความสามารถของ PulseAudio ด้วยการประมวลผลสตรีมวิดีโอ การประมวลผลเสียงที่มีความหน่วงต่ำ และรูปแบบการรักษาความปลอดภัยใหม่สำหรับการควบคุมการเข้าถึงระดับอุปกรณ์และสตรีม โปรเจ็กต์นี้รองรับ GNOME และมีการใช้งานอยู่แล้วใน Fedora Linux รหัสโครงการเขียนด้วยภาษา C และเผยแพร่ภายใต้ใบอนุญาต LGPLv2.1
การเปลี่ยนแปลงที่สำคัญใน PipeWire 0.3.33:
- ความสามารถในการสลับระหว่างโปรไฟล์ Bluetooth HSP (โหมดชุดหูฟัง) และ A2DP (เอาต์พุตเสียงคุณภาพสูง) โดยอัตโนมัติได้ถูกนำมาใช้แล้ว
- โปรไฟล์ Pro Audio ได้รับการปรับปรุงการรองรับแหล่งที่มาเสมือนและอุปกรณ์เอาท์พุตเสียง
- ปรับปรุงการเจรจาตัวดัดแปลงรูปแบบเมื่อแชร์บัฟเฟอร์การเข้าถึงหน่วยความจำโดยตรง (DMA-BUF) ระหว่างไคลเอนต์หลายตัว
- ขณะนี้กราฟโหนดมัลติมีเดียรองรับการใช้อัตราการสุ่มตัวอย่างหลายอัตราพร้อมกัน (ปิดใช้งานโดยค่าเริ่มต้น)
- เลเยอร์ความเข้ากันได้ของ PulseAudio ใช้โมดูลสวิตช์เปิดการเชื่อมต่อเพื่อจำลองการทำงานของ PulseAudio เมื่อเชื่อมต่ออุปกรณ์ใหม่
เราขอเตือนคุณว่า PipeWire จะขยายขอบเขตของ PulseAudio ด้วยการประมวลผลสตรีมมัลติมีเดียใดๆ และสามารถมิกซ์และเปลี่ยนเส้นทางสตรีมวิดีโอได้ PipeWire ยังมีความสามารถในการควบคุมแหล่งวิดีโอ เช่น อุปกรณ์จับภาพวิดีโอ กล้องเว็บ หรือเนื้อหาหน้าจอแอปพลิเคชัน ตัวอย่างเช่น PipeWire อนุญาตให้แอปพลิเคชันเว็บแคมหลายตัวทำงานร่วมกันและแก้ไขปัญหาด้วยการจับภาพหน้าจอที่ปลอดภัยและการเข้าถึงหน้าจอระยะไกลในสภาพแวดล้อม Wayland
PipeWire ยังสามารถทำหน้าที่เป็นเซิร์ฟเวอร์เสียง โดยให้เวลาแฝงต่ำและฟังก์ชันการทำงานที่รวมความสามารถของ PulseAudio และ JACK รวมถึงการคำนึงถึงความต้องการของระบบประมวลผลเสียงระดับมืออาชีพที่ PulseAudio ไม่สามารถให้ได้ นอกจากนี้ PipeWire ยังนำเสนอโมเดลการรักษาความปลอดภัยขั้นสูงที่ช่วยให้สามารถควบคุมการเข้าถึงได้ที่ระดับอุปกรณ์และสตรีม และช่วยให้กำหนดเส้นทางเสียงและวิดีโอไปยังและจากคอนเทนเนอร์ที่แยกออกมาได้ง่ายขึ้น หนึ่งในเป้าหมายหลักคือการสนับสนุนแอปพลิเคชัน Flatpak ในตัวเองและทำงานบนสแต็กกราฟิกที่ใช้ Wayland
คุณสมบัติหลัก:
- บันทึกและเล่นเสียงและวิดีโอโดยมีความล่าช้าน้อยที่สุด
- เครื่องมือสำหรับการประมวลผลวิดีโอและเสียงแบบเรียลไทม์
- สถาปัตยกรรมแบบหลายกระบวนการที่ช่วยให้คุณสามารถจัดระเบียบการเข้าถึงเนื้อหาของหลายแอปพลิเคชันร่วมกัน
- โมเดลการประมวลผลที่อิงตามกราฟของโหนดมัลติมีเดียที่รองรับลูปป้อนกลับและการอัพเดตกราฟอะตอมมิก สามารถเชื่อมต่อตัวจัดการได้ทั้งภายในเซิร์ฟเวอร์และปลั๊กอินภายนอก
- อินเทอร์เฟซที่มีประสิทธิภาพสำหรับการเข้าถึงสตรีมวิดีโอผ่านการถ่ายโอนตัวอธิบายไฟล์และการเข้าถึงเสียงผ่านบัฟเฟอร์วงแหวนที่ใช้ร่วมกัน
- ความสามารถในการประมวลผลข้อมูลมัลติมีเดียจากกระบวนการใด ๆ
- ความพร้อมใช้งานของปลั๊กอินสำหรับ GStreamer เพื่อลดความซับซ้อนในการรวมเข้ากับแอปพลิเคชันที่มีอยู่
- รองรับสภาพแวดล้อมแบบแยกและ Flatpak
- รองรับปลั๊กอินในรูปแบบ SPA (Simple Plugin API) และความสามารถในการสร้างปลั๊กอินที่ทำงานแบบเรียลไทม์
- ระบบที่ยืดหยุ่นสำหรับการประสานรูปแบบมัลติมีเดียที่ใช้และการจัดสรรบัฟเฟอร์
- การใช้กระบวนการพื้นหลังเดียวเพื่อกำหนดเส้นทางเสียงและวิดีโอ ความสามารถในการทำงานในรูปแบบของเซิร์ฟเวอร์เสียง ฮับสำหรับจัดเตรียมวิดีโอให้กับแอปพลิเคชัน (เช่น สำหรับ gnome-shell screencast API) และเซิร์ฟเวอร์สำหรับจัดการการเข้าถึงอุปกรณ์จับภาพวิดีโอแบบฮาร์ดแวร์
ที่มา: opennet.ru