diff --git a/audio/aidl/Android.bp b/audio/aidl/Android.bp index 340cdb5bbb..ef51361200 100644 --- a/audio/aidl/Android.bp +++ b/audio/aidl/Android.bp @@ -114,7 +114,6 @@ aidl_interface { "android/hardware/audio/core/AudioRoute.aidl", "android/hardware/audio/core/IConfig.aidl", "android/hardware/audio/core/IModule.aidl", - "android/hardware/audio/core/ISoundDose.aidl", "android/hardware/audio/core/IStreamCallback.aidl", "android/hardware/audio/core/IStreamCommon.aidl", "android/hardware/audio/core/IStreamIn.aidl", @@ -133,6 +132,7 @@ aidl_interface { "android.hardware.common-V2", "android.hardware.common.fmq-V1", "android.hardware.audio.common-V1", + "android.hardware.audio.core.sounddose-V1", "android.hardware.audio.effect-V1", "android.media.audio.common.types-V2", ], @@ -178,7 +178,7 @@ aidl_interface { "android.hardware.audio_defaults", ], srcs: [ - "android/hardware/audio/core/ISoundDose.aidl", + "android/hardware/audio/core/sounddose/ISoundDose.aidl", ], imports: [ "android.media.audio.common.types-V2", diff --git a/audio/aidl/aidl_api/android.hardware.audio.core.sounddose/current/android/hardware/audio/core/ISoundDose.aidl b/audio/aidl/aidl_api/android.hardware.audio.core.sounddose/current/android/hardware/audio/core/sounddose/ISoundDose.aidl similarity index 88% rename from audio/aidl/aidl_api/android.hardware.audio.core.sounddose/current/android/hardware/audio/core/ISoundDose.aidl rename to audio/aidl/aidl_api/android.hardware.audio.core.sounddose/current/android/hardware/audio/core/sounddose/ISoundDose.aidl index bc010caaf5..3b5d2d06cf 100644 --- a/audio/aidl/aidl_api/android.hardware.audio.core.sounddose/current/android/hardware/audio/core/ISoundDose.aidl +++ b/audio/aidl/aidl_api/android.hardware.audio.core.sounddose/current/android/hardware/audio/core/sounddose/ISoundDose.aidl @@ -31,18 +31,18 @@ // with such a backward incompatible change, it has a high risk of breaking // later when a module using the interface is updated, e.g., Mainline modules. -package android.hardware.audio.core; +package android.hardware.audio.core.sounddose; @VintfStability interface ISoundDose { void setOutputRs2(float rs2ValueDbA); float getOutputRs2(); - void registerSoundDoseCallback(in android.hardware.audio.core.ISoundDose.IHalSoundDoseCallback callback); + void registerSoundDoseCallback(in android.hardware.audio.core.sounddose.ISoundDose.IHalSoundDoseCallback callback); const int DEFAULT_MAX_RS2 = 100; const int MIN_RS2 = 80; @VintfStability interface IHalSoundDoseCallback { oneway void onMomentaryExposureWarning(float currentDbA, in android.media.audio.common.AudioDevice audioDevice); - oneway void onNewMelValues(in android.hardware.audio.core.ISoundDose.IHalSoundDoseCallback.MelRecord melRecord, in android.media.audio.common.AudioDevice audioDevice); + oneway void onNewMelValues(in android.hardware.audio.core.sounddose.ISoundDose.IHalSoundDoseCallback.MelRecord melRecord, in android.media.audio.common.AudioDevice audioDevice); @VintfStability parcelable MelRecord { float[] melValues; diff --git a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IModule.aidl b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IModule.aidl index 6a10295257..a029d43609 100644 --- a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IModule.aidl +++ b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IModule.aidl @@ -61,7 +61,7 @@ interface IModule { void updateAudioMode(android.hardware.audio.core.AudioMode mode); void updateScreenRotation(android.hardware.audio.core.IModule.ScreenRotation rotation); void updateScreenState(boolean isTurnedOn); - @nullable android.hardware.audio.core.ISoundDose getSoundDose(); + @nullable android.hardware.audio.core.sounddose.ISoundDose getSoundDose(); int generateHwAvSyncId(); android.hardware.audio.core.VendorParameter[] getVendorParameters(in @utf8InCpp String[] ids); void setVendorParameters(in android.hardware.audio.core.VendorParameter[] parameters, boolean async); diff --git a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/ISoundDose.aidl b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/ISoundDose.aidl deleted file mode 100644 index bc010caaf5..0000000000 --- a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/ISoundDose.aidl +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (C) 2022 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/////////////////////////////////////////////////////////////////////////////// -// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. // -/////////////////////////////////////////////////////////////////////////////// - -// This file is a snapshot of an AIDL file. Do not edit it manually. There are -// two cases: -// 1). this is a frozen version file - do not edit this in any case. -// 2). this is a 'current' file. If you make a backwards compatible change to -// the interface (from the latest frozen version), the build system will -// prompt you to update this file with `m -update-api`. -// -// You must not make a backward incompatible change to any AIDL file built -// with the aidl_interface module type with versions property set. The module -// type is used to build AIDL files in a way that they can be used across -// independently updatable components of the system. If a device is shipped -// with such a backward incompatible change, it has a high risk of breaking -// later when a module using the interface is updated, e.g., Mainline modules. - -package android.hardware.audio.core; -@VintfStability -interface ISoundDose { - void setOutputRs2(float rs2ValueDbA); - float getOutputRs2(); - void registerSoundDoseCallback(in android.hardware.audio.core.ISoundDose.IHalSoundDoseCallback callback); - const int DEFAULT_MAX_RS2 = 100; - const int MIN_RS2 = 80; - @VintfStability - interface IHalSoundDoseCallback { - oneway void onMomentaryExposureWarning(float currentDbA, in android.media.audio.common.AudioDevice audioDevice); - oneway void onNewMelValues(in android.hardware.audio.core.ISoundDose.IHalSoundDoseCallback.MelRecord melRecord, in android.media.audio.common.AudioDevice audioDevice); - @VintfStability - parcelable MelRecord { - float[] melValues; - long timestamp; - } - } -} diff --git a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IStreamIn.aidl b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IStreamIn.aidl index 68f1ff34fe..1041943446 100644 --- a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IStreamIn.aidl +++ b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/IStreamIn.aidl @@ -43,7 +43,7 @@ interface IStreamIn { void updateMetadata(in android.hardware.audio.common.SinkMetadata sinkMetadata); float[] getHwGain(); void setHwGain(in float[] channelGains); - const int MIC_FIELD_DIMENSION_WIDE_ANGLE = -1; + const int MIC_FIELD_DIMENSION_WIDE_ANGLE = (-1); const int MIC_FIELD_DIMENSION_NO_ZOOM = 0; const int MIC_FIELD_DIMENSION_MAX_ZOOM = 1; const int HW_GAIN_MIN = 0; diff --git a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/MicrophoneInfo.aidl b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/MicrophoneInfo.aidl index 68c7f880f8..b77afe32cb 100644 --- a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/MicrophoneInfo.aidl +++ b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/MicrophoneInfo.aidl @@ -37,15 +37,15 @@ parcelable MicrophoneInfo { @utf8InCpp String id; android.media.audio.common.AudioDevice device; android.hardware.audio.core.MicrophoneInfo.Location location = android.hardware.audio.core.MicrophoneInfo.Location.UNKNOWN; - int group = -1; - int indexInTheGroup = -1; + int group = GROUP_UNKNOWN; + int indexInTheGroup = INDEX_IN_THE_GROUP_UNKNOWN; @nullable android.hardware.audio.core.MicrophoneInfo.Sensitivity sensitivity; android.hardware.audio.core.MicrophoneInfo.Directionality directionality = android.hardware.audio.core.MicrophoneInfo.Directionality.UNKNOWN; android.hardware.audio.core.MicrophoneInfo.FrequencyResponsePoint[] frequencyResponse; @nullable android.hardware.audio.core.MicrophoneInfo.Coordinate position; @nullable android.hardware.audio.core.MicrophoneInfo.Coordinate orientation; - const int GROUP_UNKNOWN = -1; - const int INDEX_IN_THE_GROUP_UNKNOWN = -1; + const int GROUP_UNKNOWN = (-1); + const int INDEX_IN_THE_GROUP_UNKNOWN = (-1); @Backing(type="int") @VintfStability enum Location { UNKNOWN = 0, diff --git a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/StreamDescriptor.aidl b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/StreamDescriptor.aidl index 3a4271b89a..a65d7b7cea 100644 --- a/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/StreamDescriptor.aidl +++ b/audio/aidl/aidl_api/android.hardware.audio.core/current/android/hardware/audio/core/StreamDescriptor.aidl @@ -39,12 +39,12 @@ parcelable StreamDescriptor { int frameSizeBytes; long bufferSizeFrames; android.hardware.audio.core.StreamDescriptor.AudioBuffer audio; - const int LATENCY_UNKNOWN = -1; + const int LATENCY_UNKNOWN = (-1); @FixedSize @VintfStability parcelable Position { - long frames = -1; - long timeNs = -1; - const long UNKNOWN = -1; + long frames = UNKNOWN; + long timeNs = UNKNOWN; + const long UNKNOWN = (-1); } @Backing(type="int") @VintfStability enum State { diff --git a/audio/aidl/android/hardware/audio/core/IModule.aidl b/audio/aidl/android/hardware/audio/core/IModule.aidl index f4ee1f327c..4779f1f3da 100644 --- a/audio/aidl/android/hardware/audio/core/IModule.aidl +++ b/audio/aidl/android/hardware/audio/core/IModule.aidl @@ -21,7 +21,6 @@ import android.hardware.audio.common.SourceMetadata; import android.hardware.audio.core.AudioMode; import android.hardware.audio.core.AudioPatch; import android.hardware.audio.core.AudioRoute; -import android.hardware.audio.core.ISoundDose; import android.hardware.audio.core.IStreamCallback; import android.hardware.audio.core.IStreamIn; import android.hardware.audio.core.IStreamOut; @@ -31,6 +30,7 @@ import android.hardware.audio.core.MicrophoneInfo; import android.hardware.audio.core.ModuleDebug; import android.hardware.audio.core.StreamDescriptor; import android.hardware.audio.core.VendorParameter; +import android.hardware.audio.core.sounddose.ISoundDose; import android.hardware.audio.effect.IEffect; import android.media.audio.common.AudioOffloadInfo; import android.media.audio.common.AudioPort; diff --git a/audio/aidl/android/hardware/audio/core/ISoundDose.aidl b/audio/aidl/android/hardware/audio/core/sounddose/ISoundDose.aidl similarity index 98% rename from audio/aidl/android/hardware/audio/core/ISoundDose.aidl rename to audio/aidl/android/hardware/audio/core/sounddose/ISoundDose.aidl index 89fd69b80f..953ab62bfe 100644 --- a/audio/aidl/android/hardware/audio/core/ISoundDose.aidl +++ b/audio/aidl/android/hardware/audio/core/sounddose/ISoundDose.aidl @@ -14,7 +14,7 @@ * limitations under the License. */ -package android.hardware.audio.core; +package android.hardware.audio.core.sounddose; import android.media.audio.common.AudioDevice; diff --git a/audio/aidl/default/Android.bp b/audio/aidl/default/Android.bp index 7a1f7cdcbe..8cd56c05c4 100644 --- a/audio/aidl/default/Android.bp +++ b/audio/aidl/default/Android.bp @@ -95,6 +95,7 @@ cc_binary { defaults: [ "aidlaudioservice_defaults", "latest_android_media_audio_common_types_ndk_shared", + "latest_android_hardware_audio_core_sounddose_ndk_shared", "latest_android_hardware_audio_core_ndk_shared", ], static_libs: [ diff --git a/audio/aidl/default/Module.cpp b/audio/aidl/default/Module.cpp index 6a833c4848..b58c5621c4 100644 --- a/audio/aidl/default/Module.cpp +++ b/audio/aidl/default/Module.cpp @@ -32,6 +32,7 @@ using aidl::android::hardware::audio::common::SinkMetadata; using aidl::android::hardware::audio::common::SourceMetadata; +using aidl::android::hardware::audio::core::sounddose::ISoundDose; using aidl::android::media::audio::common::AudioChannelLayout; using aidl::android::media::audio::common::AudioDevice; using aidl::android::media::audio::common::AudioFormatDescription; @@ -946,7 +947,7 @@ ndk::ScopedAStatus Module::updateScreenState(bool in_isTurnedOn) { ndk::ScopedAStatus Module::getSoundDose(std::shared_ptr* _aidl_return) { if (mSoundDose == nullptr) { - mSoundDose = ndk::SharedRefBase::make(); + mSoundDose = ndk::SharedRefBase::make(); mSoundDoseBinder = mSoundDose->asBinder(); AIBinder_setMinSchedulerPolicy(mSoundDoseBinder.get(), SCHED_NORMAL, ANDROID_PRIORITY_AUDIO); diff --git a/audio/aidl/default/SoundDose.cpp b/audio/aidl/default/SoundDose.cpp index 3d222a8280..be9f93af92 100644 --- a/audio/aidl/default/SoundDose.cpp +++ b/audio/aidl/default/SoundDose.cpp @@ -20,7 +20,7 @@ #include -namespace aidl::android::hardware::audio::core { +namespace aidl::android::hardware::audio::core::sounddose { ndk::ScopedAStatus SoundDose::setOutputRs2(float in_rs2ValueDbA) { if (in_rs2ValueDbA < MIN_RS2 || in_rs2ValueDbA > DEFAULT_MAX_RS2) { @@ -54,4 +54,4 @@ ndk::ScopedAStatus SoundDose::registerSoundDoseCallback( return ndk::ScopedAStatus::ok(); } -} // namespace aidl::android::hardware::audio::core +} // namespace aidl::android::hardware::audio::core::sounddose diff --git a/audio/aidl/default/include/core-impl/Module.h b/audio/aidl/default/include/core-impl/Module.h index ff45f8110a..faca61e481 100644 --- a/audio/aidl/default/include/core-impl/Module.h +++ b/audio/aidl/default/include/core-impl/Module.h @@ -88,7 +88,7 @@ class Module : public BnModule { ndk::ScopedAStatus updateScreenRotation( ::aidl::android::hardware::audio::core::IModule::ScreenRotation in_rotation) override; ndk::ScopedAStatus updateScreenState(bool in_isTurnedOn) override; - ndk::ScopedAStatus getSoundDose(std::shared_ptr* _aidl_return) override; + ndk::ScopedAStatus getSoundDose(std::shared_ptr* _aidl_return) override; ndk::ScopedAStatus generateHwAvSyncId(int32_t* _aidl_return) override; ndk::ScopedAStatus getVendorParameters(const std::vector& in_ids, std::vector* _aidl_return) override; @@ -140,7 +140,7 @@ class Module : public BnModule { bool mMasterMute = false; float mMasterVolume = 1.0f; bool mMicMute = false; - std::shared_ptr mSoundDose; + std::shared_ptr mSoundDose; ndk::SpAIBinder mSoundDoseBinder; }; diff --git a/audio/aidl/default/include/core-impl/SoundDose.h b/audio/aidl/default/include/core-impl/SoundDose.h index 54a6cbf1b8..306aa04d48 100644 --- a/audio/aidl/default/include/core-impl/SoundDose.h +++ b/audio/aidl/default/include/core-impl/SoundDose.h @@ -18,12 +18,12 @@ #include -#include +#include #include using aidl::android::media::audio::common::AudioDevice; -namespace aidl::android::hardware::audio::core { +namespace aidl::android::hardware::audio::core::sounddose { class SoundDose : public BnSoundDose { public: @@ -39,4 +39,4 @@ class SoundDose : public BnSoundDose { float mRs2Value; }; -} // namespace aidl::android::hardware::audio::core +} // namespace aidl::android::hardware::audio::core::sounddose diff --git a/audio/aidl/sounddose/aidl_api/android.hardware.audio.sounddose/current/android/hardware/audio/sounddose/ISoundDoseFactory.aidl b/audio/aidl/sounddose/aidl_api/android.hardware.audio.sounddose/current/android/hardware/audio/sounddose/ISoundDoseFactory.aidl index 7dda011ccd..148720ce4f 100644 --- a/audio/aidl/sounddose/aidl_api/android.hardware.audio.sounddose/current/android/hardware/audio/sounddose/ISoundDoseFactory.aidl +++ b/audio/aidl/sounddose/aidl_api/android.hardware.audio.sounddose/current/android/hardware/audio/sounddose/ISoundDoseFactory.aidl @@ -34,5 +34,5 @@ package android.hardware.audio.sounddose; @VintfStability interface ISoundDoseFactory { - @nullable android.hardware.audio.core.ISoundDose getSoundDose(in @utf8InCpp String module); + @nullable android.hardware.audio.core.sounddose.ISoundDose getSoundDose(in @utf8InCpp String module); } diff --git a/audio/aidl/sounddose/android/hardware/audio/sounddose/ISoundDoseFactory.aidl b/audio/aidl/sounddose/android/hardware/audio/sounddose/ISoundDoseFactory.aidl index 34872378c7..4079fe8c3e 100644 --- a/audio/aidl/sounddose/android/hardware/audio/sounddose/ISoundDoseFactory.aidl +++ b/audio/aidl/sounddose/android/hardware/audio/sounddose/ISoundDoseFactory.aidl @@ -16,7 +16,7 @@ package android.hardware.audio.sounddose; -import android.hardware.audio.core.ISoundDose; +import android.hardware.audio.core.sounddose.ISoundDose; /** * This interface is used to provide an easy way to implement the ISoundDose interface diff --git a/audio/aidl/sounddose/default/SoundDoseFactory.cpp b/audio/aidl/sounddose/default/SoundDoseFactory.cpp index 50796d0ce0..83a592b54e 100644 --- a/audio/aidl/sounddose/default/SoundDoseFactory.cpp +++ b/audio/aidl/sounddose/default/SoundDoseFactory.cpp @@ -23,7 +23,7 @@ namespace aidl::android::hardware::audio::sounddose { -using ::aidl::android::hardware::audio::core::SoundDose; +using ::aidl::android::hardware::audio::core::sounddose::SoundDose; ndk::ScopedAStatus SoundDoseFactory::getSoundDose(const std::string& in_module, std::shared_ptr* _aidl_return) { diff --git a/audio/aidl/sounddose/default/include/SoundDoseFactory.h b/audio/aidl/sounddose/default/include/SoundDoseFactory.h index 4cf3277fc7..ced4291411 100644 --- a/audio/aidl/sounddose/default/include/SoundDoseFactory.h +++ b/audio/aidl/sounddose/default/include/SoundDoseFactory.h @@ -16,7 +16,7 @@ #pragma once -#include +#include #include #include @@ -24,7 +24,7 @@ namespace aidl::android::hardware::audio::sounddose { -using ::aidl::android::hardware::audio::core::ISoundDose; +using ::aidl::android::hardware::audio::core::sounddose::ISoundDose; class SoundDoseFactory : public BnSoundDoseFactory { public: diff --git a/audio/aidl/sounddose/vts/VtsHalSoundDoseFactoryTargetTest.cpp b/audio/aidl/sounddose/vts/VtsHalSoundDoseFactoryTargetTest.cpp index 7448c1ff5f..df35bae086 100644 --- a/audio/aidl/sounddose/vts/VtsHalSoundDoseFactoryTargetTest.cpp +++ b/audio/aidl/sounddose/vts/VtsHalSoundDoseFactoryTargetTest.cpp @@ -47,7 +47,7 @@ inline ::testing::AssertionResult assertIsOk(const char* expr, const ::ndk::Scop using namespace android; -using aidl::android::hardware::audio::core::ISoundDose; +using aidl::android::hardware::audio::core::sounddose::ISoundDose; using aidl::android::hardware::audio::sounddose::ISoundDoseFactory; class SoundDoseFactory : public testing::TestWithParam { diff --git a/audio/aidl/vts/Android.bp b/audio/aidl/vts/Android.bp index 96e9971d2e..e154c073b3 100644 --- a/audio/aidl/vts/Android.bp +++ b/audio/aidl/vts/Android.bp @@ -44,6 +44,7 @@ cc_test { defaults: [ "VtsHalAudioTargetTestDefaults", "latest_android_hardware_audio_core_ndk_static", + "latest_android_hardware_audio_core_sounddose_ndk_static", ], shared_libs: [ "libcutils", diff --git a/audio/aidl/vts/VtsHalAudioCoreModuleTargetTest.cpp b/audio/aidl/vts/VtsHalAudioCoreModuleTargetTest.cpp index 1b46498348..bd2c79d471 100644 --- a/audio/aidl/vts/VtsHalAudioCoreModuleTargetTest.cpp +++ b/audio/aidl/vts/VtsHalAudioCoreModuleTargetTest.cpp @@ -36,8 +36,8 @@ #include #include #include -#include #include +#include #include #include #include @@ -57,7 +57,6 @@ using aidl::android::hardware::audio::core::AudioMode; using aidl::android::hardware::audio::core::AudioPatch; using aidl::android::hardware::audio::core::AudioRoute; using aidl::android::hardware::audio::core::IModule; -using aidl::android::hardware::audio::core::ISoundDose; using aidl::android::hardware::audio::core::IStreamCommon; using aidl::android::hardware::audio::core::IStreamIn; using aidl::android::hardware::audio::core::IStreamOut; @@ -67,6 +66,7 @@ using aidl::android::hardware::audio::core::MicrophoneInfo; using aidl::android::hardware::audio::core::ModuleDebug; using aidl::android::hardware::audio::core::StreamDescriptor; using aidl::android::hardware::audio::core::VendorParameter; +using aidl::android::hardware::audio::core::sounddose::ISoundDose; using aidl::android::hardware::common::fmq::SynchronizedReadWrite; using aidl::android::media::audio::common::AudioContentType; using aidl::android::media::audio::common::AudioDevice; diff --git a/compatibility_matrices/exclude/fcm_exclude.cpp b/compatibility_matrices/exclude/fcm_exclude.cpp index cf1e138090..3c0c5f1d68 100644 --- a/compatibility_matrices/exclude/fcm_exclude.cpp +++ b/compatibility_matrices/exclude/fcm_exclude.cpp @@ -52,6 +52,7 @@ bool ShouldCheckMissingHalsInFcm(const std::string& package) { "android.hardware.radio.config@1.2", // AIDL "android.hardware.audio.common", + "android.hardware.audio.core.sounddose", "android.hardware.biometrics.common", "android.hardware.camera.metadata", "android.hardware.camera.device",