1*4d7e907cSAndroid Build Coastguard Worker/* 2*4d7e907cSAndroid Build Coastguard Worker * Copyright (C) 2017 The Android Open Source Project 3*4d7e907cSAndroid Build Coastguard Worker * 4*4d7e907cSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 5*4d7e907cSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 6*4d7e907cSAndroid Build Coastguard Worker * You may obtain a copy of the License at 7*4d7e907cSAndroid Build Coastguard Worker * 8*4d7e907cSAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 9*4d7e907cSAndroid Build Coastguard Worker * 10*4d7e907cSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 11*4d7e907cSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 12*4d7e907cSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*4d7e907cSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 14*4d7e907cSAndroid Build Coastguard Worker * limitations under the License. 15*4d7e907cSAndroid Build Coastguard Worker */ 16*4d7e907cSAndroid Build Coastguard Worker 17*4d7e907cSAndroid Build Coastguard Workerpackage [email protected]; 18*4d7e907cSAndroid Build Coastguard Worker 19*4d7e907cSAndroid Build Coastguard Worker 20*4d7e907cSAndroid Build Coastguard Worker/** 21*4d7e907cSAndroid Build Coastguard Worker * Interacts with the car's audio subsystem to manage audio sources and volumes 22*4d7e907cSAndroid Build Coastguard Worker */ 23*4d7e907cSAndroid Build Coastguard Workerinterface IAudioControl { 24*4d7e907cSAndroid Build Coastguard Worker 25*4d7e907cSAndroid Build Coastguard Worker /** 26*4d7e907cSAndroid Build Coastguard Worker * Called at startup once per context to get the mapping from ContextNumber to 27*4d7e907cSAndroid Build Coastguard Worker * busAddress. This lets the car tell the framework to which physical output stream 28*4d7e907cSAndroid Build Coastguard Worker * each context should be routed. 29*4d7e907cSAndroid Build Coastguard Worker * 30*4d7e907cSAndroid Build Coastguard Worker * For every context, a valid bus number (0 - num busses-1) must be returned. If an 31*4d7e907cSAndroid Build Coastguard Worker * unrecognized contextNumber is encountered, then -1 shall be returned. 32*4d7e907cSAndroid Build Coastguard Worker * 33*4d7e907cSAndroid Build Coastguard Worker * Deprecated: usage of this API and car_volume_groups.xml has been replaced with 34*4d7e907cSAndroid Build Coastguard Worker * car_audio_configuration.xml. If using car_audio_configuration.xml, then the framework 35*4d7e907cSAndroid Build Coastguard Worker * will not call this method. If it doesn't, then it will load car_volume_groups.xml and 36*4d7e907cSAndroid Build Coastguard Worker * call this method. 37*4d7e907cSAndroid Build Coastguard Worker */ 38*4d7e907cSAndroid Build Coastguard Worker getBusForContext(ContextNumber contextNumber) 39*4d7e907cSAndroid Build Coastguard Worker generates (int32_t busNumber); 40*4d7e907cSAndroid Build Coastguard Worker 41*4d7e907cSAndroid Build Coastguard Worker 42*4d7e907cSAndroid Build Coastguard Worker /** 43*4d7e907cSAndroid Build Coastguard Worker * Control the right/left balance setting of the car speakers. 44*4d7e907cSAndroid Build Coastguard Worker * 45*4d7e907cSAndroid Build Coastguard Worker * This is intended to shift the speaker volume toward the right (+) or left (-) side of 46*4d7e907cSAndroid Build Coastguard Worker * the car. 0.0 means "centered". +1.0 means fully right. -1.0 means fully left. 47*4d7e907cSAndroid Build Coastguard Worker * 48*4d7e907cSAndroid Build Coastguard Worker * A value outside the range -1 to 1 must be clamped by the implementation to the -1 to 1 49*4d7e907cSAndroid Build Coastguard Worker * range. 50*4d7e907cSAndroid Build Coastguard Worker */ 51*4d7e907cSAndroid Build Coastguard Worker oneway setBalanceTowardRight(float value); 52*4d7e907cSAndroid Build Coastguard Worker 53*4d7e907cSAndroid Build Coastguard Worker 54*4d7e907cSAndroid Build Coastguard Worker /** 55*4d7e907cSAndroid Build Coastguard Worker * Control the fore/aft fade setting of the car speakers. 56*4d7e907cSAndroid Build Coastguard Worker * 57*4d7e907cSAndroid Build Coastguard Worker * This is intended to shift the speaker volume toward the front (+) or back (-) of the car. 58*4d7e907cSAndroid Build Coastguard Worker * 0.0 means "centered". +1.0 means fully forward. -1.0 means fully rearward. 59*4d7e907cSAndroid Build Coastguard Worker * 60*4d7e907cSAndroid Build Coastguard Worker * A value outside the range -1 to 1 must be clamped by the implementation to the -1 to 1 61*4d7e907cSAndroid Build Coastguard Worker * range. 62*4d7e907cSAndroid Build Coastguard Worker */ 63*4d7e907cSAndroid Build Coastguard Worker oneway setFadeTowardFront(float value); 64*4d7e907cSAndroid Build Coastguard Worker}; 65*4d7e907cSAndroid Build Coastguard Worker 66