การอัปเกรดหลักของ Opus 1.5

  • มีการประกาศเปิดตัว Opus 1.5 พร้อมการอัปเกรดหลากหลายด้าน รวมถึงการปรับปรุงคุณภาพบนพื้นฐานของแมชชีนเลิร์นนิง
  • มีการเพิ่มฟีเจอร์ใหม่ที่ช่วยยกระดับประสบการณ์ด้านเสียง โดยยังคงเข้ากันได้กับเวอร์ชันก่อนหน้าอย่างสมบูรณ์
  • มีการใช้เทคนิคดีปเลิร์นนิงกับการประมวลผลและการสร้างสัญญาณเป็นครั้งแรกผ่านแมชชีนเลิร์นนิง

การจัดการ packet loss

  • packet loss เป็นหนึ่งในปัญหาที่รบกวนการสนทนามากที่สุด เพราะหากแพ็กเก็ตส่งไปไม่ถึง ต่อให้ codec มีคุณภาพดีแค่ไหนก็ไม่ช่วย
  • Packet Loss Concealment (PLC) ทำหน้าที่เติมเสียงแทนแพ็กเก็ตที่หายไป และแมชชีนเลิร์นนิงช่วยได้อย่างมากในส่วนนี้
  • มีการใช้ Deep Neural Network (DNN) เพื่อทำ PLC ซึ่งสามารถดูได้จากงานวิจัยและรายละเอียดทางเทคนิค

Deep Redundancy (DRED)

  • เมื่อเกิดการสูญหายของแพ็กเก็ตต่อเนื่อง PLC เพียงอย่างเดียวมีข้อจำกัด จึงแก้ปัญหาด้วยการใช้ redundancy
  • Opus มีกลไก Low Bit-Rate Redundancy (LBRR) อยู่แล้ว แต่ได้เพิ่ม DRED ที่ใช้ ML เพื่อบีบอัดเสียงพูดอย่างมีประสิทธิภาพ
  • DRED สามารถส่ง redundancy ยาว 1 วินาทีได้ด้วย overhead ราว 12-32 kb/s

Neural vocoder

  • ความซับซ้อนต่ำของ DRED และ PLC เกิดขึ้นได้จากเทคโนโลยี neural vocoder แบบใหม่
  • FARGAN vocoder มีความซับซ้อนเพียง 1/5 ของ LPCNet และใช้ CPU core ไม่ถึง 1% แม้บนโน้ตบุ๊กหรือโทรศัพท์รุ่นใหม่

การปรับปรุงคุณภาพเสียงพูดที่บิตเรตต่ำ

  • เมื่อมีบิตไม่เพียงพอ อาจได้ยิน coding artifacts จึงมีการเพิ่มวิธีปรับปรุง 2 แบบคือ LACE และ NoLACE
  • LACE คล้าย post-filter แบบดั้งเดิม แต่ใช้ DNN ปรับค่าสัมประสิทธิ์ของ post-filter ให้เหมาะสมจากข้อมูลทั้งหมดที่ decoder ใช้ได้
  • NoLACE ต้องใช้การประมวลผลมากกว่า แต่มีประสิทธิภาพสูงกว่าเพราะมีการประมวลผลสัญญาณแบบไม่เชิงเส้นเพิ่มเติม

การผสานรวมกับ WebRTC

  • DRED ต้องทำงานร่วมกับ jitter buffer อย่างใกล้ชิด โดยขนาดของ jitter buffer เป็นตัวกำหนดปริมาณสูงสุดของความล่าช้าในการมาถึงของแพ็กเก็ตที่ยอมรับได้
  • ข้อมูล DRED ถูกจัดการในลักษณะเดียวกับแพ็กเก็ตเสียงที่มาถึงช้า และเมื่อสภาพเครือข่ายดีขึ้น ขนาดบัฟเฟอร์ก็สามารถลดลงได้

IETF และการทำมาตรฐาน

  • งานนี้ดำเนินอยู่ภายในคณะทำงาน IETF mlcodec โดยมุ่งเน้นที่กลไกการขยายทั่วไปของ Opus, deep redundancy และการปรับปรุงการเข้ารหัสเสียงพูด
  • กลไก DRED ทำให้สามารถใส่ข้อมูลเพิ่มเติมลงในแพ็กเก็ต Opus ได้ ขณะที่ decoder รุ่นก่อนหน้ายังคงถอดรหัสข้อมูล Opus ปกติได้

การปรับปรุงอื่น ๆ

  • Opus เพิ่มการรองรับ AVX2 และการตรวจจับแบบเรียลไทม์ ทำให้โค้ด DNN ใหม่และ SILK encoder ทำงานได้เร็วขึ้น
  • มีการเปิดใช้ ARMv7 Neon optimization บน AArch64 อีกครั้ง ทำให้การเข้ารหัสมีประสิทธิภาพมากขึ้น
  • เพื่อจำลอง packet loss ให้สมจริงขึ้น จึงสามารถสร้างโมเดล packet loss เพื่อจำลองการสูญหายในลักษณะใกล้เคียงของจริงได้

ความเห็นของ GN⁺

  • Opus 1.5 นำเสนอแนวทางที่น่าสนใจในการยกระดับเทคโนโลยี audio codec เดิมด้วยแมชชีนเลิร์นนิง ซึ่งอาจเป็นพัฒนาการสำคัญของเทคโนโลยีการสื่อสาร
  • ปัญหา packet loss เป็นประเด็นสำคัญในงานสื่อสารแบบเรียลไทม์ และเทคโนโลยีของ Opus 1.5 ก็มอบวิธีแก้ที่มีประสิทธิภาพ โดยเฉพาะฟีเจอร์อย่าง DRED ที่น่าจะมีประโยชน์ในสภาพแวดล้อมเครือข่ายที่ไม่เสถียรสูง
  • เทคโนโลยีอย่าง neural vocoder มีบทบาทสำคัญต่อการยกระดับคุณภาพเสียงพูด แต่เมื่อคำนึงถึงความซับซ้อนและข้อกำหนดด้านประสิทธิภาพ ก็ยังควรมีการถกเถียงว่าผู้ใช้ทุกกลุ่มจะได้รับประโยชน์ได้มากน้อยเพียงใด
  • เทคโนโลยีของ Opus 1.5 น่าจะแสดงศักยภาพได้เต็มที่เมื่อผสานเข้ากับแพลตฟอร์มสื่อสารแบบเรียลไทม์อย่าง WebRTC และอาจช่วยยกระดับคุณภาพของการทำงานทางไกลและการสื่อสารออนไลน์ได้มาก
  • กระบวนการทำมาตรฐานมีบทบาทสำคัญต่อการทำให้เทคโนโลยีเหล่านี้ถูกนำไปใช้ในวงกว้างและคงความเข้ากันได้ไว้ โดยความพยายามของ IETF จะช่วยให้เทคโนโลยีนี้ถูกใช้ในแอปพลิเคชันและบริการที่หลากหลายยิ่งขึ้น

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น