เวลาเราพูดถึงความหน่วงเรื่องเสียงหรือ Latency คนส่วนใหญ่อาจจะคิดถึงเรื่องการดีเลย์ของเสียงที่ส่งจากมือถือเข้ามาที่หูฟังหรือลำโพงบลูทูธกันมากกว่า แต่จริง ๆ แล้วการสนทนาทางโทรศัพท์ หรือการอัดเสียงเข้ามือถือตรง ๆ ก็มีค่าความหน่วงด้วยเช่นเดียวกัน ซึ่งตอนนี้ทางนักพัฒนาระบบจาก Android Developer Blog ได้ออกมาอัปเดตเรื่องความหน่วงเสียงของมือถือ Android ในปัจจุบันมีค่าเฉลี่ยอยู่ที่ 39ms เท่านั้น
ค่าความหน่วงของเสียงที่ Google พูดถึงคืออะไร?
ค่าความหน่วงเรื่องเสียงของอุปกรณ์ Android นับว่ามีหลายประเภท และหลายขั้นตอนมาก ซึ่งหลัก ๆ ก็จะมีดังนี้
- Audio output latency : ระยะเวลาของมือถือที่เริ่มประมวลผลเสียง แล้วขับเสียงออกมาจากลำโพง หรือหูฟัง
- Audio input latency : ระยะเวลาของข้อมูลเสียงที่อัดเข้าเครื่องแล้วเข้าไปในแอป (เช่นการอัดเสียง หรือการสนทนาโทรศัพท์)
- Processing Latency : ระยะเวลาในการประมวลผลเสียงของ Application ทั้ง input หรือ output
ข้อมูลค่าความหน่วงเสียงที่เราจะพูดถึงเป็นค่าความหน่วงที่เรียกว่า Round-trip audio latency ซึ่งเป็นส่วนประกอบของ 3 ขั้นตอนที่กล่าวมาข้างต้น ในการประมวลผลเสียง ประกอบไปด้วย Input latency, Processing Latency และ Output Latency
ขั้นตอนการทำงานของ Round-trip Latency
ค่าความหน่วงเสียงของอุปกรณ์ Android พัฒนาขึ้นอย่างไรบ้าง?
ตั้งแต่ช่วงปี 2017 ถึงปัจจุบัน Android ได้พยายามพัฒนาระบบเสียงของอุปกรณ์ให้ดีขึ้นเรื่อย ๆ เพื่อลดค่าเฉลี่ยความหน่วงเสียงในมือถือ Android โดยโฟกัสไปที่การพัฒนา Software และ Audio Codec เป็นหลัก
Timeline การพัฒนาเรื่องเสียงของ Android
การพัฒนาจาก Android บวกกับความร่วมมือจากผู้ผลิตมือถือหลาย ๆ เจ้า ช่วยให้ความหน่วงเสียงโดยรวมของ Ecosystem ระบบ Android ดีขึ้นอย่างเห็นได้ชัด โดยค่าเฉลี่ยความหน่วงเสียงของมือถือรุ่นยอดนิยมในตลาดลงมาอยู่ที่ 39ms เท่านั้น ลดลงจากปี 2017 ถึง 64% (109ms) ซึ่งถือว่าเป็นค่าที่เหมาะสมต่อการใช้งานจริง
เปรียบเทียบค่าเฉลี่ยความหน่วงของมือถือยอดนิยมจากปี 2017-2021
มือถือ Android ทุกเครื่องมีความหน่วงเสียงที่น้อยลงเรื่อย ๆ
จากข้อมูลที่ออกมาก็มีจุดที่น่าสนใจตรงที่ค่าความหน่วงของมือถือยอดนิยมในช่วงปี 2017 มีความแกว่งไปมาไม่คงที่มาก ๆ ซึ่งดูจากในกราฟจะเห็นได้ชัดเลยว่ามีมือถือค่าความหน่วงสูงสุดอยู่ที่ 222ms ในขณะที่ค่าต่ำสุดอยู่ที่ 36ms เท่านั้น
กราฟแสดงผลค่าความหน่วงเสียงในมือถือ Android ยอดนิยมปี 2017
ถัดมาในช่วงปัจจุบัน เราสามารถเห็นได้อย่างชัดเจนถึงความเปลี่ยนแปลงในเรื่องความหน่วงเรื่องเสียงโดยรวมที่มีความคงที่ขึ้น ต่ำสุดอยู่ที่ 28ms และสูงสุดอยู่ที่ 39ms เท่านั้น แถมคราวนี้ก็ได้เอามือถือจากหลาย ๆ แบรนด์มาเปรียบเทียบ ต่างกับปี 2017 ที่เอามาแค่ Samsung เท่านั้น อีกทั้งข้อมูลในกราฟก็ไม่ได้เอามาจากมือถือเรือธงแต่เพียงอย่างเดียวเท่านั้นนะ แต่ก็มีมือถือรุ่น Budget ติดเข้ามาด้วย และมือถือทุกรุ่นก็มีค่าความหน่วงเสียงที่อยู่ในเกณฑ์ดีทั้งนั้น
กราฟแสดงผลค่าความหน่วงเสียงในมือถือ Android ยอดนิยมปี 2021
ความหน่วงแบบ Tap-to-tone ที่ลดลง
นอกจากเรื่องความหน่วงแบบ Round-trip Audio Latency ที่กล่าวมาทั้งหมดข้างต้นแล้ว Tap-to-tone latency ก็มีความสำคัญต่อการใช้งานไม่น้อยเลยทีเดียว ยกตัวอย่างการใช้งานแอปบางประเภทที่ทำการ generate เสียงจากการแตะหน้าจอ แอปเหล่านี้จะมีค่าความหน่วงที่เรียกว่า “Tap-to-tone” ซึ่งก็คือระยะเวลาของระหว่างการแตะหน้าจอมือถือ และการเกิดเสียงนั่นเอง
ปกติแล้ว Tap-to-tone มีระยะเวลาความหน่วงอยู่ที่ 10-35ms (เฉลี่ย 20ms สำหรับมือถือ Android ทั่วไป) ซึ่งเราสามารถหยิบเข้าไปคำนวณกับ Round-trip-latency ได้โดยการแทนที่ Input เป็น Tap-to-tone แทนเพื่อดูระยะเวลาประมวลผลตั้งแต่เอานิ้วแตะจอ ไปจนถึงเวลาที่เสียงออกมาจากลำโพงหรือ หูฟัง ซึ่งถ้าเอามาคำนวณแล้ว ความหน่วง Tap-to-tone ของมือถือ Android ทั่วไปจะต่ำกว่าความต้องการของแอปเสียอีก
อย่างไรก็ตามผู้พัฒนา Android ก็จะไม่หยุดลงแค่นี้ เพราะ Tap-to-tone latency สำหรับเครื่องเสียงมืออาชีพจะต้องต่ำกว่า 20ms เท่านั้น ซึ่ง Google ก็มีเป้าหมายในการลดความหน่วงของเสียงลงให้เหลือ 10ms โดยถือว่าเป็นเป้าหมายระยะยาวที่ Google พยายามทำให้ได้ในอนาคตครับ
Source: AndroidDeveloper
บอกตรงๆ เรื่อง latency เสียง ตามหลัง ios หลายขุม และ เรื่อง softwareต่างๆ ของงาน professional เรื่องงานดนตรี android ก็ ยังคงด้อยกว่าios มาก สู้ต่อไปแอนดรอยด์เอ๋ย
ใครใช้ เครื่อง android ร้อง karaoke ใน joox แล้วจะรู้ว่า android แพ้ ios มากๆ
ไม่ใช่แค่ Joox เท่านั้น พวก Smule, WeSing เห็นได้ชัดเลยว่าบน iOS เหนือกว่าเรื่องอัดเสียงร้องแบบชัดเจน เพราะอัตราหน่วงของเสียงต่ำที่สุดแล้ว