aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShaohan Zou <szou@google.com>2016-02-02 12:17:05 -0800
committerShaohan Zou <szou@google.com>2016-02-02 12:18:59 -0800
commit6edb5ce513578b3183c4ce4e1c063aa509939ce1 (patch)
treeeffc2b78a88f6a7085fba60bfb83dbd0f561d2f4
parent94bdf0864835baf19caf1e609f1121965fa91930 (diff)
downloadtradefederation-6edb5ce513578b3183c4ce4e1c063aa509939ce1.tar.gz
Add new metrics for audio loopback glitch test
Change-Id: Ic5931268e1eb798a253a1bf6cfbab5b79f9d0ffc
-rw-r--r--prod-tests/src/com/android/media/tests/AudioLoopbackTest.java24
1 files changed, 23 insertions, 1 deletions
diff --git a/prod-tests/src/com/android/media/tests/AudioLoopbackTest.java b/prod-tests/src/com/android/media/tests/AudioLoopbackTest.java
index 0969333f7..0fad1f8c7 100644
--- a/prod-tests/src/com/android/media/tests/AudioLoopbackTest.java
+++ b/prod-tests/src/com/android/media/tests/AudioLoopbackTest.java
@@ -87,8 +87,14 @@ public class AudioLoopbackTest implements IDeviceTest, IRemoteTest {
private final String OUTPUT_WAV_PATH = DEVICE_TEMP_DIR_PATH + OUTPUT_FILENAME + ".wav";
private final String OUTPUT_PLAYER_BUFFER_PATH =
DEVICE_TEMP_DIR_PATH + OUTPUT_FILENAME + "_playerBufferPeriod.txt";
+ private final String OUTPUT_PLAYER_BUFFER_PNG_PATH =
+ DEVICE_TEMP_DIR_PATH + OUTPUT_FILENAME + "_playerBufferPeriod.png";
private final String OUTPUT_RECORDER_BUFFER_PATH =
DEVICE_TEMP_DIR_PATH + OUTPUT_FILENAME + "_recorderBufferPeriod.txt";
+ private final String OUTPUT_RECORDER_BUFFER_PNG_PATH =
+ DEVICE_TEMP_DIR_PATH + OUTPUT_FILENAME + "_recorderBufferPeriod.png";
+ private final String OUTPUT_GLITCH_PATH =
+ DEVICE_TEMP_DIR_PATH + OUTPUT_FILENAME + "_glitchMillis.txt";
private final String AM_CMD = "am start -n org.drrickorang.loopback/.LoopbackActivity" +
" --ei SF %s --es FileName %s --ei MicSource %s --ei AudioThread %s" +
" --ei AudioLevel %s --ei TestType %s --ei BufferTestDuration %s";
@@ -101,7 +107,10 @@ public class AudioLoopbackTest implements IDeviceTest, IRemoteTest {
result.put("Recorder Number of Outliers", "recorder_outliers");
result.put("Player Benchmark", "player_benchmark");
result.put("Player Number of Outliers", "player_outliers");
- result.put("Estimated Number of Glitches", "number_of_glitches");
+ result.put("Total Number of Glitches", "number_of_glitches");
+ result.put("kth% Late Recorder Buffer Callbacks", "late_recorder_callbacks");
+ result.put("kth% Late Player Buffer Callbacks", "late_player_callbacks");
+ result.put("Glitches Per Hour", "glitches_per_hour");
return Collections.unmodifiableMap(result);
}
@@ -190,10 +199,23 @@ public class AudioLoopbackTest implements IDeviceTest, IRemoteTest {
listener.testLog(mKeyPrefix + "player_buffer", LogDataType.TEXT,
new SnapshotInputStreamSource(
new FileInputStream(loopbackPlayerBuffer)));
+ File loopbackPlayerBufferPng = device.pullFile(OUTPUT_PLAYER_BUFFER_PNG_PATH);
+ listener.testLog(mKeyPrefix + "player_buffer_histogram", LogDataType.PNG,
+ new SnapshotInputStreamSource(new FileInputStream(loopbackPlayerBufferPng)));
+
File loopbackRecorderBuffer = device.pullFile(OUTPUT_RECORDER_BUFFER_PATH);
listener.testLog(mKeyPrefix + "recorder_buffer", LogDataType.TEXT,
new SnapshotInputStreamSource(new FileInputStream(
loopbackRecorderBuffer)));
+ File loopbackRecorderBufferPng = device.pullFile(OUTPUT_RECORDER_BUFFER_PNG_PATH);
+ listener.testLog(mKeyPrefix + "recorder_buffer_histogram", LogDataType.PNG,
+ new SnapshotInputStreamSource(new FileInputStream(
+ loopbackRecorderBufferPng)));
+
+ File loopbackGlitch = device.pullFile(OUTPUT_GLITCH_PATH);
+ listener.testLog(mKeyPrefix + "glitches_millis", LogDataType.TEXT,
+ new SnapshotInputStreamSource(new FileInputStream(
+ loopbackGlitch)));
}
} catch (IOException ioe) {
CLog.e(ioe.getMessage());