Loading media/libaudioclient/IAudioFlinger.cpp +16 −12 Original line number Diff line number Diff line Loading @@ -493,12 +493,6 @@ status_t AudioFlingerClientAdapter::closeInput(audio_io_handle_t input) { return statusTFromBinderStatus(mDelegate->closeInput(inputAidl)); } status_t AudioFlingerClientAdapter::invalidateStream(audio_stream_type_t stream) { AudioStreamType streamAidl = VALUE_OR_RETURN_STATUS( legacy2aidl_audio_stream_type_t_AudioStreamType(stream)); return statusTFromBinderStatus(mDelegate->invalidateStream(streamAidl)); } status_t AudioFlingerClientAdapter::setVoiceVolume(float volume) { return statusTFromBinderStatus(mDelegate->setVoiceVolume(volume)); } Loading Loading @@ -858,6 +852,14 @@ status_t AudioFlingerClientAdapter::getSoundDoseInterface( return statusTFromBinderStatus(mDelegate->getSoundDoseInterface(callback, soundDose)); } status_t AudioFlingerClientAdapter::invalidateTracks( const std::vector<audio_port_handle_t>& portIds) { std::vector<int32_t> portIdsAidl = VALUE_OR_RETURN_STATUS( convertContainer<std::vector<int32_t>>( portIds, legacy2aidl_audio_port_handle_t_int32_t)); return statusTFromBinderStatus(mDelegate->invalidateTracks(portIdsAidl)); } //////////////////////////////////////////////////////////////////////////////////////////////////// // AudioFlingerServerAdapter AudioFlingerServerAdapter::AudioFlingerServerAdapter( Loading Loading @@ -1090,12 +1092,6 @@ Status AudioFlingerServerAdapter::closeInput(int32_t input) { return Status::fromStatusT(mDelegate->closeInput(inputLegacy)); } Status AudioFlingerServerAdapter::invalidateStream(AudioStreamType stream) { audio_stream_type_t streamLegacy = VALUE_OR_RETURN_BINDER( aidl2legacy_AudioStreamType_audio_stream_type_t(stream)); return Status::fromStatusT(mDelegate->invalidateStream(streamLegacy)); } Status AudioFlingerServerAdapter::setVoiceVolume(float volume) { return Status::fromStatusT(mDelegate->setVoiceVolume(volume)); } Loading Loading @@ -1385,4 +1381,12 @@ Status AudioFlingerServerAdapter::getSoundDoseInterface( return Status::fromStatusT(mDelegate->getSoundDoseInterface(callback, soundDose)); } Status AudioFlingerServerAdapter::invalidateTracks(const std::vector<int32_t>& portIds) { std::vector<audio_port_handle_t> portIdsLegacy = VALUE_OR_RETURN_BINDER( convertContainer<std::vector<audio_port_handle_t>>( portIds, aidl2legacy_int32_t_audio_port_handle_t)); RETURN_BINDER_IF_ERROR(mDelegate->invalidateTracks(portIdsLegacy)); return Status::ok(); } } // namespace android media/libaudioclient/aidl/android/media/IAudioFlingerService.aidl +5 −2 Original line number Diff line number Diff line Loading @@ -134,8 +134,6 @@ interface IAudioFlingerService { OpenInputResponse openInput(in OpenInputRequest request); void closeInput(int /* audio_io_handle_t */ input); void invalidateStream(AudioStreamType stream); void setVoiceVolume(float volume); RenderPosition getRenderPosition(int /* audio_io_handle_t */ output); Loading Loading @@ -254,6 +252,11 @@ interface IAudioFlingerService { */ ISoundDose getSoundDoseInterface(in ISoundDoseCallback callback); /** * Invalidate all tracks with given port ids. */ void invalidateTracks(in int[] /* audio_port_handle_t[] */ portIds); // When adding a new method, please review and update // IAudioFlinger.h AudioFlingerServerAdapter::Delegate::TransactionCode // AudioFlinger.cpp AudioFlinger::onTransactWrapper() Loading media/libaudioclient/fuzzer/audioflinger_fuzzer.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -584,7 +584,12 @@ void AudioFlingerFuzzer::invokeAudioSystem() { float balance = mFdp.ConsumeFloatingPoint<float>(); af->getMasterBalance(&balance); af->invalidateStream(static_cast<audio_stream_type_t>(mFdp.ConsumeIntegral<uint32_t>())); std::vector<audio_port_handle_t> tracks; for (int i = 0; i < mFdp.ConsumeIntegralInRange<int32_t>(0, MAX_ARRAY_LENGTH); ++i) { tracks.push_back(static_cast<audio_port_handle_t>(mFdp.ConsumeIntegral<int32_t>())); } af->invalidateTracks(tracks); } status_t AudioFlingerFuzzer::invokeAudioInputDevice() { Loading media/libaudioclient/include/media/AudioCommonTypes.h +1 −0 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ const product_strategy_t PRODUCT_STRATEGY_NONE = static_cast<product_strategy_t> using AttributesVector = std::vector<audio_attributes_t>; using StreamTypeVector = std::vector<audio_stream_type_t>; using PortHandleVector = std::vector<audio_port_handle_t>; using TrackSecondaryOutputsMap = std::map<audio_port_handle_t, std::vector<audio_io_handle_t>>; Loading media/libaudioclient/include/media/IAudioFlinger.h +5 −5 Original line number Diff line number Diff line Loading @@ -268,8 +268,6 @@ public: virtual status_t closeInput(audio_io_handle_t input) = 0; virtual status_t invalidateStream(audio_stream_type_t stream) = 0; virtual status_t setVoiceVolume(float volume) = 0; virtual status_t getRenderPosition(uint32_t *halFrames, uint32_t *dspFrames, Loading Loading @@ -374,6 +372,8 @@ public: virtual status_t getSoundDoseInterface(const sp<media::ISoundDoseCallback>& callback, sp<media::ISoundDose>* soundDose) = 0; virtual status_t invalidateTracks(const std::vector<audio_port_handle_t>& portIds) = 0; }; /** Loading Loading @@ -428,7 +428,6 @@ public: status_t openInput(const media::OpenInputRequest& request, media::OpenInputResponse* response) override; status_t closeInput(audio_io_handle_t input) override; status_t invalidateStream(audio_stream_type_t stream) override; status_t setVoiceVolume(float volume) override; status_t getRenderPosition(uint32_t* halFrames, uint32_t* dspFrames, audio_io_handle_t output) const override; Loading Loading @@ -482,6 +481,7 @@ public: audio_io_handle_t output, std::vector<audio_latency_mode_t>* modes) override; status_t getSoundDoseInterface(const sp<media::ISoundDoseCallback>& callback, sp<media::ISoundDose>* soundDose) override; status_t invalidateTracks(const std::vector<audio_port_handle_t>& portIds) override; private: const sp<media::IAudioFlingerService> mDelegate; Loading Loading @@ -535,7 +535,6 @@ public: RESTORE_OUTPUT = media::BnAudioFlingerService::TRANSACTION_restoreOutput, OPEN_INPUT = media::BnAudioFlingerService::TRANSACTION_openInput, CLOSE_INPUT = media::BnAudioFlingerService::TRANSACTION_closeInput, INVALIDATE_STREAM = media::BnAudioFlingerService::TRANSACTION_invalidateStream, SET_VOICE_VOLUME = media::BnAudioFlingerService::TRANSACTION_setVoiceVolume, GET_RENDER_POSITION = media::BnAudioFlingerService::TRANSACTION_getRenderPosition, GET_INPUT_FRAMES_LOST = media::BnAudioFlingerService::TRANSACTION_getInputFramesLost, Loading Loading @@ -574,6 +573,7 @@ public: SET_REQUESTED_LATENCY_MODE = media::BnAudioFlingerService::TRANSACTION_setRequestedLatencyMode, GET_SUPPORTED_LATENCY_MODES = media::BnAudioFlingerService::TRANSACTION_getSupportedLatencyModes, GET_SOUND_DOSE_INTERFACE = media::BnAudioFlingerService::TRANSACTION_getSoundDoseInterface, INVALIDATE_TRACKS = media::BnAudioFlingerService::TRANSACTION_invalidateTracks, }; protected: Loading Loading @@ -653,7 +653,6 @@ public: Status openInput(const media::OpenInputRequest& request, media::OpenInputResponse* _aidl_return) override; Status closeInput(int32_t input) override; Status invalidateStream(media::audio::common::AudioStreamType stream) override; Status setVoiceVolume(float volume) override; Status getRenderPosition(int32_t output, media::RenderPosition* _aidl_return) override; Status getInputFramesLost(int32_t ioHandle, int32_t* _aidl_return) override; Loading Loading @@ -700,6 +699,7 @@ public: std::vector<media::LatencyMode>* _aidl_return) override; Status getSoundDoseInterface(const sp<media::ISoundDoseCallback>& callback, sp<media::ISoundDose>* _aidl_return) override; Status invalidateTracks(const std::vector<int32_t>& portIds) override; private: const sp<AudioFlingerServerAdapter::Delegate> mDelegate; }; Loading Loading
media/libaudioclient/IAudioFlinger.cpp +16 −12 Original line number Diff line number Diff line Loading @@ -493,12 +493,6 @@ status_t AudioFlingerClientAdapter::closeInput(audio_io_handle_t input) { return statusTFromBinderStatus(mDelegate->closeInput(inputAidl)); } status_t AudioFlingerClientAdapter::invalidateStream(audio_stream_type_t stream) { AudioStreamType streamAidl = VALUE_OR_RETURN_STATUS( legacy2aidl_audio_stream_type_t_AudioStreamType(stream)); return statusTFromBinderStatus(mDelegate->invalidateStream(streamAidl)); } status_t AudioFlingerClientAdapter::setVoiceVolume(float volume) { return statusTFromBinderStatus(mDelegate->setVoiceVolume(volume)); } Loading Loading @@ -858,6 +852,14 @@ status_t AudioFlingerClientAdapter::getSoundDoseInterface( return statusTFromBinderStatus(mDelegate->getSoundDoseInterface(callback, soundDose)); } status_t AudioFlingerClientAdapter::invalidateTracks( const std::vector<audio_port_handle_t>& portIds) { std::vector<int32_t> portIdsAidl = VALUE_OR_RETURN_STATUS( convertContainer<std::vector<int32_t>>( portIds, legacy2aidl_audio_port_handle_t_int32_t)); return statusTFromBinderStatus(mDelegate->invalidateTracks(portIdsAidl)); } //////////////////////////////////////////////////////////////////////////////////////////////////// // AudioFlingerServerAdapter AudioFlingerServerAdapter::AudioFlingerServerAdapter( Loading Loading @@ -1090,12 +1092,6 @@ Status AudioFlingerServerAdapter::closeInput(int32_t input) { return Status::fromStatusT(mDelegate->closeInput(inputLegacy)); } Status AudioFlingerServerAdapter::invalidateStream(AudioStreamType stream) { audio_stream_type_t streamLegacy = VALUE_OR_RETURN_BINDER( aidl2legacy_AudioStreamType_audio_stream_type_t(stream)); return Status::fromStatusT(mDelegate->invalidateStream(streamLegacy)); } Status AudioFlingerServerAdapter::setVoiceVolume(float volume) { return Status::fromStatusT(mDelegate->setVoiceVolume(volume)); } Loading Loading @@ -1385,4 +1381,12 @@ Status AudioFlingerServerAdapter::getSoundDoseInterface( return Status::fromStatusT(mDelegate->getSoundDoseInterface(callback, soundDose)); } Status AudioFlingerServerAdapter::invalidateTracks(const std::vector<int32_t>& portIds) { std::vector<audio_port_handle_t> portIdsLegacy = VALUE_OR_RETURN_BINDER( convertContainer<std::vector<audio_port_handle_t>>( portIds, aidl2legacy_int32_t_audio_port_handle_t)); RETURN_BINDER_IF_ERROR(mDelegate->invalidateTracks(portIdsLegacy)); return Status::ok(); } } // namespace android
media/libaudioclient/aidl/android/media/IAudioFlingerService.aidl +5 −2 Original line number Diff line number Diff line Loading @@ -134,8 +134,6 @@ interface IAudioFlingerService { OpenInputResponse openInput(in OpenInputRequest request); void closeInput(int /* audio_io_handle_t */ input); void invalidateStream(AudioStreamType stream); void setVoiceVolume(float volume); RenderPosition getRenderPosition(int /* audio_io_handle_t */ output); Loading Loading @@ -254,6 +252,11 @@ interface IAudioFlingerService { */ ISoundDose getSoundDoseInterface(in ISoundDoseCallback callback); /** * Invalidate all tracks with given port ids. */ void invalidateTracks(in int[] /* audio_port_handle_t[] */ portIds); // When adding a new method, please review and update // IAudioFlinger.h AudioFlingerServerAdapter::Delegate::TransactionCode // AudioFlinger.cpp AudioFlinger::onTransactWrapper() Loading
media/libaudioclient/fuzzer/audioflinger_fuzzer.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -584,7 +584,12 @@ void AudioFlingerFuzzer::invokeAudioSystem() { float balance = mFdp.ConsumeFloatingPoint<float>(); af->getMasterBalance(&balance); af->invalidateStream(static_cast<audio_stream_type_t>(mFdp.ConsumeIntegral<uint32_t>())); std::vector<audio_port_handle_t> tracks; for (int i = 0; i < mFdp.ConsumeIntegralInRange<int32_t>(0, MAX_ARRAY_LENGTH); ++i) { tracks.push_back(static_cast<audio_port_handle_t>(mFdp.ConsumeIntegral<int32_t>())); } af->invalidateTracks(tracks); } status_t AudioFlingerFuzzer::invokeAudioInputDevice() { Loading
media/libaudioclient/include/media/AudioCommonTypes.h +1 −0 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ const product_strategy_t PRODUCT_STRATEGY_NONE = static_cast<product_strategy_t> using AttributesVector = std::vector<audio_attributes_t>; using StreamTypeVector = std::vector<audio_stream_type_t>; using PortHandleVector = std::vector<audio_port_handle_t>; using TrackSecondaryOutputsMap = std::map<audio_port_handle_t, std::vector<audio_io_handle_t>>; Loading
media/libaudioclient/include/media/IAudioFlinger.h +5 −5 Original line number Diff line number Diff line Loading @@ -268,8 +268,6 @@ public: virtual status_t closeInput(audio_io_handle_t input) = 0; virtual status_t invalidateStream(audio_stream_type_t stream) = 0; virtual status_t setVoiceVolume(float volume) = 0; virtual status_t getRenderPosition(uint32_t *halFrames, uint32_t *dspFrames, Loading Loading @@ -374,6 +372,8 @@ public: virtual status_t getSoundDoseInterface(const sp<media::ISoundDoseCallback>& callback, sp<media::ISoundDose>* soundDose) = 0; virtual status_t invalidateTracks(const std::vector<audio_port_handle_t>& portIds) = 0; }; /** Loading Loading @@ -428,7 +428,6 @@ public: status_t openInput(const media::OpenInputRequest& request, media::OpenInputResponse* response) override; status_t closeInput(audio_io_handle_t input) override; status_t invalidateStream(audio_stream_type_t stream) override; status_t setVoiceVolume(float volume) override; status_t getRenderPosition(uint32_t* halFrames, uint32_t* dspFrames, audio_io_handle_t output) const override; Loading Loading @@ -482,6 +481,7 @@ public: audio_io_handle_t output, std::vector<audio_latency_mode_t>* modes) override; status_t getSoundDoseInterface(const sp<media::ISoundDoseCallback>& callback, sp<media::ISoundDose>* soundDose) override; status_t invalidateTracks(const std::vector<audio_port_handle_t>& portIds) override; private: const sp<media::IAudioFlingerService> mDelegate; Loading Loading @@ -535,7 +535,6 @@ public: RESTORE_OUTPUT = media::BnAudioFlingerService::TRANSACTION_restoreOutput, OPEN_INPUT = media::BnAudioFlingerService::TRANSACTION_openInput, CLOSE_INPUT = media::BnAudioFlingerService::TRANSACTION_closeInput, INVALIDATE_STREAM = media::BnAudioFlingerService::TRANSACTION_invalidateStream, SET_VOICE_VOLUME = media::BnAudioFlingerService::TRANSACTION_setVoiceVolume, GET_RENDER_POSITION = media::BnAudioFlingerService::TRANSACTION_getRenderPosition, GET_INPUT_FRAMES_LOST = media::BnAudioFlingerService::TRANSACTION_getInputFramesLost, Loading Loading @@ -574,6 +573,7 @@ public: SET_REQUESTED_LATENCY_MODE = media::BnAudioFlingerService::TRANSACTION_setRequestedLatencyMode, GET_SUPPORTED_LATENCY_MODES = media::BnAudioFlingerService::TRANSACTION_getSupportedLatencyModes, GET_SOUND_DOSE_INTERFACE = media::BnAudioFlingerService::TRANSACTION_getSoundDoseInterface, INVALIDATE_TRACKS = media::BnAudioFlingerService::TRANSACTION_invalidateTracks, }; protected: Loading Loading @@ -653,7 +653,6 @@ public: Status openInput(const media::OpenInputRequest& request, media::OpenInputResponse* _aidl_return) override; Status closeInput(int32_t input) override; Status invalidateStream(media::audio::common::AudioStreamType stream) override; Status setVoiceVolume(float volume) override; Status getRenderPosition(int32_t output, media::RenderPosition* _aidl_return) override; Status getInputFramesLost(int32_t ioHandle, int32_t* _aidl_return) override; Loading Loading @@ -700,6 +699,7 @@ public: std::vector<media::LatencyMode>* _aidl_return) override; Status getSoundDoseInterface(const sp<media::ISoundDoseCallback>& callback, sp<media::ISoundDose>* _aidl_return) override; Status invalidateTracks(const std::vector<int32_t>& portIds) override; private: const sp<AudioFlingerServerAdapter::Delegate> mDelegate; }; Loading