Move common audio AIDL types to audio.media.audio.common
Since tests depend statically on libaudiofoundation,
they also need to depend on the generated interfaces code,
which contains vtables for interface classes.
Update 'sthal_cli_3' test app.
Bug: 188932434
Test: m HalAudioV6_0GeneratorTest
Test: m sthal_cli_3
Change-Id: Ifb8f81d02764f7710ce207603aa6fe2d20123e89
diff --git a/audio/core/all-versions/vts/functional/Android.bp b/audio/core/all-versions/vts/functional/Android.bp
index 9f4a295..7c25c23 100644
--- a/audio/core/all-versions/vts/functional/Android.bp
+++ b/audio/core/all-versions/vts/functional/Android.bp
@@ -58,6 +58,7 @@
"libmedia_helper",
"android.hardware.audio@2.0",
"android.hardware.audio.common@2.0",
+ "android.media.audio.common.types-V1-cpp",
],
cflags: [
"-DMAJOR_VERSION=2",
@@ -84,6 +85,7 @@
"libmedia_helper",
"android.hardware.audio@4.0",
"android.hardware.audio.common@4.0",
+ "android.media.audio.common.types-V1-cpp",
],
cflags: [
"-DMAJOR_VERSION=4",
@@ -110,6 +112,7 @@
"libmedia_helper",
"android.hardware.audio@5.0",
"android.hardware.audio.common@5.0",
+ "android.media.audio.common.types-V1-cpp",
],
cflags: [
"-DMAJOR_VERSION=5",
@@ -137,6 +140,7 @@
"libmedia_helper",
"android.hardware.audio@6.0",
"android.hardware.audio.common@6.0",
+ "android.media.audio.common.types-V1-cpp",
],
cflags: [
"-DMAJOR_VERSION=6",
@@ -200,6 +204,7 @@
static_libs: [
"android.hardware.audio@6.0",
"android.hardware.audio.common@6.0",
+ "android.media.audio.common.types-V1-cpp",
"libaudiofoundation",
"libaudiopolicycomponents",
"libmedia_helper",
diff --git a/soundtrigger/aidl/cli/java/android/hardware/soundtrigger3/cli/SthalCli.java b/soundtrigger/aidl/cli/java/android/hardware/soundtrigger3/cli/SthalCli.java
index d3e1aa7..b477878 100644
--- a/soundtrigger/aidl/cli/java/android/hardware/soundtrigger3/cli/SthalCli.java
+++ b/soundtrigger/aidl/cli/java/android/hardware/soundtrigger3/cli/SthalCli.java
@@ -19,7 +19,11 @@
import android.hardware.soundtrigger3.ISoundTriggerHw;
import android.hardware.soundtrigger3.ISoundTriggerHwCallback;
import android.hardware.soundtrigger3.ISoundTriggerHwGlobalCallback;
+import android.media.audio.common.AudioChannelLayout;
import android.media.audio.common.AudioConfig;
+import android.media.audio.common.AudioFormatDescription;
+import android.media.audio.common.AudioFormatType;
+import android.media.audio.common.PcmType;
import android.media.soundtrigger.ConfidenceLevel;
import android.media.soundtrigger.ModelParameterRange;
import android.media.soundtrigger.PhraseRecognitionEvent;
@@ -36,7 +40,6 @@
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.SystemProperties;
-
import java.util.Scanner;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
@@ -196,9 +199,7 @@
event.type = SoundModelType.GENERIC;
event.status = status;
event.captureAvailable = true;
- event.audioConfig.channelMask = 16;
- event.audioConfig.format = 1;
- event.audioConfig.sampleRateHz = 16000;
+ event.audioConfig = createConfig();
try {
model.callback.recognitionCallback(modelHandle, event);
} catch (RemoteException e) {
@@ -216,10 +217,7 @@
event.common.type = SoundModelType.KEYPHRASE;
event.common.status = status;
event.common.captureAvailable = true;
- event.common.audioConfig = new AudioConfig();
- event.common.audioConfig.channelMask = 16;
- event.common.audioConfig.format = 1;
- event.common.audioConfig.sampleRateHz = 16000;
+ event.common.audioConfig = createConfig();
if (model.phraseModel.phrases.length > 0) {
PhraseRecognitionExtra extra = new PhraseRecognitionExtra();
extra.id = model.phraseModel.phrases[0].id;
@@ -250,6 +248,16 @@
}
}
+ private AudioConfig createConfig() {
+ AudioConfig config = new AudioConfig();
+ config.channelMask = AudioChannelLayout.layoutMask(AudioChannelLayout.LAYOUT_MONO);
+ config.format = new AudioFormatDescription();
+ config.format.type = AudioFormatType.PCM;
+ config.format.pcm = PcmType.INT_16_BIT;
+ config.sampleRateHz = 16000;
+ return config;
+ }
+
@Override
public void registerGlobalCallback(ISoundTriggerHwGlobalCallback callback) {
System.out.println("registerGlobalCallback()");