เวลาในการตอบสนองของเสียงสำหรับนักพัฒนาแอป

เราขอแนะนำให้ใช้ Oboe เพื่อให้เวลาในการตอบสนองของเสียงต่ำที่สุด

ปี่โอโบ

Oboe ใช้เสียงแบบเนทีฟและสร้างขึ้นจาก AAudio สำหรับ Android 8.1 ขึ้นไป และ OpenSL ES สำหรับ Android เวอร์ชันเก่า หากต้องการลดเวลาในการตอบสนองของอุปกรณ์ให้เหลือน้อยที่สุด ให้ตั้งค่า setPerformanceMode(oboe::PerformanceMode::LowLatency) และ setSharingMode(oboe::SharingMode::Exclusive) ดูข้อมูลเพิ่มเติมเกี่ยวกับ Oboe ได้ในคู่มือเริ่มต้นใช้งาน, README.md และคู่มือฉบับเต็ม ดูตัวอย่างแอปที่ใช้ Oboe ได้ในแอป Soundboard

หมายเหตุ: หากใช้ AudioTrack เพื่อสร้างสตรีมเสียงเอาต์พุตใน Java สําหรับแอปพลิเคชันที่ไวต่อเวลาในการตอบสนอง ให้ใช้โหมด PERFORMANCE_MODE_LOW_LATENCY

รายการตรวจสอบการติดตั้งใช้งาน

วิธีใช้เสียงแบบเนทีฟของ Android

  1. ดาวน์โหลดและติดตั้ง Android NDK
  2. ทำตามคู่มือเริ่มต้นใช้งานสำหรับ Oboe
  3. โทรหา setPerformanceMode(oboe::PerformanceMode::LowLatency) และ setSharingMode(oboe::SharingMode::Exclusive) ในเครื่องมือสร้าง Oboe
  4. ใช้ขนาดบัฟเฟอร์และอัตราตัวอย่างแบบเนทีฟที่แนะนําซึ่งแสดงผลโดย android.media.AudioManager.getProperty(java.lang.String)

    หมายเหตุ: ควรใช้ขนาดบัฟเฟอร์และอัตราตัวอย่างเดียวกันกับอินพุตด้วย

  5. เขียนตัวแฮนเดิลการเรียกกลับให้สั้นๆ โดยไม่มีการใช้งาน CPU แบบฉับพลันหรือการบล็อกแบบไม่จำกัด หลีกเลี่ยงการเปลี่ยนลําดับความสําคัญ
  6. ลองใช้อัลกอริทึมแบบไม่บล็อกเพื่อสื่อสารระหว่างตัวแฮนเดิลการเรียกคืนอินพุตและเอาต์พุต และระหว่างตัวแฮนเดิลการเรียกคืนกับแอปพลิเคชันส่วนที่เหลือ

ทรัพยากรอื่นๆ

source.android.com

เว็บไซต์ source.android.com ออกแบบมาเพื่อ OEM ที่สร้างอุปกรณ์ Android และผู้จำหน่าย SoC ที่ส่งชิ้นส่วนให้กับ OEM เหล่านี้เป็นหลัก

อย่างไรก็ตาม เว็บไซต์นี้มีข้อมูลที่เป็นประโยชน์มากมายเกี่ยวกับเวลาในการตอบสนอง คุณจึงควรอ่านข้อมูลดังกล่าว ดูบทความที่หัวข้อเวลาในการตอบสนองของเสียง

android-ndk

หากมีคำถามเกี่ยวกับวิธีใช้เสียงแบบเนทีฟของ Android โปรดถามในกลุ่มสนทนา android-ndk

รายงานข้อบกพร่องใน Oboe

หากพบปัญหาในการใช้ Oboe คุณสามารถรายงานข้อบกพร่องได้

วิดีโอ

เริ่มต้นใช้งาน Oboe
เสียงที่มีเวลาในการตอบสนองต่ำ - เพราะหูของคุณมีค่าควรแก่การฟัง
Android Dev Summit 2018
การประสบความสำเร็จใน Android - วิธีเพิ่มประสิทธิภาพแอปเสียงสำหรับ Android
Android Developer Challenge 2018
เสียงประสิทธิภาพสูงใน Android (Google I/O 2013)
วิดีโอทั้งเรื่องเกี่ยวกับเวลาในการตอบสนอง
การสร้างประสบการณ์การใช้งานมัลติมีเดียที่ยอดเยี่ยมบน Android (Google I/O 2014)
ช่วง 14 นาทีแรกเป็นเรื่องเกี่ยวกับเสียงโดยทั่วไปและเวลาในการตอบสนองของอินพุตโดยเฉพาะ
เวลาในการตอบสนองของเสียง: ขนาดบัฟเฟอร์ (100 Days of Google Dev)
อธิบายความสัมพันธ์ระหว่างเวลาในการตอบสนองของเสียง ขนาดบัฟเฟอร์ และการกําหนดเวลางาน