diff --git a/core/java/android/hardware/soundtrigger/SoundTriggerModule.java b/core/java/android/hardware/soundtrigger/SoundTriggerModule.java index e970747d66421..838765b67dffb 100644 --- a/core/java/android/hardware/soundtrigger/SoundTriggerModule.java +++ b/core/java/android/hardware/soundtrigger/SoundTriggerModule.java @@ -20,7 +20,6 @@ import android.annotation.UnsupportedAppUsage; import android.os.Handler; import android.os.Looper; import android.os.Message; - import java.lang.ref.WeakReference; /** @@ -132,14 +131,6 @@ public class SoundTriggerModule { @UnsupportedAppUsage public native int stopRecognition(int soundModelHandle); - /** - * Get the current state of a {@link SoundTrigger.SoundModel} - * @param soundModelHandle The sound model handle indicating which model's state to return - * @return - {@link SoundTrigger#RecognitionEvent} in case of success - * - null in case of an error or if not supported - */ - public native SoundTrigger.RecognitionEvent getModelState(int soundModelHandle); - private class NativeEventHandlerDelegate { private final Handler mHandler; @@ -216,3 +207,4 @@ public class SoundTriggerModule { } } } + diff --git a/core/java/com/android/internal/app/ISoundTriggerService.aidl b/core/java/com/android/internal/app/ISoundTriggerService.aidl index c0c689ced5217..b8a2dff95c37a 100644 --- a/core/java/com/android/internal/app/ISoundTriggerService.aidl +++ b/core/java/com/android/internal/app/ISoundTriggerService.aidl @@ -52,6 +52,4 @@ interface ISoundTriggerService { /** For both ...Intent and ...Service based usage */ boolean isRecognitionActive(in ParcelUuid parcelUuid); - - SoundTrigger.RecognitionEvent getModelState(in ParcelUuid parcelUuid); } diff --git a/core/jni/android_hardware_SoundTrigger.cpp b/core/jni/android_hardware_SoundTrigger.cpp index bbc63fc925feb..9dbb8d757e159 100644 --- a/core/jni/android_hardware_SoundTrigger.cpp +++ b/core/jni/android_hardware_SoundTrigger.cpp @@ -788,63 +788,6 @@ android_hardware_SoundTrigger_stopRecognition(JNIEnv *env, jobject thiz, return status; } -static jobject -android_hardware_SoundTrigger_getModelState(JNIEnv *env, jobject thiz, - jint jHandle) -{ - ALOGV("getModelState"); - sp module = getSoundTrigger(env, thiz); - if (module == NULL) { - return NULL; - } - sp memory; - jint status = module->getModelState(jHandle, memory); - if (status != 0 || memory == NULL) { - ALOGW("getModelState, failed to get model state, status: %d", status); - return NULL; - } - struct sound_trigger_recognition_event* event = - (struct sound_trigger_recognition_event *)memory->pointer(); - if (event == NULL) { - return NULL; - } - if (event->type != SOUND_MODEL_TYPE_GENERIC) { - ALOGW("getModelState, unsupported model type: %d", event->type); - return NULL; - } - - jbyteArray jData = NULL; - if (event->data_size) { - jData = env->NewByteArray(event->data_size); - jbyte *nData = env->GetByteArrayElements(jData, NULL); - memcpy(nData, (char *)event + event->data_offset, event->data_size); - env->ReleaseByteArrayElements(jData, nData, 0); - } - - jobject jAudioFormat = NULL; - if (event->trigger_in_data || event->capture_available) { - jAudioFormat = env->NewObject(gAudioFormatClass, - gAudioFormatCstor, - audioFormatFromNative(event->audio_config.format), - event->audio_config.sample_rate, - inChannelMaskFromNative(event->audio_config.channel_mask)); - - } - jobject jEvent = NULL; - jEvent = env->NewObject(gGenericRecognitionEventClass, gGenericRecognitionEventCstor, - event->status, event->model, event->capture_available, - event->capture_session, event->capture_delay_ms, - event->capture_preamble_ms, event->trigger_in_data, - jAudioFormat, jData); - if (jAudioFormat != NULL) { - env->DeleteLocalRef(jAudioFormat); - } - if (jData != NULL) { - env->DeleteLocalRef(jData); - } - return jEvent; -} - static const JNINativeMethod gMethods[] = { {"listModules", "(Ljava/util/ArrayList;)I", @@ -874,9 +817,6 @@ static const JNINativeMethod gModuleMethods[] = { {"stopRecognition", "(I)I", (void *)android_hardware_SoundTrigger_stopRecognition}, - {"getModelState", - "(I)Landroid/hardware/soundtrigger/SoundTrigger$RecognitionEvent;", - (void *)android_hardware_SoundTrigger_getModelState}, }; int register_android_hardware_SoundTrigger(JNIEnv *env) diff --git a/media/java/android/media/soundtrigger/SoundTriggerManager.java b/media/java/android/media/soundtrigger/SoundTriggerManager.java index cf7bf19909d90..9eb0c6d70cfe0 100644 --- a/media/java/android/media/soundtrigger/SoundTriggerManager.java +++ b/media/java/android/media/soundtrigger/SoundTriggerManager.java @@ -365,22 +365,4 @@ public final class SoundTriggerManager { return Integer.MAX_VALUE; } } - - /** - * Synchronously get state of the indicated model. The model state is returned as - * a recognition event, or null if the model is not loaded, or if this method - * is not supported. - * @hide - */ - @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) - public SoundTrigger.RecognitionEvent getModelState(UUID soundModelId) { - if (soundModelId == null) { - return null; - } - try { - return mSoundTriggerService.getModelState(new ParcelUuid(soundModelId)); - } catch (RemoteException e) { - throw e.rethrowFromSystemServer(); - } - } } diff --git a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java index ad2501d7c8cfa..bafb0a2fd6832 100644 --- a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java +++ b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java @@ -566,40 +566,6 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener { } } - SoundTrigger.RecognitionEvent getGenericModelState(UUID modelId) { - synchronized (mLock) { - MetricsLogger.count(mContext, "sth_get_generic_model_state", 1); - if (modelId == null || mModule == null) { - return null; - } - ModelData modelData = mModelDataMap.get(modelId); - if (modelData == null || !modelData.isGenericModel()) { - Slog.w(TAG, "GetGenericModelState error: Invalid generic model id:" + - modelId); - return null; - } - if (!modelData.isModelLoaded()) { - Slog.i(TAG, "GetGenericModelState: Given generic model is not loaded:" + modelId); - return null; - } - if (!modelData.isModelStarted()) { - Slog.i(TAG, "GetGenericModelState: Given generic model is not started:" + modelId); - return null; - } - - SoundTrigger.RecognitionEvent ret = mModule.getModelState(modelData.getHandle()); - if (ret == null) { - Slog.w(TAG, "GetGenericModelState() call failed"); - } - return ret; - } - } - - SoundTrigger.RecognitionEvent getKeyphraseModelState(UUID modelId) { - Slog.w(TAG, "GetKeyphraseModelState error: Not implemented"); - return null; - } - //---- SoundTrigger.StatusListener methods @Override public void onRecognition(RecognitionEvent event) { diff --git a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerService.java b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerService.java index d57fcb105f9b9..7c22613664a53 100644 --- a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerService.java +++ b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerService.java @@ -434,40 +434,6 @@ public class SoundTriggerService extends SystemService { } return mSoundTriggerHelper.isRecognitionRequested(parcelUuid.getUuid()); } - - @Override - public SoundTrigger.RecognitionEvent getModelState(ParcelUuid soundModelId) { - enforceCallingPermission(Manifest.permission.MANAGE_SOUND_TRIGGER); - if (!isInitialized()) return null; - if (DEBUG) { - Slog.i(TAG, "getModelState(): id = " + soundModelId); - } - - synchronized (mLock) { - SoundModel soundModel = mLoadedModels.get(soundModelId.getUuid()); - if (soundModel == null) { - Slog.e(TAG, soundModelId + " is not loaded"); - return null; - } - SoundTrigger.RecognitionEvent ret = null; - switch (soundModel.type) { - case SoundModel.TYPE_KEYPHRASE: - ret = mSoundTriggerHelper.getKeyphraseModelState(soundModel.uuid); - break; - case SoundModel.TYPE_GENERIC_SOUND: - ret = mSoundTriggerHelper.getGenericModelState(soundModel.uuid); - break; - default: - Slog.e(TAG, "Unknown model type"); - break; - } - if (ret == null) { - Slog.e(TAG, "Failed to get model state"); - } - - return ret; - } - } } /**