Tags:
Node Thumbnail

Google ปรับปรุงความล่าช้าของเสียงใน Android Marshmallow ให้เข้าใกลักับการใช้งานระดับมืออาชีพ

สิ่งหนึ่งที่ทำให้ Android ยังไม่เป็น OS ยอดนิยมสำหรับงานบันทึกเสียง ดนตรี และการแสดงสดเหมือนกับ iOS คือสถาปัตยกรรมเสียงภายในของ Android ยังมีความล่าช้าของสัญญาณเสียง (latency) อยู่มาก ค่าความล่าช้าของเสียงมากกว่า 10 ms ซึ่งมากเกินยอมรับได้ในงานสายนี้

แต่สิ่งนี้กำลังจะเปลี่ยนไปใน Android 6.0 Marshmallow ครับ

Superpowered บริษัทผู้ออกแบบเอนจินงานด้านเสียงให้กับ OS สำหรับอุปกรณ์พกพาต่าง ๆ อธิบายความเปลี่ยนแปลงสถาปัตยกรรมเสียงของ Android 6.0 และทดสอบ Nexus 6P และ Nexus 9 ผลที่ได้พบว่าค่าความล่าช้ามีค่าน้อยลงกว่าเดิมมาก โดย Nexus 6P มีค่าความล่าช้าอยู่ที่ 18 ms และ Nexus 9 มีค่าความล่าช้าอยู่ที่ 15 ms จากก่อนหน้าที่มีความล่าช้าสูงถึง 35.8 ms

สาเหตุที่ทำให้ค่าความล่าช้าลดลงมาจากการปรับปรุง thread scheduling ของ OS ทำให้กำหนดขนาด buffer ของ audio driver ให้เล็กลง, การปรับปรุง Hardware Abstraction Layer (HAL) ระหว่าง audio driver และ audio server ให้ทำงานสอดประสานกันได้อย่างถูกต้อง และการเพิ่ม Android Professional Audio Flag และ Android MIDI เข้ามา ซึ่งประกันค่าความล่าช้าให้น้อยกว่า 20 ms

อย่างไรก็ตาม สิ่งที่ Google ยังไม่สามารถปรับปรุงให้ดีขึ้นได้คือการทำงานของ audio server ที่เป็นตัวกลางระหว่างแอพและ audio driver เพราะตอนที่ออกแบบนั้นไม่ได้เผื่อการใช้งานลักษณะนี้เอาไว้

ถึงแม้การปรับปรุงครั้งนี้ยังไม่สามารถลดค่าความล่าช้าให้น้อยกว่า 10 ms ได้ แต่ถือว่าเป็นสัญญาณอันดีของ Android ที่เราจะได้เห็นแอพสำหรับงานบันทึกเสียง ดนตรี และการแสดงสดในอนาคตนี้ครับ

ที่มา Superpowered ผ่าน Android Community

alt="Android 5.0 Lollipop Audio Path Latency"

แผนผังแสดงความล่าช้าของ Nexus 9 ใน Android รุ่นก่อนหน้า

alt="Android 6.0 Marshmallow Audio Path Latency"

แผนผังแสดงความล่าช้าของ Nexus 9 ใน Android 6.0

Get latest news from Blognone

Comments

By: mr_tawan
ContributoriPhoneAndroidWindows
on 7 February 2016 - 02:57 #882495
mr_tawan's picture

เอาจริง ๆ latency ด้านละ 10ms นี่พอเล่นได้แล้วนะครับ แต่ที่เคยเจอในอุปกรณ์ส่วนใหญ่มันมากกว่านั้นมาก ...


  • 9tawan.net บล็อกส่วนตัวฮับ
By: xxa
Android
on 7 February 2016 - 09:03 #882507

ใล้ Nexus 5 แอพพวกเปียโนยังใช้งานจริงไม่ได้ latency เยอะ แต่ก็น้อยลงแล้ว ต้องรอต่อไป

By: tekkasit
ContributorAndroidWindowsIn Love
on 7 February 2016 - 09:29 #882511
tekkasit's picture

Galaxy S4 ปาไป 276 ms ตอนนี้เริ่มเข้าใจแล้วว่าทำไมฟัง audiobook แล้วสั่งหยุดมันถึงไหลไปอีกนิด

By: sakuraba
Windows PhoneWindows
on 7 February 2016 - 10:14 #882519
sakuraba's picture

เพราะเหตุนี้ผมจึงเลือก iOS
เคยลอง iRIG PRE กับอุปกรณ์ Android ขนาดมีสติกเกอร์ Android Support
ดีเลย์กระจายไปไม่เป็นเลยทีเดียว

By: KuLiKo
ContributoriPhoneWindows PhoneAndroid
on 7 February 2016 - 10:21 #882521
KuLiKo's picture

มิน่าล่ะ เล่นเกมแนวดนตรีทีไรแล้วกดพลาดตลอดเลย...#อ้าง

By: big50000
AndroidSUSEUbuntu
on 7 February 2016 - 11:43 #882528
big50000's picture

ผมแก้ปัญหานี้โดยการสร้างตัว Offset ขึ้นไว้ปรับสมดุลเสียงเลย ไม่งั้นดีเลย์กระจาย
..........ไม่มีเงินซ์้อ Mac กับ iPad

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 7 February 2016 - 12:03 #882535
aeksael's picture

WP เป็นกะเค้าไหม


The Last Wizard Of Century.

By: Hadakung
iPhoneWindows PhoneAndroidWindows
on 7 February 2016 - 15:03 #882560 Reply to:882535

Low Latency Audio เห็นในนี้น่าจะทำได้ 4.5-16ms (ผมไม่ใช่คนในวงการไม่แน่ใจว่าตัวเลขนี้หรือเปล่าตามความเข้าใจนะครับ) นะครับแต่ใช้ไม่แยกไม่ออกเหมือนกันครับหูไม่ทองคำพอ= =

By: at1987
ContributorAndroidWindows
on 7 February 2016 - 15:40 #882568 Reply to:882560
at1987's picture

ใช่ครับ

สำหรับเรื่อง latency ของเสียงนั้น เอาเข้าจริงจะไม่ค่อยเกี่ยวข้องกับทางฟังคนที่ฟังเพลง แต่จะไปเกี่ยวข้องกับคนที่ต้องทำอะไรโต้ตอบกับเสียง เช่น นักดนตรี นักร้อง มากกว่าครับ

เช่น เวลามีการแสดงสด แล้วต้องนำเสียงผ่านคอมพิวเตอร์เพื่อใส่เอฟเฟกต์ ถ้าค่า latency สูงมาก คนร้องหรือคนเล่นจะรู้สึกว่าเสียงมาช้ากว่าที่เขาร้องหรือเล่นไปมาก ซึ่งค่า latency ที่ยอมรับกันได้จะอยู่แถว ๆ ช่วง 10 ms ครับ


My life and hobbies blog!

Technology and Gadget blog!

By: Thaitop_BN
Windows PhoneUbuntuWindows
on 8 February 2016 - 15:14 #882764 Reply to:882560
Thaitop_BN's picture

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

By: McKay
ContributorAndroidWindowsIn Love
on 7 February 2016 - 15:35 #882566 Reply to:882535
McKay's picture

ต้องเรียกใช้ WASAPI/XAudio2(ซึ่งมีมาตั้งแต่ Vista/7) ครับ


Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)

By: sakuraba
Windows PhoneWindows
on 7 February 2016 - 19:20 #882591 Reply to:882566
sakuraba's picture

ผมว่า WASAPI นี่เทพมากๆเลย พอๆกับ Core Audio ฝั่ง Mac
แต่ Software ที่ Support แทบไม่มีเลย ส่วนใหญ่ใช้แต่ ASIO ซึ่งไม่ได้เทพเท่า WASAPI เลย
มี Software บางตัวเท่านั้น เช่น Guitar Rig 5 ที่ทำมา Support WASAPI ด้วยครับ
เล่นแบบ Realtime ได้เลย Latency น่าจะใกล้เคียง 0
และน่าจะน้อยกว่า ASIO ด้วย โดยการใช้หูในการฟังเอาครับ

By: aeksael
ContributoriPhoneWindows PhoneAndroid
on 8 February 2016 - 00:17 #882647 Reply to:882566
aeksael's picture

โอ้ว ตามลิ้งที่คุณMcKay ให้มา wp8.1ก็มีการนำAPI นี้มาใช้แล้ว


The Last Wizard Of Century.

By: sakuraba
Windows PhoneWindows
on 7 February 2016 - 19:21 #882592 Reply to:882535
sakuraba's picture

ไม่รู้เหมือนกันครับ ยังไม่เจอแอพแนวนี้เลย
เศร้าแปบ

By: Thaitop_BN
Windows PhoneUbuntuWindows
on 8 February 2016 - 15:30 #882772 Reply to:882592
Thaitop_BN's picture

มีแอพเล่นเปียโนชื่อ Piano Time อยู่ครับ ส่วนพวกแอพเอฟเฟคต์เสียงนี่ไม่รู้จะหาจากไหนเหมือนกัน #เศร้าด้วย

By: rainhawk
AndroidWindows
on 7 February 2016 - 12:53 #882541
rainhawk's picture

มิน่าละที่หยุดแล้วยังมีเสียงรอดออกมาอีกนิด

By: MaxxIE
iPhoneAndroidUbuntuWindows
on 7 February 2016 - 23:13 #882637
MaxxIE's picture

iOSนี่เก็บรายละเอียดทุกเม็ดจริงๆ
Androidรีบเก็บงานเร็วๆหน่อย อยากเห็นiOSเห็นโลงศพบ้าง งานจะได้เนี๊ยบกว่าปัจจุบันนี้หน่อย

By: menu_dot on 8 February 2016 - 02:27 #882657

ทำ os นี้ราะเอียดเยอะจริง ข้อผิดพลาดก่ะเยอะตาม

By: Zatang
ContributoriPhoneAndroid
on 8 February 2016 - 13:43 #882728

เล่น Thapster ผมตั้ง Audio Offset 300 ms เกี่ยวกะตัวนี้ป่ะครับ delay ทั้งเสียงและทัช เล่นเกมดนตรีแล้วคะแนนสู้เล่นบน iOS ไม่ได้


อคติทำให้คนรับเหตุผลด้านเดียว

By: SpeedxP
iPhoneWindows PhoneAndroidBlackberry
on 9 February 2016 - 10:06 #883002 Reply to:882728
SpeedxP's picture

เกี่ยวครับ สำหรับคนเล่น Rhythm Game เจ้า Audio Latency ก็สำคัญเช่นกันครับ
ยิ่งถ้า Key ที่กดมีเสียงนี่ เล่นใน iOS เทียบกับ Android นี่เห็นได้ชัดมากครับ

By: JomMarn
iPhoneAndroid
on 9 February 2016 - 11:36 #883024 Reply to:882728
JomMarn's picture

Rhythm Game นี่เป็นประเด็นหลักในการติดตามเรื่อง Audio Latency ของผมเลยครับ แต่จริงๆ แล้ว latency ที่เราเจอจริงๆ นั้นมันยังรวมเรื่อง input latency (โดยเฉพาะ touch screen) แล้วก็เกม logic อีกด้วยครับ เพียงแต่ตัวอื่นๆ มันสามารถแก้ไขได้ด้วยอุปกรณ์กับผู้พัฒนาเกม ส่วน audio latency นี่มันต้องผ่านผู้พัฒนา platform อย่างกูเกิ้ลจริงๆ