Revert "More stupid stuff"

This reverts commit a44c5812801e5330ec788698900dded14943dca3.
This commit is contained in:
Iscle 2025-04-21 12:55:04 +02:00
parent 796ca3ac35
commit fb3cd8729e
3 changed files with 20 additions and 62 deletions

View File

@ -3,32 +3,11 @@
#include <string> #include <string>
#include <dlfcn.h> #include <dlfcn.h>
AidlVersions::AidlVersions() { void AidlVersions::init() {
char tmp[128];
ALOGD("AidlVersions::init()"); ALOGD("AidlVersions::init()");
findAndroidHardwareAudioCommonVersion();
findAndroidHardwareAudioEffectVersion();
findAndroidHardwareCommonVersion();
findAndroidHardwareCommonFmqVersion();
findAndroidMediaAudioCommonTypesVersion();
findAndroidMediaAudioEraserTypesVersion();
}
void AidlVersions::findAndroidHardwareAudioCommonVersion() {
char tmp[128];
for (uint32_t i = ANDROID_HARDWARE_AUDIO_COMMON_MAX_VERSION; i > 0; i--) {
snprintf(tmp, sizeof(tmp), "android.hardware.audio.common-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY);
if (handle) {
ALOGD("Found android.hardware.audio.common-V%u-ndk.so", i);
androidHardwareAudioCommonVersion = i;
dlclose(handle);
break;
}
}
}
void AidlVersions::findAndroidHardwareAudioEffectVersion() {
char tmp[128];
for (uint32_t i = ANDROID_HARDWARE_AUDIO_EFFECT_MAX_VERSION; i > 0; i--) { for (uint32_t i = ANDROID_HARDWARE_AUDIO_EFFECT_MAX_VERSION; i > 0; i--) {
snprintf(tmp, sizeof(tmp), "android.hardware.audio.effect-V%u-ndk.so", i); snprintf(tmp, sizeof(tmp), "android.hardware.audio.effect-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY); void *handle = dlopen(tmp, RTLD_LAZY);
@ -42,10 +21,7 @@ void AidlVersions::findAndroidHardwareAudioEffectVersion() {
if (androidHardwareAudioEffectVersion == 0) { if (androidHardwareAudioEffectVersion == 0) {
ALOGE("Failed to find android.hardware.audio.effect version!"); ALOGE("Failed to find android.hardware.audio.effect version!");
} }
}
void AidlVersions::findAndroidHardwareCommonVersion() {
char tmp[128];
for (uint32_t i = ANDROID_HARDWARE_COMMON_MAX_VERSION; i > 0; i--) { for (uint32_t i = ANDROID_HARDWARE_COMMON_MAX_VERSION; i > 0; i--) {
snprintf(tmp, sizeof(tmp), "android.hardware.common-V%u-ndk.so", i); snprintf(tmp, sizeof(tmp), "android.hardware.common-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY); void *handle = dlopen(tmp, RTLD_LAZY);
@ -59,10 +35,7 @@ void AidlVersions::findAndroidHardwareCommonVersion() {
if (androidHardwareCommonVersion == 0) { if (androidHardwareCommonVersion == 0) {
ALOGE("Failed to find android.hardware.common version!"); ALOGE("Failed to find android.hardware.common version!");
} }
}
void AidlVersions::findAndroidHardwareCommonFmqVersion() {
char tmp[128];
for (uint32_t i = ANDROID_HARDWARE_COMMON_FMQ_MAX_VERSION; i > 0; i--) { for (uint32_t i = ANDROID_HARDWARE_COMMON_FMQ_MAX_VERSION; i > 0; i--) {
snprintf(tmp, sizeof(tmp), "android.hardware.common.fmq-V%u-ndk.so", i); snprintf(tmp, sizeof(tmp), "android.hardware.common.fmq-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY); void *handle = dlopen(tmp, RTLD_LAZY);
@ -76,10 +49,7 @@ void AidlVersions::findAndroidHardwareCommonFmqVersion() {
if (androidHardwareCommonFmqVersion == 0) { if (androidHardwareCommonFmqVersion == 0) {
ALOGE("Failed to find android.hardware.common.fmq version!"); ALOGE("Failed to find android.hardware.common.fmq version!");
} }
}
void AidlVersions::findAndroidMediaAudioCommonTypesVersion() {
char tmp[128];
for (uint32_t i = ANDROID_MEDIA_AUDIO_COMMON_TYPES_MAX_VERSION; i > 0; i--) { for (uint32_t i = ANDROID_MEDIA_AUDIO_COMMON_TYPES_MAX_VERSION; i > 0; i--) {
snprintf(tmp, sizeof(tmp), "android.media.audio.common.types-V%u-ndk.so", i); snprintf(tmp, sizeof(tmp), "android.media.audio.common.types-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY); void *handle = dlopen(tmp, RTLD_LAZY);
@ -95,7 +65,7 @@ void AidlVersions::findAndroidMediaAudioCommonTypesVersion() {
} }
} }
void AidlVersions::findAndroidMediaAudioEraserTypesVersion() { __attribute__((constructor))
char tmp[128]; void aidl_versions_init() {
// TODO AidlVersions::init();
} }

View File

@ -4,31 +4,19 @@
class AidlVersions { class AidlVersions {
public: public:
const static uint32_t ANDROID_HARDWARE_AUDIO_COMMON_MAX_VERSION = 5; const static uint32_t ANDROID_HARDWARE_AUDIO_COMMON_MAX_VERSION = 1;
const static uint32_t ANDROID_HARDWARE_AUDIO_EFFECT_MAX_VERSION = 4; const static uint32_t ANDROID_HARDWARE_AUDIO_EFFECT_MAX_VERSION = 3;
const static uint32_t ANDROID_HARDWARE_COMMON_MAX_VERSION = 3; const static uint32_t ANDROID_HARDWARE_COMMON_MAX_VERSION = 1;
const static uint32_t ANDROID_HARDWARE_COMMON_FMQ_MAX_VERSION = 2; const static uint32_t ANDROID_HARDWARE_COMMON_FMQ_MAX_VERSION = 1;
const static uint32_t ANDROID_MEDIA_AUDIO_COMMON_TYPES_MAX_VERSION = 5; const static uint32_t ANDROID_MEDIA_AUDIO_COMMON_TYPES_MAX_VERSION = 4;
const static uint32_t ANDROID_MEDIA_AUDIO_ERASER_TYPES_MAX_VERSION = 2; const static uint32_t ANDROID_MEDIA_AUDIO_ERASER_TYPES_MAX_VERSION = 1;
uint32_t androidHardwareAudioCommonVersion = 0; static void init();
uint32_t androidHardwareAudioEffectVersion = 0;
uint32_t androidHardwareCommonVersion = 0;
uint32_t androidHardwareCommonFmqVersion = 0;
uint32_t androidMediaAudioCommonTypesVersion = 0;
uint32_t androidMediaAudioEraserTypesVersion = 0;
static inline AidlVersions &instance() { static inline uint32_t androidHardwareAudioCommonVersion = 0;
static AidlVersions instance; static inline uint32_t androidHardwareAudioEffectVersion = 0;
return instance; static inline uint32_t androidHardwareCommonVersion = 0;
} static inline uint32_t androidHardwareCommonFmqVersion = 0;
private: static inline uint32_t androidMediaAudioCommonTypesVersion = 0;
AidlVersions(); static inline uint32_t androidMediaAudioEraserTypesVersion = 0;
void findAndroidHardwareAudioCommonVersion();
void findAndroidHardwareAudioEffectVersion();
void findAndroidHardwareCommonVersion();
void findAndroidHardwareCommonFmqVersion();
void findAndroidMediaAudioCommonTypesVersion();
void findAndroidMediaAudioEraserTypesVersion();
}; };

View File

@ -64,7 +64,7 @@ public:
return !(_rhs < *this); return !(_rhs < *this);
} }
private: private:
uint32_t version = AidlVersions::instance().androidMediaAudioCommonTypesVersion; uint32_t version = AidlVersions::androidMediaAudioCommonTypesVersion;
v1::AudioUuid *uuid_v1 = (v1::AudioUuid *) this; v1::AudioUuid *uuid_v1 = (v1::AudioUuid *) this;
}; };
} // namespace android::media::audio::common } // namespace android::media::audio::common