หลัก
- ตัวกำหนดตารางเวลาการประมวลผลเธรดได้รับการออกแบบใหม่ทั้งหมด การเปลี่ยนแปลงทำให้สามารถรันเลเยอร์เพื่อให้แน่ใจว่าเข้ากันได้กับเซิร์ฟเวอร์เสียง JACK ซึ่งมีประสิทธิภาพเทียบเท่ากับ JACK2
- ปรับปรุงใหม่และประกาศว่ามีเสถียรภาพ
API . การเปลี่ยนแปลง API เพิ่มเติมทั้งหมดได้รับการวางแผนไว้โดยไม่ทำลายความเข้ากันได้แบบย้อนหลังกับแอปพลิเคชันที่มีอยู่ - ประกอบด้วยตัวจัดการเซสชันที่ให้คุณจัดการกราฟของโหนดมัลติมีเดียใน PipeWire รวมถึงเพิ่มสตรีมใหม่ สำหรับตอนนี้ ผู้จัดการมีเฉพาะชุดฟังก์ชันพื้นฐานง่ายๆ เท่านั้น และในอนาคตจะมีการขยายหรือแทนที่ด้วยตัวเลือกที่ใช้งานได้และยืดหยุ่นมากขึ้น เช่น
ช่างประปาลวด . - ไลบรารีที่รวมไว้ได้รับการปรับปรุงเพื่อให้เข้ากันได้กับ PulseAudio, JACK และ ALSA ทำให้ PipeWire สามารถใช้กับแอปพลิเคชันที่มีอยู่ซึ่งออกแบบมาเพื่อทำงานร่วมกับระบบเสียงอื่น ๆ ไลบรารีสำหรับ ALSA ใกล้จะพร้อมแล้ว แต่ไลบรารีสำหรับ JACK และ PulseAudio ยังต้องมีการปรับปรุง PipeWire ยังไม่พร้อมที่จะแทนที่ PulseAudio และ JACK โดยสมบูรณ์ แต่ปัญหาความเข้ากันได้จะมีความสำคัญเป็นอันดับแรกในการเปิดตัวในอนาคต
- รวมไปถึงปลั๊กอิน GStreamer บางส่วนสำหรับการโต้ตอบกับ PipeWire ปลั๊กอิน Pipewiresrc ซึ่งใช้ PipeWire เป็นแหล่งเสียง ทำงานได้โดยไม่มีปัญหาในสถานการณ์ส่วนใหญ่ ปลั๊กอิน Pipewiresink สำหรับเอาต์พุตเสียงผ่าน PipeWire ยังไม่มีปัญหาที่ทราบบางประการ
- รองรับ PipeWire 0.3
แบบบูรณาการ ลงในตัวจัดการหน้าต่าง Mutter ที่พัฒนาโดยโครงการ GNOME
เราขอเตือนคุณว่า PipeWire จะขยายขอบเขตของ PulseAudio ด้วยการประมวลผลสตรีมมัลติมีเดียใดๆ และสามารถมิกซ์และเปลี่ยนเส้นทางสตรีมวิดีโอได้ PipeWire ยังมีความสามารถในการควบคุมแหล่งวิดีโอ เช่น อุปกรณ์จับภาพวิดีโอ กล้องเว็บ หรือเนื้อหาหน้าจอแอปพลิเคชัน ตัวอย่างเช่น PipeWire อนุญาตให้แอปพลิเคชันเว็บแคมหลายตัวทำงานร่วมกันและแก้ไขปัญหาด้วยการจับภาพหน้าจอที่ปลอดภัยและการเข้าถึงหน้าจอระยะไกลในสภาพแวดล้อม Wayland
PipeWire ยังสามารถทำหน้าที่เป็นเซิร์ฟเวอร์เสียง โดยให้เวลาแฝงน้อยที่สุดและรวมฟังก์ชันการทำงานเข้าด้วยกัน
- บันทึกและเล่นเสียงและวิดีโอโดยมีความล่าช้าน้อยที่สุด
- เครื่องมือสำหรับการประมวลผลวิดีโอและเสียงแบบเรียลไทม์
- สถาปัตยกรรมแบบหลายกระบวนการที่ช่วยให้คุณสามารถจัดระเบียบการเข้าถึงเนื้อหาของหลายแอปพลิเคชันร่วมกัน
- โมเดลการประมวลผลที่อิงตามกราฟของโหนดมัลติมีเดียที่รองรับลูปป้อนกลับและการอัพเดตกราฟอะตอมมิก สามารถเชื่อมต่อตัวจัดการได้ทั้งภายในเซิร์ฟเวอร์และปลั๊กอินภายนอก
- อินเทอร์เฟซที่มีประสิทธิภาพสำหรับการเข้าถึงสตรีมวิดีโอผ่านการถ่ายโอนตัวอธิบายไฟล์และการเข้าถึงเสียงผ่านบัฟเฟอร์วงแหวนที่ใช้ร่วมกัน
- ความสามารถในการประมวลผลข้อมูลมัลติมีเดียจากกระบวนการใด ๆ
- ความพร้อมใช้งานของปลั๊กอินสำหรับ GStreamer เพื่อลดความซับซ้อนในการรวมเข้ากับแอปพลิเคชันที่มีอยู่
- รองรับสภาพแวดล้อมแบบแยกและ Flatpak
- รองรับปลั๊กอินในรูปแบบ
SPA (Simple Plugin API) และความสามารถในการสร้างปลั๊กอินที่ทำงานแบบเรียลไทม์; - ระบบที่ยืดหยุ่นสำหรับการประสานรูปแบบมัลติมีเดียที่ใช้และการจัดสรรบัฟเฟอร์
- การใช้กระบวนการพื้นหลังเดียวเพื่อกำหนดเส้นทางเสียงและวิดีโอ ความสามารถในการทำงานในรูปแบบของเซิร์ฟเวอร์เสียง ฮับสำหรับจัดเตรียมวิดีโอให้กับแอปพลิเคชัน (เช่น สำหรับ gnome-shell screencast API) และเซิร์ฟเวอร์สำหรับจัดการการเข้าถึงอุปกรณ์จับภาพวิดีโอแบบฮาร์ดแวร์
ที่มา: opennet.ru