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 <dlfcn.h>
AidlVersions::AidlVersions() {
void AidlVersions::init() {
char tmp[128];
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--) {
snprintf(tmp, sizeof(tmp), "android.hardware.audio.effect-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY);
@ -42,10 +21,7 @@ void AidlVersions::findAndroidHardwareAudioEffectVersion() {
if (androidHardwareAudioEffectVersion == 0) {
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--) {
snprintf(tmp, sizeof(tmp), "android.hardware.common-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY);
@ -59,10 +35,7 @@ void AidlVersions::findAndroidHardwareCommonVersion() {
if (androidHardwareCommonVersion == 0) {
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--) {
snprintf(tmp, sizeof(tmp), "android.hardware.common.fmq-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY);
@ -76,10 +49,7 @@ void AidlVersions::findAndroidHardwareCommonFmqVersion() {
if (androidHardwareCommonFmqVersion == 0) {
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--) {
snprintf(tmp, sizeof(tmp), "android.media.audio.common.types-V%u-ndk.so", i);
void *handle = dlopen(tmp, RTLD_LAZY);
@ -95,7 +65,7 @@ void AidlVersions::findAndroidMediaAudioCommonTypesVersion() {
}
}
void AidlVersions::findAndroidMediaAudioEraserTypesVersion() {
char tmp[128];
// TODO
__attribute__((constructor))
void aidl_versions_init() {
AidlVersions::init();
}

View File

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

View File

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