Опубликован выпуск проекта PipeWire 0.3.33, развивающего мультимедийный сервер нового поколения, идущий на замену PulseAudio. PipeWire расширяет возможности PulseAudio средствами для работы с потоками видео, возможностью обработки звука с минимальными задержками и новой моделью безопасности для управления доступом на уровне отдельных устройств и потоков. Проект поддерживается в GNOME и уже по умолчанию применяется в Fedora Linux. Код проекта написан на языке Си и распространяется под лицензией 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
