<?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="host_speaker_calibration" version="1.0" description="Calibrate host speaker's volume.">
	<setup> <!-- 1 setup -->
		<!-- prepare sound source id: to be used in output, sine 1000Hz, 30000ms long -->
		<sound id="sound1" type="sin:32000:1000:30000" />
	</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="host" id="sound1" gain="70" sync="start"/>
			<sequential repeat="80" index="j">
				<input device="host" id="host_in" gain="70" 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:4000,consti:6000" 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>
