<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- Copyright (C) 2012 The Android Open Source Project
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
you may not use this file except in compliance with the License.
|
You may obtain a copy of the License at
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
Unless required by applicable law or agreed to in writing, software
|
distributed under the License is distributed on an "AS IS" BASIS,
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
See the License for the specific language governing permissions and
|
limitations under the License.
|
-->
|
|
<case name="dut_speaker_calibration" version="1.0" description="Calibrate host recording gain">
|
<setup> <!-- 1 setup -->
|
<!-- prepare sound source id: to be used in output, sine 1000Hz, 20000ms long -->
|
<sound id="sound1" type="sin:32000:1000:20000" preload="1" />
|
</setup>
|
|
<action> <!-- 1 action -->
|
<!-- equivalent of for loop. all children will be completed before moving to the next
|
stage.repeat up to 100 times unless stopped by some condition -->
|
<sequential repeat="20" index="i">
|
<!-- sync start : execute only sync complete : execute + complete
|
For sync start, complete will be called when the parent completes -->
|
<output device="DUT" id="sound1" gain="100" sync="start"/>
|
<sequential repeat="50" index="j">
|
<input device="host" id="host_in" gain="100" time="250" sync="complete" />
|
<!-- ------------moving average RMS min for pass, max for pass result calculated -->
|
<process method="builtin:rms_mva" input="id:host_in,consti:1000,consti:8000" output="val:rms_$i_$j" />
|
<!-- <message input="val:passfail" output_low="Volume Low" output_ok="Volume OK" output_high="Volume High" /> -->
|
</sequential>
|
</sequential>
|
</action>
|
<save file="host_in" report="rms_.*" />
|
</case>
|