/*
 * Copyright (C) 2014 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.
 */

package android.media;

The AudioGainConfig is used by APIs setting or getting values on a given gain controller. It contains a valid configuration (value, channels...) for a gain controller exposed by an audio port.
See Also:
@hide
/** * The AudioGainConfig is used by APIs setting or getting values on a given gain * controller. It contains a valid configuration (value, channels...) for a gain controller * exposed by an audio port. * @see AudioGain * @see AudioPort * @hide */
public class AudioGainConfig { AudioGain mGain; private final int mIndex; private final int mMode; private final int mChannelMask; private final int mValues[]; private final int mRampDurationMs; AudioGainConfig(int index, AudioGain gain, int mode, int channelMask, int[] values, int rampDurationMs) { mIndex = index; mGain = gain; mMode = mode; mChannelMask = channelMask; mValues = values; mRampDurationMs = rampDurationMs; }
get the index of the parent gain. frameworks use only.
/** * get the index of the parent gain. * frameworks use only. */
int index() { return mIndex; }
Bit field indicating requested modes of operation. See AudioGain.MODE_JOINT, AudioGain.MODE_CHANNELS, AudioGain.MODE_RAMP
/** * Bit field indicating requested modes of operation. See {@link AudioGain#MODE_JOINT}, * {@link AudioGain#MODE_CHANNELS}, {@link AudioGain#MODE_RAMP} */
public int mode() { return mMode; }
Indicates for which channels the gain is set. See AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.CHANNEL_OUT_MONO ...
/** * Indicates for which channels the gain is set. * See {@link AudioFormat#CHANNEL_OUT_STEREO}, {@link AudioFormat#CHANNEL_OUT_MONO} ... */
public int channelMask() { return mChannelMask; }
Gain values for each channel in the order of bits set in channelMask() from LSB to MSB
/** * Gain values for each channel in the order of bits set in * channelMask() from LSB to MSB */
public int[] values() { return mValues; }
Ramp duration in milliseconds. N/A if mode() does not specify MODE_RAMP.
/** * Ramp duration in milliseconds. N/A if mode() does not * specify MODE_RAMP. */
public int rampDurationMs() { return mRampDurationMs; } }