1 /* 2 * Copyright (C) 2015 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package android.car.media; 18 19 import android.car.media.CarAudioPatchHandle; 20 21 /** 22 * Binder interface for {@link android.car.media.CarAudioManager}. 23 * Check {@link android.car.media.CarAudioManager} APIs for expected behavior of each call. 24 * 25 * @hide 26 */ 27 interface ICarAudio { setGroupVolume(int groupId, int index, int flags)28 void setGroupVolume(int groupId, int index, int flags); getGroupMaxVolume(int groupId)29 int getGroupMaxVolume(int groupId); getGroupMinVolume(int groupId)30 int getGroupMinVolume(int groupId); getGroupVolume(int groupId)31 int getGroupVolume(int groupId); 32 setFadeTowardFront(float value)33 void setFadeTowardFront(float value); setBalanceTowardRight(float value)34 void setBalanceTowardRight(float value); 35 getExternalSources()36 String[] getExternalSources(); createAudioPatch(in String sourceAddress, int usage, int gainInMillibels)37 CarAudioPatchHandle createAudioPatch(in String sourceAddress, int usage, int gainInMillibels); releaseAudioPatch(in CarAudioPatchHandle patch)38 void releaseAudioPatch(in CarAudioPatchHandle patch); 39 getVolumeGroupCount()40 int getVolumeGroupCount(); getVolumeGroupIdForUsage(int usage)41 int getVolumeGroupIdForUsage(int usage); getUsagesForVolumeGroupId(int groupId)42 int[] getUsagesForVolumeGroupId(int groupId); 43 44 /** 45 * IBinder is ICarVolumeCallback but passed as IBinder due to aidl hidden. 46 */ registerVolumeCallback(in IBinder binder)47 void registerVolumeCallback(in IBinder binder); unregisterVolumeCallback(in IBinder binder)48 void unregisterVolumeCallback(in IBinder binder); 49 } 50