Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ccdedbef authored by Robert Wu's avatar Robert Wu Committed by Android (Google) Code Review
Browse files

Merge "AAudio: Sample rate converter flag" into main

parents 5e613cf3 101ad25a
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -17,6 +17,12 @@ aconfig_declarations {
    srcs: ["audio.aconfig"],
}

aconfig_declarations {
    name: "com.android.media.aaudio-aconfig",
    package: "com.android.media.aaudio",
    srcs: ["aaudio.aconfig"],
}

cc_aconfig_library {
    name: "com.android.media.audioserver-aconfig-cc",
    aconfig_declarations: "com.android.media.audioserver-aconfig",
@@ -39,6 +45,12 @@ cc_aconfig_library {
    defaults: ["audio-aconfig-cc-defaults"],
}

cc_aconfig_library {
    name: "com.android.media.aaudio-aconfig-cc",
    aconfig_declarations: "com.android.media.aaudio-aconfig",
    defaults: ["audio-aconfig-cc-defaults"],
}

java_aconfig_library {
    name: "com.android.media.audio-aconfig-java",
    aconfig_declarations: "com.android.media.audio-aconfig",
+12 −0
Original line number Diff line number Diff line
# Flags for aaudio
#
# Please add flags in alphabetical order.

package: "com.android.media.aaudio"

flag {
    name: "sample_rate_conversion"
    namespace: "media_audio"
    description: "Enable the AAudio sample rate converter."
    bug: "219533889"
}
+1 −0
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ cc_fuzz {
        "libaudioclient_aidl_conversion",
        "libaudio_aidl_conversion_common_cpp",
        "libutils",
        "com.android.media.aaudio-aconfig-cc",
    ],
    static_libs: [
        "liblog",
+1 −0
Original line number Diff line number Diff line
@@ -173,6 +173,7 @@ cc_library {
        "aaudio-aidl-cpp",
        "audioclient-types-aidl-cpp",
        "libaudioclient_aidl_conversion",
        "com.android.media.aaudio-aconfig-cc",
    ],

    cflags: [
+7 −6
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@
#include "fifo/FifoBuffer.h"
#include "utility/AudioClock.h"
#include <media/AidlConversion.h>
#include <com_android_media_aaudio.h>

#include "AudioStreamInternal.h"

@@ -63,8 +64,6 @@ using namespace aaudio;

#define LOG_TIMESTAMPS            0

#define ENABLE_SAMPLE_RATE_CONVERTER 1

AudioStreamInternal::AudioStreamInternal(AAudioServiceInterface  &serviceInterface, bool inService)
        : AudioStream()
        , mClockModel()
@@ -193,11 +192,13 @@ aaudio_result_t AudioStreamInternal::open(const AudioStreamBuilder &builder) {
        setSampleRate(configurationOutput.getSampleRate());
    }

#if !ENABLE_SAMPLE_RATE_CONVERTER
    if (!com::android::media::aaudio::sample_rate_conversion()) {
        if (getSampleRate() != getDeviceSampleRate()) {
            ALOGD("%s - skipping sample rate converter. SR = %d, Device SR = %d", __func__,
                    getSampleRate(), getDeviceSampleRate());
            goto error;
        }
#endif
    }

    // Save device format so we can do format conversion and volume scaling together.
    setDeviceFormat(configurationOutput.getFormat());