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

Commit 123492f4 authored by Atneya Nair's avatar Atneya Nair
Browse files

Fix ConversionUtil AudioFormat construction

Properly construct AudioFormat when the format passed from the HAL
is null.

Test: atest ConversionUtilTests
Fixes: 272616167
Change-Id: If48f80a02ab733926028363a39f82dd9d1a1ddcf
parent 18216d97
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@ import java.util.Arrays;
import java.util.UUID;

/** @hide */
class ConversionUtil {
public class ConversionUtil {
    public static SoundTrigger.ModuleProperties aidl2apiModuleDescriptor(
            SoundTriggerModuleDescriptor aidlDesc) {
        Properties properties = aidlDesc.properties;
@@ -233,7 +233,11 @@ class ConversionUtil {
        if (audioConfig != null) {
            return AidlConversion.aidl2api_AudioConfig_AudioFormat(audioConfig, isInput);
        }
        return new AudioFormat.Builder().build();
        return new AudioFormat.Builder()
            .setSampleRate(48000)
            .setEncoding(AudioFormat.ENCODING_PCM_16BIT)
            .setChannelMask(AudioFormat.CHANNEL_IN_MONO)
            .build();
    }

    public static int api2aidlModelParameter(int apiParam) {
+13 −0
Original line number Diff line number Diff line
@@ -16,7 +16,10 @@

package com.android.server.soundtrigger_middleware;

import static android.hardware.soundtrigger.ConversionUtil.aidl2apiAudioFormatWithDefault;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;

import android.hardware.audio.common.V2_0.Uuid;

@@ -44,4 +47,14 @@ public class ConversionUtilTest {
        Uuid reconstructed = ConversionUtil.aidl2hidlUuid(aidl);
        assertEquals(hidl, reconstructed);
    }

    @Test
    public void testDefaultAudioFormatConstruction() {
        // This method should generate a real format when passed null
        final var format = aidl2apiAudioFormatWithDefault(
                null /** exercise default **/,
                true /** isInput **/
                );
        assertNotNull(format);
    }
}