1a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung/* 2a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * Copyright (C) 2015 The Android Open Source Project 3a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * 4a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * Licensed under the Apache License, Version 2.0 (the "License"); 5a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * you may not use this file except in compliance with the License. 6a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * You may obtain a copy of the License at 7a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * 8a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * http://www.apache.org/licenses/LICENSE-2.0 9a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * 10a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * Unless required by applicable law or agreed to in writing, software 11a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * distributed under the License is distributed on an "AS IS" BASIS, 12a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * See the License for the specific language governing permissions and 14a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung * limitations under the License. 15a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung */ 16a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung 17e54ac276796c6535558f8444d882adecd19ce2bdKeun-young Parkpackage android.car.media; 18a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyoung 19fe1a8f14e1ac56f095d29336e0986950d8adfc0cKeun-young Parkimport android.car.media.ICarAudioCallback; 205672e85bdf82f6a2350afb942dfe17b7c699af87Keun-young Parkimport android.media.AudioAttributes; 21c4d442f4a0d3acf90b1c7a1dd7c222a8f32a193fYao Chenimport android.media.IVolumeController; 225672e85bdf82f6a2350afb942dfe17b7c699af87Keun-young Park 235672e85bdf82f6a2350afb942dfe17b7c699af87Keun-young Park/** 24e54ac276796c6535558f8444d882adecd19ce2bdKeun-young Park * Binder interface for {@link android.car.media.CarAudioManager}. 25b1ddae96756a97006f8a7f4a323fe2538289dcb6Scott Randolph * Check {@link android.car.media.CarAudioManager} APIs for expected behavior of each call. 265672e85bdf82f6a2350afb942dfe17b7c699af87Keun-young Park * 27e54ac276796c6535558f8444d882adecd19ce2bdKeun-young Park * @hide 285672e85bdf82f6a2350afb942dfe17b7c699af87Keun-young Park */ 29a74b9caa2fb6435f1c01c5e8766b89235c4e3d5akeunyounginterface ICarAudio { 30e54ac276796c6535558f8444d882adecd19ce2bdKeun-young Park AudioAttributes getAudioAttributesForCarUsage(int carUsage) = 0; 31c4d442f4a0d3acf90b1c7a1dd7c222a8f32a193fYao Chen void setStreamVolume(int streamType, int index, int flags) = 1; 32c4d442f4a0d3acf90b1c7a1dd7c222a8f32a193fYao Chen void setVolumeController(IVolumeController controller) = 2; 33c4d442f4a0d3acf90b1c7a1dd7c222a8f32a193fYao Chen int getStreamMaxVolume(int streamType) = 3; 34c4d442f4a0d3acf90b1c7a1dd7c222a8f32a193fYao Chen int getStreamMinVolume(int streamType) = 4; 35c4d442f4a0d3acf90b1c7a1dd7c222a8f32a193fYao Chen int getStreamVolume(int streamType) = 5; 363cb891017933140b613cfaf5b8422c112c0f32dcKeun-young Park boolean isMediaMuted() = 6; 373cb891017933140b613cfaf5b8422c112c0f32dcKeun-young Park boolean setMediaMute(boolean mute) = 7; 384c6834a27ccbcf42cbeef43059751752baf80ac3Keun-young Park AudioAttributes getAudioAttributesForRadio(in String radioType) = 8; 394c6834a27ccbcf42cbeef43059751752baf80ac3Keun-young Park AudioAttributes getAudioAttributesForExternalSource(in String externalSourceType) = 9; 404c6834a27ccbcf42cbeef43059751752baf80ac3Keun-young Park String[] getSupportedExternalSourceTypes() = 10; 414c6834a27ccbcf42cbeef43059751752baf80ac3Keun-young Park String[] getSupportedRadioTypes() = 11; 42fe1a8f14e1ac56f095d29336e0986950d8adfc0cKeun-young Park String[] getParameterKeys() = 12; 43fe1a8f14e1ac56f095d29336e0986950d8adfc0cKeun-young Park void setParameters(in String parameters) = 13; 44fe1a8f14e1ac56f095d29336e0986950d8adfc0cKeun-young Park String getParameters(in String keys) = 14; 45fe1a8f14e1ac56f095d29336e0986950d8adfc0cKeun-young Park void registerOnParameterChangeListener(in ICarAudioCallback callback) = 15; 46fe1a8f14e1ac56f095d29336e0986950d8adfc0cKeun-young Park void unregisterOnParameterChangeListener(in ICarAudioCallback callback) = 16; 475672e85bdf82f6a2350afb942dfe17b7c699af87Keun-young Park} 48