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

รูปที่ 1 เวลาในการตอบสนองของเสียงแบบไปกลับในอุปกรณ์: Toutput - Tinput
หน้านี้แสดงการวัดเวลาในการตอบสนองของเสียงแบบไปกลับสำหรับอุปกรณ์ Nexus/Pixel บางรุ่นและแพลตฟอร์ม Android บางเวอร์ชัน
เหตุผลที่เราวัดเวลาในการตอบสนอง
Google จะวัดและรายงานเวลาในการตอบสนองเพื่อให้นักพัฒนาแอปพลิเคชัน Android มีข้อมูลที่จําเป็นในการตัดสินใจเกี่ยวกับเวลาในการตอบสนองที่มีให้ในอุปกรณ์จริง การแชร์ตัวเลขเวลาในการตอบสนองของอุปกรณ์ Nexus และ Pixel บางรุ่นมีจุดประสงค์เพื่อกระตุ้นให้ชุมชน Android ทั้งหมดวัด เผยแพร่ และลดเวลาในการตอบสนองในอุปกรณ์ Android ทุกรุ่น โปรดร่วมไปกับเราในพันธสัญญาของเราที่จะช่วยลดเวลาในการตอบสนองของเสียง
ผลกระทบของแอปต่อเวลาในการตอบสนอง
การประมวลผลสัญญาณอาจเพิ่มเวลาในการตอบสนองประเภทต่อไปนี้
- อัลกอริทึม ความล่าช้านี้เป็นสิ่งที่เกิดขึ้นเองและจะไม่เปลี่ยนแปลงตาม CPU ตัวอย่างเช่น การหน่วงเวลาซึ่งเพิ่มโดยตัวกรองการตอบสนองต่อการกระตุ้นแบบจำกัด (FIR)
- การประมวลผลข้อมูล ความล่าช้านี้เกี่ยวข้องกับจํานวนรอบของ CPU ที่จําเป็น ตัวอย่างเช่น โดยทั่วไปการลดทอนสัญญาณจะดำเนินการโดยการดำเนินการคูณซึ่งใช้เวลารอบที่แตกต่างกันไปโดยขึ้นอยู่กับ CPU
วิธีที่เราวัด
เราทำการวัดผลที่แสดงในหน้านี้โดยใช้ดองเกิลเสียงแบบลูปแบ็กของ Dr. Rick O'Rang และการทดสอบเสียงสะท้อน (Larsen Effect) การวัดจะถือว่าการประมวลผลสัญญาณของแอปพลิเคชันเพิ่มเวลาในการตอบสนองของอัลกอริทึมเป็น 0 และเวลาในการประมวลผลเกือบเป็น 0
เราวัดเวลาในการตอบสนองแบบไปกลับผ่านขั้วต่อหูฟังด้วยเหตุผลหลายประการ ดังนี้

รูปที่ 2 เวลาในการตอบสนองแบบไป-กลับผ่านเฮดเซ็ต ขั้วต่อ: Tเอาต์พุต - Tอินพุต
- แอปพลิเคชันเพลงที่สำคัญ (เช่น กีตาร์และเสียง) ใช้ขั้วต่อหูฟัง
- การวัดเวลาในการตอบสนองไปกลับของไมโครโฟนและลำโพงในอุปกรณ์อาจเป็นเรื่องยุ่งยาก เนื่องจากการควบคุมไม่ให้ลูปเสียงสะท้อนในอากาศเปิดเข้าสู่การสั่นสะเทือนที่ควบคุมไม่ได้นั้นทำได้ยาก
- ตัวแปลงสัญญาณในอุปกรณ์มีขนาดเล็กและเสียการตอบสนองความถี่เพื่อให้ได้ขนาดที่เล็ก ระบบจะใช้การประมวลผลสัญญาณดิจิทัลเพื่อชดเชย แต่การประมวลผลนี้จะทำให้เส้นทางในอุปกรณ์เกิดความล่าช้าตามอัลกอริทึม
ในบางกรณี เวลาที่รอรับข้อมูลของไมโครโฟนและลำโพงในอุปกรณ์มีผล แต่มักจะเป็นข้อมูลทางเดียว ไม่ใช่แบบไปกลับ ดูเทคนิคในการวัดเวลาในการตอบสนองแบบทิศทางเดียวได้ที่การวัดเวลาในการตอบสนองของเอาต์พุตและการวัดเวลาในการตอบสนองของการป้อนข้อมูล
ตัวอย่างการวัด
การวัดที่แสดงด้านล่างนี้เจาะจงสำหรับหมายเลขบิลด์ อุปกรณ์จะแสดงตามลำดับโดยประมาณของรุ่นแรกและตามเวอร์ชันแพลตฟอร์ม นอกจากนี้ คุณยังดูเวลาในการตอบสนองในแผนภูมิได้ด้วย แอปพลิเคชันทดสอบใช้ API เสียงของ Android ดั้งเดิมที่อิงตาม OpenSL ES
รุ่น | เวอร์ชันของแพลตฟอร์ม |
หมายเลข บิลด์ |
อัตราการสุ่มตัวอย่าง (Hz) |
ขนาดบัฟเฟอร์ (เฟรม) |
ขนาดบัฟเฟอร์ (มิลลิวินาที) |
เวลาในการตอบสนอง (มิลลิวินาที) ของการรับส่งข้อมูลแบบไปกลับ±บัฟเฟอร์ 1 รายการ |
---|---|---|---|---|---|---|
Nexus One | 2.3.6 | GRK39F | 44100 | 768 | 17.4 | 345 |
Nexus S | 2.3.6 | GRK39F | 44100 | 1024 | 23.2 | 260 |
Nexus S | 4.0.4 | IMM76D | 44100 | 1024 | 23.2 | 260 |
Nexus S | 4.1.2 | JZO54K | 44100 | 880 | 20 | 210 |
Galaxy Nexus | 4.0.1 | ITL41D | 44100 | 976 | 22.1 | 270 |
Galaxy Nexus | 4.3 | JWR66Y | 44100 | 144 | 3.3 | 130 |
Nexus 4 | 4.2.2 | JDQ39E | 48000 | 240 | 5 | 195 |
Nexus 4 | 5.1 | LMY47O | 48000 | 240 | 5 | 58 |
Nexus 10 | 5.0.2 | LRX22G | 44100 | 256 | 5.8 | 36 |
Nexus 10 | 5.1 | LMY47D | 44100 | 256 | 5.8 | 35 |
Nexus 7 2013 |
4.3 | JSR78D | 48000 | 240 | 5 | 149 |
Nexus 7 2013 |
4.4 | KRT16S | 48000 | 240 | 5 | 85 |
Nexus 7 2013 |
5.0.2 | LRX22G | 48000 | 240 | 5 | 64 |
Nexus 7 2013 |
5.1 | LMY47O | 48000 | 240 | 5 | 55 |
Nexus 7 2013 |
6.0 | MRA58K | 48000 | 240 | 5 | 55 |
Nexus 5 | 4.4.4 | KTU84P | 48000 | 240 | 5 | 95 |
Nexus 5 | 5.0.0 | LRX21O | 48000 | 240 | 5 | 47 |
Nexus 5 | 5.1 | LMY47I | 48000 | 240 | 5 | 42 |
Nexus 5 | 6.0 | MRA58K | 48000 | 192 | 4 | 38 |
Nexus 9 | 5.0.0 | LRX21L | 48000 | 256 | 5.3 | 35 |
Nexus 9 | 5.0.1 | LRX22C | 48000 | 256 | 5.3 | 38 |
Nexus 9 | 5.1.1 | LMY47X | 48000 | 256 | 5.3 | 32 |
Nexus 9 | 6.0 | MRA58K | 48000 | 128 | 2.6 | 15 |
Nexus 6 | 5.0.1 | LRX22C | 48000 | 240 | 5 | 65 |
Nexus 6 | 5.1 | LMY47I | 48000 | 240 | 5 | 42 |
Nexus 6 | 6.0 | MRA58K | 48000 | 192 | 4 | 33 |
Nexus 5X | 6.0 | MDA89E | 48000 | 192 | 4 | 18 |
Nexus 5X | 8.0.0 | OPR4.170623.020 | 48000 | 192 | 4 | 18 |
Nexus 5X | 8.1.0 | OPM2.171019.029.C1 | 48000 | 192 | 4 | 18 |
Nexus 6P | 6.0 | MDA89D | 48000 | 192 | 4 | 18 |
Nexus 6P | 8.0.0 | OPR5.170623.014 | 48000 | 192 | 4 | 18 |
Nexus 6P | 8.1.0 | OPM5.171019.019 | 48000 | 192 | 4 | 18 |
Pixel | 7.1.2 | NHG47L | 48000 | 192 | 4 | 18 |
Pixel | 8.0.0 | OPR3.170623.013 | 48000 | 192 | 4 | 18 |
Pixel | 8.1.0 | OPM1.171019.021 | 48000 | 192 | 4 | 18 |
Pixel XL | 7.1.2 | NHG47L | 48000 | 192 | 4 | 18 |
Pixel XL | 8.0.0 | OPR3.170623.013 | 48000 | 192 | 4 | 18 |
รูปที่ 3 เวลาในการตอบสนองแบบไป-กลับ