เวลาแฝง เป็นตัวชี้วัดประสิทธิภาพของระบบที่สำคัญ แม้ว่าตัววัดเวลา ในการตอบสนองของเสียง มีอยู่หลายประเภท แต่ตัววัดที่มีประโยชน์และเป็นที่เข้าใจกันดีอย่างหนึ่งก็คือ เวลา แฝงแบบไปกลับ ซึ่งหมายถึงเวลาที่สัญญาณเสียงใช้ในการป้อนอินพุตของอุปกรณ์เคลื่อนที่ ซึ่งจะถูกประมวลผลโดยแอปที่ทำงานบนแอปพลิเคชัน โปรเซสเซอร์และออกจากเอาต์พุต
![เวลาแฝงของเสียงไปกลับบนอุปกรณ์](https://source.android.google.cn/static/docs/core/audio/images/round_trip_on_device.png?authuser=19&hl=th)
รูปที่ 1 เวลาแฝงของเสียงไปกลับบนอุปกรณ์: เอาต์พุต T - อินพุต T
หน้านี้แสดงการวัดเวลาในการตอบสนองของเสียงแบบไปกลับสำหรับอุปกรณ์ Nexus/Pixel บางรุ่นและเวอร์ชันแพลตฟอร์ม Android
เหตุใดเราจึงวัดเวลาแฝง
Google วัดและรายงานเวลาในการตอบสนองเพื่อให้นักพัฒนาแอปพลิเคชัน Android มีข้อมูลที่จำเป็นในการตัดสินใจโดยมีข้อมูลประกอบเกี่ยวกับเวลาในการตอบสนองที่มีอยู่ในอุปกรณ์จริง ด้วยการแชร์ตัวเลขเวลาในการตอบสนองสำหรับอุปกรณ์ Nexus และ Pixel บางรุ่น เราหวังว่าจะสนับสนุนให้ชุมชน Android ทั้งหมดวัดผล เผยแพร่ และลดเวลาในการตอบสนองบนอุปกรณ์ Android ทั้งหมด โปรดเข้าร่วมกับเราในความมุ่งมั่นของเราในการลดความล่าช้าของเสียง!
ผลกระทบของแอปต่อเวลาในการตอบสนอง
การประมวลผลสัญญาณสามารถเพิ่มการหน่วงเวลาประเภทต่อไปนี้ให้กับเวลาแฝง:
- อัลกอริทึม ความล่าช้านี้เกิดขึ้นโดยธรรมชาติและไม่แตกต่างกันไปตาม CPU ตัวอย่างคือการหน่วงเวลาที่ถูกเพิ่มโดยตัวกรอง การตอบสนองแบบไฟไนต์อิ มพัลส์ (FIR)
- การคำนวณ ความล่าช้านี้สัมพันธ์กับจำนวนรอบ CPU ที่ต้องการ ตัวอย่างเช่น การลดทอนสัญญาณมักจะทำได้โดยการคูณซึ่งใช้จำนวนรอบที่แตกต่างกันไป ขึ้นอยู่กับ CPU
วิธีที่เราวัดผล
เราทำการวัดตามรายการในหน้านี้โดยใช้ ด็องเกิลลูปแบ็คเสียงของ Dr. Rick O'Rang และ การทดสอบการตอบสนองด้วยเสียง (เอฟเฟกต์ลาร์เซน) การวัดจะถือว่าการประมวลผลสัญญาณของแอปพลิเคชันเพิ่มความล่าช้าของอัลกอริธึมเป็นศูนย์และความล่าช้าในการคำนวณเกือบเป็นศูนย์
เราวัดเวลาแฝงไปกลับผ่านตัวเชื่อมต่อชุดหูฟังด้วยเหตุผลหลายประการ:
![เวลาแฝงไปกลับผ่านตัวเชื่อมต่อชุดหูฟัง](https://source.android.google.cn/static/docs/core/audio/images/round_trip_via_headset_connector.png?authuser=19&hl=th)
รูปที่ 2 เวลาแฝงไปกลับผ่านขั้วต่อชุดหูฟัง: เอาต์พุต T - อินพุต T
- แอปพลิเคชันเพลงที่สำคัญ (เช่น กีตาร์และระบบประมวลผลเสียง) จะใช้ขั้วต่อชุดหูฟัง
- การวัดเวลาแฝงไปกลับของไมโครโฟนและลำโพงในอุปกรณ์อาจเป็นเรื่องยุ่งยาก เนื่องจากเป็นการยากที่จะป้องกันไม่ให้วงจรป้อนกลับในที่โล่งเข้าสู่การสั่นที่ไม่สามารถควบคุมได้
- ทรานสดิวเซอร์ในอุปกรณ์มีขนาดเล็กและเสียสละการตอบสนองความถี่เพื่อให้ได้ขนาดที่เล็ก เพื่อชดเชย มีการใช้การประมวลผลสัญญาณดิจิทัล แต่เพิ่มความล่าช้าของอัลกอริทึมสำหรับเส้นทางบนอุปกรณ์
มีหลายกรณีที่เวลาแฝงของไมโครโฟนและลำโพงในอุปกรณ์ มี ความสำคัญ แต่โดยปกติแล้วจะเป็นไปในทิศทางเดียว ไม่ใช่ไปกลับ เทคนิคในการวัดเวลาแฝงในทิศทางเดียวอธิบายไว้ที่ การวัดเวลาแฝงเอาต์พุต และ การวัดเวลาแฝงอินพุต
ตัวอย่างการวัด
การวัดที่แสดงด้านล่างเป็นการวัดเฉพาะสำหรับ หมายเลขบิลด์ อุปกรณ์ต่างๆ จะแสดงตามลำดับโดยประมาณของการเปิดตัวครั้งแรกและตามเวอร์ชันแพลตฟอร์ม คุณยังสามารถ ดูเวลาแฝงในแผนภูมิได้ แอปพลิเคชันทดสอบใช้ API เสียงเนทีฟของ Android ที่ใช้ OpenSL ES
แบบอย่าง | แพลตฟอร์ม รุ่น | สร้าง ตัวเลข | อัตราตัวอย่าง (เฮิร์ตซ์) | ขนาดบัฟเฟอร์ (เฟรม) | ขนาดบัฟเฟอร์ (นางสาว) | ไป - กลับ เวลาแฝง (มิลลิวินาที) ± หนึ่งบัฟเฟอร์ |
---|---|---|---|---|---|---|
เน็กซัสวัน | 2.3.6 | GRK39F | 44100 | 768 | 17.4 | 345 |
เน็กซัส เอส | 2.3.6 | GRK39F | 44100 | 1,024 | 23.2 | 260 |
เน็กซัส เอส | 4.0.4 | IMM76D | 44100 | 1,024 | 23.2 | 260 |
เน็กซัส เอส | 4.1.2 | เจโซ54เค | 44100 | 880 | 20 | 210 |
กาแล็กซี่เน็กซัส | 4.0.1 | ITL41D | 44100 | 976 | 22.1 | 270 |
กาแล็กซี่เน็กซัส | 4.3 | JWR66Y | 44100 | 144 | 3.3 | 130 |
เน็กซัส 4 | 4.2.2 | JDQ39E | 48000 | 240 | 5 | 195 |
เน็กซัส 4 | 5.1 | แอลเอ็มวาย47โอ | 48000 | 240 | 5 | 58 |
เน็กซัส 10 | 5.0.2 | LRX22G | 44100 | 256 | 5.8 | 36 |
เน็กซัส 10 | 5.1 | แอลเอ็มวาย47ดี | 44100 | 256 | 5.8 | 35 |
เน็กซัส 7 2013 | 4.3 | เจเอสอาร์78ดี | 48000 | 240 | 5 | 149 |
เน็กซัส 7 2013 | 4.4 | KRT16S | 48000 | 240 | 5 | 85 |
เน็กซัส 7 2013 | 5.0.2 | LRX22G | 48000 | 240 | 5 | 64 |
เน็กซัส 7 2013 | 5.1 | แอลเอ็มวาย47โอ | 48000 | 240 | 5 | 55 |
เน็กซัส 7 2013 | 6.0 | MRA58K | 48000 | 240 | 5 | 55 |
เน็กซัส 5 | 4.4.4 | KTU84P | 48000 | 240 | 5 | 95 |
เน็กซัส 5 | 5.0.0 | LRX21O | 48000 | 240 | 5 | 47 |
เน็กซัส 5 | 5.1 | LMY47I | 48000 | 240 | 5 | 42 |
เน็กซัส 5 | 6.0 | MRA58K | 48000 | 192 | 4 | 38 |
เน็กซัส 9 | 5.0.0 | LRX21L | 48000 | 256 | 5.3 | 35 |
เน็กซัส 9 | 5.0.1 | LRX22C | 48000 | 256 | 5.3 | 38 |
เน็กซัส 9 | 5.1.1 | LMY47X | 48000 | 256 | 5.3 | 32 |
เน็กซัส 9 | 6.0 | MRA58K | 48000 | 128 | 2.6 | 15 |
เน็กซัส 6 | 5.0.1 | LRX22C | 48000 | 240 | 5 | 65 |
เน็กซัส 6 | 5.1 | LMY47I | 48000 | 240 | 5 | 42 |
เน็กซัส 6 | 6.0 | MRA58K | 48000 | 192 | 4 | 33 |
เน็กซัส 5X | 6.0 | MDA89E | 48000 | 192 | 4 | 18 |
เน็กซัส 5X | 8.0.0 | OPR4.170623.020 | 48000 | 192 | 4 | 18 |
เน็กซัส 5X | 8.1.0 | OPM2.171019.029.C1 | 48000 | 192 | 4 | 18 |
เน็กซัส 6พี | 6.0 | MDA89D | 48000 | 192 | 4 | 18 |
เน็กซัส 6พี | 8.0.0 | OPR5.170623.014 | 48000 | 192 | 4 | 18 |
เน็กซัส 6พี | 8.1.0 | OPM5.171019.019 | 48000 | 192 | 4 | 18 |
พิกเซล | 7.1.2 | NHG47L | 48000 | 192 | 4 | 18 |
พิกเซล | 8.0.0 | OPR3.170623.013 | 48000 | 192 | 4 | 18 |
พิกเซล | 8.1.0 | โอพีเอ็ม1.171019.021 | 48000 | 192 | 4 | 18 |
พิกเซล เอ็กซ์แอล | 7.1.2 | NHG47L | 48000 | 192 | 4 | 18 |
พิกเซล เอ็กซ์แอล | 8.0.0 | OPR3.170623.013 | 48000 | 192 | 4 | 18 |
รูปที่ 3 เวลาแฝงในการเดินทางไปกลับ