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

Commit 86289612 authored by Phil Burk's avatar Phil Burk Committed by Android (Google) Code Review
Browse files

Merge "libaaudio: remove LEGACY sharing mode"

parents 09cf7cab c35f3ae6
Loading
Loading
Loading
Loading
+1 −8
Original line number Diff line number Diff line
@@ -32,15 +32,9 @@ static const char *getSharingModeText(aaudio_sharing_mode_t mode) {
    case AAUDIO_SHARING_MODE_EXCLUSIVE:
        modeText = "EXCLUSIVE";
        break;
    case AAUDIO_SHARING_MODE_LEGACY:
        modeText = "LEGACY";
        break;
    case AAUDIO_SHARING_MODE_SHARED:
        modeText = "SHARED";
        break;
    case AAUDIO_SHARING_MODE_PUBLIC_MIX:
        modeText = "PUBLIC_MIX";
        break;
    default:
        break;
    }
@@ -61,8 +55,7 @@ int main(int argc, char **argv)
    aaudio_audio_format_t actualDataFormat = AAUDIO_FORMAT_PCM16;

    const aaudio_sharing_mode_t requestedSharingMode = AAUDIO_SHARING_MODE_EXCLUSIVE;
    //const aaudio_sharing_mode_t requestedSharingMode = AAUDIO_SHARING_MODE_LEGACY;
    aaudio_sharing_mode_t actualSharingMode = AAUDIO_SHARING_MODE_LEGACY;
    aaudio_sharing_mode_t actualSharingMode = AAUDIO_SHARING_MODE_SHARED;

    AAudioStreamBuilder aaudioBuilder = AAUDIO_STREAM_BUILDER_NONE;
    AAudioStream aaudioStream = AAUDIO_STREAM_NONE;
+1 −1
Original line number Diff line number Diff line
@@ -29,7 +29,7 @@
#define NUM_SECONDS   10

#define SHARING_MODE  AAUDIO_SHARING_MODE_EXCLUSIVE
//#define SHARING_MODE  AAUDIO_SHARING_MODE_LEGACY
//#define SHARING_MODE  AAUDIO_SHARING_MODE_SHARED

// Prototype for a callback.
typedef int audio_callback_proc_t(float *outputBuffer,
+1 −12
Original line number Diff line number Diff line
@@ -124,13 +124,7 @@ typedef enum
    AAUDIO_STREAM_STATE_CLOSED,
} aaudio_stream_state_t;

// TODO review API
typedef enum {
    /**
     * This will use an AudioTrack object for playing audio
     * and an AudioRecord for recording data.
     */
    AAUDIO_SHARING_MODE_LEGACY,
    /**
     * This will be the only stream using a particular source or sink.
     * This mode will provide the lowest possible latency.
@@ -142,12 +136,7 @@ typedef enum {
     * This will have higher latency than the EXCLUSIVE mode.
     */
    AAUDIO_SHARING_MODE_SHARED,
    /**
     * Multiple applications will do their own mixing into a memory mapped buffer.
     * It may be possible for malicious applications to read the data produced by
     * other apps. So do not use this for private data such as telephony or messaging.
     */
    AAUDIO_SHARING_MODE_PUBLIC_MIX,

    AAUDIO_SHARING_MODE_COUNT // This should always be last.
} aaudio_sharing_mode_t;

+1 −1
Original line number Diff line number Diff line
@@ -257,7 +257,7 @@ private:
    aaudio_sample_rate_t   mSampleRate = AAUDIO_UNSPECIFIED;
    aaudio_stream_state_t  mState = AAUDIO_STREAM_STATE_UNINITIALIZED;
    aaudio_device_id_t     mDeviceId = AAUDIO_UNSPECIFIED;
    aaudio_sharing_mode_t  mSharingMode = AAUDIO_SHARING_MODE_LEGACY;
    aaudio_sharing_mode_t  mSharingMode = AAUDIO_SHARING_MODE_SHARED;
    aaudio_audio_format_t  mFormat = AAUDIO_FORMAT_UNSPECIFIED;
    aaudio_direction_t     mDirection = AAUDIO_DIRECTION_OUTPUT;

+2 −3
Original line number Diff line number Diff line
@@ -42,13 +42,12 @@ AudioStreamBuilder::~AudioStreamBuilder() {
}

aaudio_result_t AudioStreamBuilder::build(AudioStream** streamPtr) {
    // TODO Is there a better place to put the code that decides which class to use?
    AudioStream* audioStream = nullptr;
    const aaudio_sharing_mode_t sharingMode = getSharingMode();
    switch (getDirection()) {
    case AAUDIO_DIRECTION_INPUT:
        switch (sharingMode) {
            case AAUDIO_SHARING_MODE_LEGACY:
            case AAUDIO_SHARING_MODE_SHARED:
                audioStream = new(std::nothrow) AudioStreamRecord();
                break;
            default:
@@ -59,7 +58,7 @@ aaudio_result_t AudioStreamBuilder::build(AudioStream** streamPtr) {
        break;
    case AAUDIO_DIRECTION_OUTPUT:
        switch (sharingMode) {
            case AAUDIO_SHARING_MODE_LEGACY:
            case AAUDIO_SHARING_MODE_SHARED:
                audioStream = new(std::nothrow) AudioStreamTrack();
                break;
            case AAUDIO_SHARING_MODE_EXCLUSIVE:
Loading