Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5c4b8b1b authored by William Escande's avatar William Escande
Browse files

AICS: spec rename gainValue -> gainSetting

Test: m .
Flag: com.android.bluetooth.flags.leaudio_add_aics_support
Bug: 361263965
Change-Id: Icaae7322f0e21ec009f4c4a98b93cc59c6aef7dd
parent 57679d53
Loading
Loading
Loading
Loading
+9 −8
Original line number Diff line number Diff line
@@ -223,8 +223,8 @@ public:
                                 (jint)ext_output_id, description, addr.get());
  }

  void OnExtAudioInStateChanged(const RawAddress& bd_addr, uint8_t ext_input_id, int8_t gain_val,
                                uint8_t gain_mode, Mute mute) override {
  void OnExtAudioInStateChanged(const RawAddress& bd_addr, uint8_t ext_input_id,
                                int8_t gain_setting, Mute mute, uint8_t gain_mode) override {
    log::info("");

    std::shared_lock<std::shared_timed_mutex> lock(callbacks_mutex);
@@ -243,7 +243,7 @@ public:
    sCallbackEnv->SetByteArrayRegion(addr.get(), 0, sizeof(RawAddress),
                                     reinterpret_cast<const jbyte*>(&bd_addr));
    sCallbackEnv->CallVoidMethod(mCallbacksObj, method_onExtAudioInStateChanged, (jint)ext_input_id,
                                 (jint)gain_val, (jint)gain_mode, (jint)mute, addr.get());
                                 (jint)gain_setting, (jint)mute, (jint)gain_mode, addr.get());
  }

  void OnExtAudioInStatusChanged(const RawAddress& bd_addr, uint8_t ext_input_id,
@@ -782,8 +782,9 @@ static jboolean setExtAudioInDescriptionNative(JNIEnv* env, jobject /* object */
  return JNI_TRUE;
}

static jboolean setExtAudioInGainValueNative(JNIEnv* env, jobject /* object */, jbyteArray address,
                                             jint ext_input_id, jint gain_val) {
static jboolean setExtAudioInGainSettingNative(JNIEnv* env, jobject /* object */,
                                               jbyteArray address, jint ext_input_id,
                                               jint gain_setting) {
  log::info("");
  std::shared_lock<std::shared_timed_mutex> lock(interface_mutex);
  if (!sVolumeControlInterface) {
@@ -797,7 +798,7 @@ static jboolean setExtAudioInGainValueNative(JNIEnv* env, jobject /* object */,
  }

  RawAddress* tmpraw = reinterpret_cast<RawAddress*>(addr);
  sVolumeControlInterface->SetExtAudioInGainValue(*tmpraw, ext_input_id, gain_val);
  sVolumeControlInterface->SetExtAudioInGainSetting(*tmpraw, ext_input_id, gain_setting);
  env->ReleaseByteArrayElements(address, addr, 0);
  return JNI_TRUE;
}
@@ -878,8 +879,8 @@ int register_com_android_bluetooth_vc(JNIEnv* env) {
           reinterpret_cast<void*>(getExtAudioInDescriptionNative)},
          {"setExtAudioInDescriptionNative", "([BILjava/lang/String;)Z",
           reinterpret_cast<void*>(setExtAudioInDescriptionNative)},
          {"setExtAudioInGainValueNative", "([BII)Z",
           reinterpret_cast<void*>(setExtAudioInGainValueNative)},
          {"setExtAudioInGainSettingNative", "([BII)Z",
           reinterpret_cast<void*>(setExtAudioInGainSettingNative)},
          {"setExtAudioInGainModeNative", "([BIZ)Z",
           reinterpret_cast<void*>(setExtAudioInGainModeNative)},
          {"setExtAudioInGainMuteNative", "([BIZ)Z",
+10 −9
Original line number Diff line number Diff line
@@ -43,14 +43,14 @@ class VolumeControlInputDescriptor {

        int mType = AudioInputType.UNSPECIFIED;

        int mGainValue = 0;
        int mGainSetting = 0;

        int mGainMode = GainMode.MANUAL_ONLY;

        int mMute = Mute.DISABLED;

        /* See AICS 1.0
         * The Gain_Setting (mGainValue) field is a signed value for which a single increment or
         * The Gain_Setting (mGainSetting) field is a signed value for which a single increment or
         * decrement should result in a corresponding increase or decrease of the input amplitude by
         * the value of the Gain_Setting_Units (mGainSettingsUnits) field of the Gain Setting
         * Properties characteristic value.
@@ -105,9 +105,9 @@ class VolumeControlInputDescriptor {
        return mVolumeInputs[id].mType;
    }

    int getGain(int id) {
    int getGainSetting(int id) {
        if (!isValidId(id)) return 0;
        return mVolumeInputs[id].mGainValue;
        return mVolumeInputs[id].mGainSetting;
    }

    int getMute(int id) {
@@ -123,17 +123,18 @@ class VolumeControlInputDescriptor {
        mVolumeInputs[id].mGainSettingsMaxSetting = gainMax;
    }

    void setState(int id, int gainValue, int gainMode, int mute) {
    void setState(int id, int gainSetting, int mute, int gainMode) {
        if (!isValidId(id)) return;

        Descriptor desc = mVolumeInputs[id];

        if (gainValue > desc.mGainSettingsMaxSetting || gainValue < desc.mGainSettingsMinSetting) {
            Log.e(TAG, "Request fail. Illegal gainValue argument: " + gainValue);
        if (gainSetting > desc.mGainSettingsMaxSetting
                || gainSetting < desc.mGainSettingsMinSetting) {
            Log.e(TAG, "Request fail. Illegal gainSetting argument: " + gainSetting);
            return;
        }

        desc.mGainValue = gainValue;
        desc.mGainSetting = gainSetting;
        desc.mGainMode = gainMode;
        desc.mMute = mute;
    }
@@ -145,7 +146,7 @@ class VolumeControlInputDescriptor {
            ProfileService.println(sb, "        description: " + desc.mDescription);
            ProfileService.println(sb, "        type: " + desc.mType);
            ProfileService.println(sb, "        status: " + desc.mStatus);
            ProfileService.println(sb, "        gainValue: " + desc.mGainValue);
            ProfileService.println(sb, "        gainSetting: " + desc.mGainSetting);
            ProfileService.println(sb, "        gainMode: " + desc.mGainMode);
            ProfileService.println(sb, "        mute: " + desc.mMute);
            ProfileService.println(sb, "        units:" + desc.mGainSettingsUnits);
+2 −2
Original line number Diff line number Diff line
@@ -142,12 +142,12 @@ class VolumeControlNativeCallback {

    @VisibleForTesting
    void onExtAudioInStateChanged(
            int externalInputId, int gainValue, int gainMode, int mute, byte[] address) {
            int externalInputId, int gainSetting, int mute, int gainMode, byte[] address) {
        VolumeControlStackEvent event =
                new VolumeControlStackEvent(EVENT_TYPE_EXT_AUDIO_IN_STATE_CHANGED);
        event.device = getDevice(address);
        event.valueInt1 = externalInputId;
        event.valueInt2 = gainValue;
        event.valueInt2 = gainSetting;
        event.valueInt3 = gainMode;
        event.valueInt4 = mute;

+4 −4
Original line number Diff line number Diff line
@@ -134,8 +134,8 @@ public class VolumeControlNativeInterface {
        return setExtAudioInDescriptionNative(getByteAddress(device), externalInputId, descr);
    }

    boolean setExtAudioInGainValue(BluetoothDevice device, int externalInputId, int value) {
        return setExtAudioInGainValueNative(getByteAddress(device), externalInputId, value);
    boolean setExtAudioInGainSetting(BluetoothDevice device, int externalInputId, int gainSetting) {
        return setExtAudioInGainSettingNative(getByteAddress(device), externalInputId, gainSetting);
    }

    boolean setExtAudioInGainMode(BluetoothDevice device, int externalInputId, boolean autoMode) {
@@ -196,8 +196,8 @@ public class VolumeControlNativeInterface {
    private native boolean setExtAudioInDescriptionNative(
            byte[] address, int externalInputId, String descr);

    private native boolean setExtAudioInGainValueNative(
            byte[] address, int externalInputId, int gainValue);
    private native boolean setExtAudioInGainSettingNative(
            byte[] address, int externalInputId, int gainSetting);

    private native boolean setExtAudioInGainModeNative(
            byte[] address, int externalInputId, boolean modeAuto);
+5 −5
Original line number Diff line number Diff line
@@ -1031,12 +1031,12 @@ public class VolumeControlService extends ProfileService {
    }

    void handleDeviceExtInputStateChanged(
            BluetoothDevice device, int id, int gainValue, int gainMode, int mute) {
            BluetoothDevice device, int id, int gainSetting, int mute, int gainMode) {
        String logInfo =
                "handleDeviceExtInputStateChanged("
                        + ("device:" + device)
                        + (", id" + id)
                        + (" gainValue: " + gainValue)
                        + (" gainSetting: " + gainSetting)
                        + (" gainMode: " + gainMode)
                        + (" mute: " + mute)
                        + ")";
@@ -1048,7 +1048,7 @@ public class VolumeControlService extends ProfileService {
        }

        Log.d(TAG, logInfo);
        input.setState(id, gainValue, gainMode, mute);
        input.setState(id, gainSetting, mute, gainMode);
    }

    void handleDeviceExtInputStatusChanged(BluetoothDevice device, int id, int status) {
@@ -1189,8 +1189,8 @@ public class VolumeControlService extends ProfileService {
                    device,
                    stackEvent.valueInt1,
                    stackEvent.valueInt2,
                    stackEvent.valueInt3,
                    stackEvent.valueInt4);
                    stackEvent.valueInt4,
                    stackEvent.valueInt3);
            return;
        }

Loading