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

Commit b3b1660e authored by Glenn Kasten's avatar Glenn Kasten
Browse files

Add audio_input_flags_t to IAudioPolicyService::getInput

Change-Id: I9f37be05f8dc7b85a8827a94e76ca0f45453e170
parent ec40d284
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -234,7 +234,8 @@ public:
                                    uint32_t samplingRate,
                                    audio_format_t format,
                                    audio_channel_mask_t channelMask,
                                    int sessionId);
                                    int sessionId,
                                    audio_input_flags_t);

    static status_t startInput(audio_io_handle_t input);
    static status_t stopInput(audio_io_handle_t input);
+5 −4
Original line number Diff line number Diff line
@@ -70,10 +70,11 @@ public:
                                int session = 0) = 0;
    virtual void releaseOutput(audio_io_handle_t output) = 0;
    virtual audio_io_handle_t getInput(audio_source_t inputSource,
                                    uint32_t samplingRate = 0,
                                    audio_format_t format = AUDIO_FORMAT_DEFAULT,
                                    audio_channel_mask_t channelMask = 0,
                                    int audioSession = 0) = 0;
                                    uint32_t samplingRate,
                                    audio_format_t format,
                                    audio_channel_mask_t channelMask,
                                    int audioSession,
                                    audio_input_flags_t flags) = 0;
    virtual status_t startInput(audio_io_handle_t input) = 0;
    virtual status_t stopInput(audio_io_handle_t input) = 0;
    virtual void releaseInput(audio_io_handle_t input) = 0;
+3 −3
Original line number Diff line number Diff line
@@ -481,11 +481,11 @@ status_t AudioRecord::openRecord_l(size_t epoch)
    }

    audio_io_handle_t input = AudioSystem::getInput(mInputSource, mSampleRate, mFormat,
            mChannelMask, mSessionId);
            mChannelMask, mSessionId, mFlags);
    if (input == AUDIO_IO_HANDLE_NONE) {
        ALOGE("Could not get audio input for record source %d, sample rate %u, format %#x, "
              "channel mask %#x, session %d",
              mInputSource, mSampleRate, mFormat, mChannelMask, mSessionId);
              "channel mask %#x, session %d, flags %#x",
              mInputSource, mSampleRate, mFormat, mChannelMask, mSessionId, mFlags);
        return BAD_VALUE;
    }
    {
+3 −2
Original line number Diff line number Diff line
@@ -688,11 +688,12 @@ audio_io_handle_t AudioSystem::getInput(audio_source_t inputSource,
                                    uint32_t samplingRate,
                                    audio_format_t format,
                                    audio_channel_mask_t channelMask,
                                    int sessionId)
                                    int sessionId,
                                    audio_input_flags_t flags)
{
    const sp<IAudioPolicyService>& aps = AudioSystem::get_audio_policy_service();
    if (aps == 0) return 0;
    return aps->getInput(inputSource, samplingRate, format, channelMask, sessionId);
    return aps->getInput(inputSource, samplingRate, format, channelMask, sessionId, flags);
}

status_t AudioSystem::startInput(audio_io_handle_t input)
+6 −2
Original line number Diff line number Diff line
@@ -225,7 +225,8 @@ public:
                                    uint32_t samplingRate,
                                    audio_format_t format,
                                    audio_channel_mask_t channelMask,
                                    int audioSession)
                                    int audioSession,
                                    audio_input_flags_t flags)
    {
        Parcel data, reply;
        data.writeInterfaceToken(IAudioPolicyService::getInterfaceDescriptor());
@@ -234,6 +235,7 @@ public:
        data.writeInt32(static_cast <uint32_t>(format));
        data.writeInt32(channelMask);
        data.writeInt32(audioSession);
        data.writeInt32(flags);
        remote()->transact(GET_INPUT, data, &reply);
        return static_cast <audio_io_handle_t> (reply.readInt32());
    }
@@ -707,11 +709,13 @@ status_t BnAudioPolicyService::onTransact(
            audio_format_t format = (audio_format_t) data.readInt32();
            audio_channel_mask_t channelMask = data.readInt32();
            int audioSession = data.readInt32();
            audio_input_flags_t flags = (audio_input_flags_t) data.readInt32();
            audio_io_handle_t input = getInput(inputSource,
                                               samplingRate,
                                               format,
                                               channelMask,
                                               audioSession);
                                               audioSession,
                                               flags);
            reply->writeInt32(static_cast <int>(input));
            return NO_ERROR;
        } break;
Loading