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

Commit 7035d9a9 authored by Android Build Merger (Role)'s avatar Android Build Merger (Role) Committed by Android (Google) Code Review
Browse files

Merge "Merge "Add new internal API:...

Merge "Merge "Add new internal API: enableOptionalCodecs()/disableOptionalCodecs()" am: 3c7fce35 am: 25105f65 am: dfc1264e" into oc-dev-plus-aosp
parents cedc7dfc 37139298
Loading
Loading
Loading
Loading
+45 −0
Original line number Diff line number Diff line
@@ -611,6 +611,51 @@ public final class BluetoothA2dp implements BluetoothProfile {
        }
    }

    /**
     * Enables the optional codecs.
     *
     * @hide
     */
    public void enableOptionalCodecs() {
        if (DBG) Log.d(TAG, "enableOptionalCodecs");
        enableDisableOptionalCodecs(true);
    }

    /**
     * Disables the optional codecs.
     *
     * @hide
     */
    public void disableOptionalCodecs() {
        if (DBG) Log.d(TAG, "disableOptionalCodecs");
        enableDisableOptionalCodecs(false);
    }

    /**
     * Enables or disables the optional codecs.
     *
     * @param enable if true, enable the optional codecs, other disable them
     */
    private void enableDisableOptionalCodecs(boolean enable) {
        try {
            mServiceLock.readLock().lock();
            if (mService != null && isEnabled()) {
                if (enable) {
                    mService.enableOptionalCodecs();
                } else {
                    mService.disableOptionalCodecs();
                }
            }
            if (mService == null) Log.w(TAG, "Proxy not attached to service");
            return;
        } catch (RemoteException e) {
            Log.e(TAG, "Error talking to BT service in enableDisableOptionalCodecs()", e);
            return;
        } finally {
            mServiceLock.readLock().unlock();
        }
    }

    /**
     * Helper for converting a state to a string.
     *
+21 −1
Original line number Diff line number Diff line
@@ -63,7 +63,7 @@ public final class BluetoothCodecConfig implements Parcelable {
    public static final int CHANNEL_MODE_STEREO = 0x1 << 1;

    private final int mCodecType;
    private final int mCodecPriority;
    private int mCodecPriority;
    private final int mSampleRate;
    private final int mBitsPerSample;
    private final int mChannelMode;
@@ -279,6 +279,15 @@ public final class BluetoothCodecConfig implements Parcelable {
        return mCodecType;
    }

    /**
     * Checks whether the codec is mandatory.
     *
     * @return true if the codec is mandatory, otherwise false.
     */
    public boolean isMandatoryCodec() {
        return mCodecType == SOURCE_CODEC_TYPE_SBC;
    }

    /**
     * Gets the codec selection priority.
     * The codec selection priority is relative to other codecs: larger value
@@ -290,6 +299,17 @@ public final class BluetoothCodecConfig implements Parcelable {
        return mCodecPriority;
    }

    /**
     * Sets the codec selection priority.
     * The codec selection priority is relative to other codecs: larger value
     * means higher priority. If 0, reset to default.
     *
     * @param codecPriority the codec priority
     */
    public void setCodecPriority(int codecPriority) {
        mCodecPriority = codecPriority;
    }

    /**
     * Gets the codec sample rate. The value can be a bitmask with all
     * supported sample rates:
+2 −0
Original line number Diff line number Diff line
@@ -40,4 +40,6 @@ interface IBluetoothA2dp {
    boolean isA2dpPlaying(in BluetoothDevice device);
    BluetoothCodecStatus getCodecStatus();
    oneway void setCodecConfigPreference(in BluetoothCodecConfig codecConfig);
    oneway void enableOptionalCodecs();
    oneway void disableOptionalCodecs();
}
+6 −0
Original line number Diff line number Diff line
@@ -124,6 +124,8 @@
        <item>aptX</item>
        <item>aptX HD</item>
        <item>LDAC</item>
        <item>Enable Optional Codecs</item>
        <item>Disable Optional Codecs</item>
    </string-array>

    <!-- Values for Bluetooth Audio Codec selection preference. -->
@@ -134,6 +136,8 @@
        <item>2</item>
        <item>3</item>
        <item>4</item>
        <item>5</item>
        <item>6</item>
    </string-array>

    <!-- Summaries for Bluetooth Audio Codec selection preference. [CHAR LIMIT=50]-->
@@ -144,6 +148,8 @@
        <item>aptX</item>
        <item>aptX HD</item>
        <item>LDAC</item>
        <item>Enable Optional Codecs</item>
        <item>Disable Optional Codecs</item>
    </string-array>

    <!-- Titles for Bluetooth Audio Codec Sample Rate selection preference. [CHAR LIMIT=50] -->