diff options
Diffstat (limited to 'services/audioflinger/AudioPolicyService.cpp')
-rw-r--r-- | services/audioflinger/AudioPolicyService.cpp | 107 |
1 files changed, 60 insertions, 47 deletions
diff --git a/services/audioflinger/AudioPolicyService.cpp b/services/audioflinger/AudioPolicyService.cpp index 646a317..9980344 100644 --- a/services/audioflinger/AudioPolicyService.cpp +++ b/services/audioflinger/AudioPolicyService.cpp @@ -60,7 +60,7 @@ namespace { // ---------------------------------------------------------------------------- AudioPolicyService::AudioPolicyService() - : BnAudioPolicyService() , mpAudioPolicyDev(NULL) , mpAudioPolicy(NULL) + : BnAudioPolicyService(), mpAudioPolicyDev(NULL), mpAudioPolicy(NULL) { char value[PROPERTY_VALUE_MAX]; const struct hw_module_t *module; @@ -77,24 +77,28 @@ AudioPolicyService::AudioPolicyService() mOutputCommandThread = new AudioCommandThread(String8("ApmOutput"), this); /* instantiate the audio policy manager */ rc = hw_get_module(AUDIO_POLICY_HARDWARE_MODULE_ID, &module); - if (rc) + if (rc) { return; + } rc = audio_policy_dev_open(module, &mpAudioPolicyDev); ALOGE_IF(rc, "couldn't open audio policy device (%s)", strerror(-rc)); - if (rc) + if (rc) { return; + } rc = mpAudioPolicyDev->create_audio_policy(mpAudioPolicyDev, &aps_ops, this, &mpAudioPolicy); ALOGE_IF(rc, "couldn't create audio policy (%s)", strerror(-rc)); - if (rc) + if (rc) { return; + } rc = mpAudioPolicy->init_check(mpAudioPolicy); ALOGE_IF(rc, "couldn't init_check the audio policy (%s)", strerror(-rc)); - if (rc) + if (rc) { return; + } ALOGI("Loaded audio policy from %s (%s)", module->name, module->id); @@ -126,10 +130,12 @@ AudioPolicyService::~AudioPolicyService() } mInputs.clear(); - if (mpAudioPolicy != NULL && mpAudioPolicyDev != NULL) + if (mpAudioPolicy != NULL && mpAudioPolicyDev != NULL) { mpAudioPolicyDev->destroy_audio_policy(mpAudioPolicyDev, mpAudioPolicy); - if (mpAudioPolicyDev != NULL) + } + if (mpAudioPolicyDev != NULL) { audio_policy_dev_close(mpAudioPolicyDev); + } } status_t AudioPolicyService::setDeviceConnectionState(audio_devices_t device, @@ -469,8 +475,9 @@ audio_devices_t AudioPolicyService::getDevicesForStream(audio_stream_type_t stre audio_io_handle_t AudioPolicyService::getOutputForEffect(const effect_descriptor_t *desc) { + // FIXME change return type to status_t, and return NO_INIT here if (mpAudioPolicy == NULL) { - return NO_INIT; + return 0; } Mutex::Autolock _l(mLock); return mpAudioPolicy->get_output_for_effect(mpAudioPolicy, desc); @@ -606,7 +613,7 @@ status_t AudioPolicyService::dumpInternals(int fd) return NO_ERROR; } -status_t AudioPolicyService::dump(int fd, const Vector<String16>& args) +status_t AudioPolicyService::dump(int fd, const Vector<String16>& args __unused) { if (!dumpAllowed()) { dumpPermissionDenial(fd); @@ -1114,11 +1121,13 @@ int AudioPolicyService::setStreamVolume(audio_stream_type_t stream, int AudioPolicyService::startTone(audio_policy_tone_t tone, audio_stream_type_t stream) { - if (tone != AUDIO_POLICY_TONE_IN_CALL_NOTIFICATION) + if (tone != AUDIO_POLICY_TONE_IN_CALL_NOTIFICATION) { ALOGE("startTone: illegal tone requested (%d)", tone); - if (stream != AUDIO_STREAM_VOICE_CALL) + } + if (stream != AUDIO_STREAM_VOICE_CALL) { ALOGE("startTone: illegal stream (%d) requested for tone %d", stream, tone); + } mTonePlaybackThread->startToneCommand(ToneGenerator::TONE_SUP_CALL_WAITING, AUDIO_STREAM_VOICE_CALL); return 0; @@ -1452,7 +1461,7 @@ status_t AudioPolicyService::loadPreProcessorConfig(const char *path) extern "C" { -static audio_module_handle_t aps_load_hw_module(void *service, +static audio_module_handle_t aps_load_hw_module(void *service __unused, const char *name) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); @@ -1465,7 +1474,7 @@ static audio_module_handle_t aps_load_hw_module(void *service, } // deprecated: replaced by aps_open_output_on_module() -static audio_io_handle_t aps_open_output(void *service, +static audio_io_handle_t aps_open_output(void *service __unused, audio_devices_t *pDevices, uint32_t *pSamplingRate, audio_format_t *pFormat, @@ -1483,7 +1492,7 @@ static audio_io_handle_t aps_open_output(void *service, pLatencyMs, flags); } -static audio_io_handle_t aps_open_output_on_module(void *service, +static audio_io_handle_t aps_open_output_on_module(void *service __unused, audio_module_handle_t module, audio_devices_t *pDevices, uint32_t *pSamplingRate, @@ -1502,7 +1511,7 @@ static audio_io_handle_t aps_open_output_on_module(void *service, pLatencyMs, flags, offloadInfo); } -static audio_io_handle_t aps_open_dup_output(void *service, +static audio_io_handle_t aps_open_dup_output(void *service __unused, audio_io_handle_t output1, audio_io_handle_t output2) { @@ -1514,16 +1523,17 @@ static audio_io_handle_t aps_open_dup_output(void *service, return af->openDuplicateOutput(output1, output2); } -static int aps_close_output(void *service, audio_io_handle_t output) +static int aps_close_output(void *service __unused, audio_io_handle_t output) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); - if (af == 0) + if (af == 0) { return PERMISSION_DENIED; + } return af->closeOutput(output); } -static int aps_suspend_output(void *service, audio_io_handle_t output) +static int aps_suspend_output(void *service __unused, audio_io_handle_t output) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); if (af == 0) { @@ -1534,7 +1544,7 @@ static int aps_suspend_output(void *service, audio_io_handle_t output) return af->suspendOutput(output); } -static int aps_restore_output(void *service, audio_io_handle_t output) +static int aps_restore_output(void *service __unused, audio_io_handle_t output) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); if (af == 0) { @@ -1546,12 +1556,12 @@ static int aps_restore_output(void *service, audio_io_handle_t output) } // deprecated: replaced by aps_open_input_on_module(), and acoustics parameter is ignored -static audio_io_handle_t aps_open_input(void *service, +static audio_io_handle_t aps_open_input(void *service __unused, audio_devices_t *pDevices, uint32_t *pSamplingRate, audio_format_t *pFormat, audio_channel_mask_t *pChannelMask, - audio_in_acoustics_t acoustics) + audio_in_acoustics_t acoustics __unused) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); if (af == 0) { @@ -1562,7 +1572,7 @@ static audio_io_handle_t aps_open_input(void *service, return af->openInput((audio_module_handle_t)0, pDevices, pSamplingRate, pFormat, pChannelMask); } -static audio_io_handle_t aps_open_input_on_module(void *service, +static audio_io_handle_t aps_open_input_on_module(void *service __unused, audio_module_handle_t module, audio_devices_t *pDevices, uint32_t *pSamplingRate, @@ -1578,37 +1588,40 @@ static audio_io_handle_t aps_open_input_on_module(void *service, return af->openInput(module, pDevices, pSamplingRate, pFormat, pChannelMask); } -static int aps_close_input(void *service, audio_io_handle_t input) +static int aps_close_input(void *service __unused, audio_io_handle_t input) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); - if (af == 0) + if (af == 0) { return PERMISSION_DENIED; + } return af->closeInput(input); } -static int aps_set_stream_output(void *service, audio_stream_type_t stream, +static int aps_set_stream_output(void *service __unused, audio_stream_type_t stream, audio_io_handle_t output) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); - if (af == 0) + if (af == 0) { return PERMISSION_DENIED; + } return af->setStreamOutput(stream, output); } -static int aps_move_effects(void *service, int session, +static int aps_move_effects(void *service __unused, int session, audio_io_handle_t src_output, audio_io_handle_t dst_output) { sp<IAudioFlinger> af = AudioSystem::get_audio_flinger(); - if (af == 0) + if (af == 0) { return PERMISSION_DENIED; + } return af->moveEffects(session, src_output, dst_output); } -static char * aps_get_parameters(void *service, audio_io_handle_t io_handle, +static char * aps_get_parameters(void *service __unused, audio_io_handle_t io_handle, const char *keys) { String8 result = AudioSystem::getParameters(io_handle, String8(keys)); @@ -1659,24 +1672,24 @@ static int aps_set_voice_volume(void *service, float volume, int delay_ms) namespace { struct audio_policy_service_ops aps_ops = { - open_output : aps_open_output, - open_duplicate_output : aps_open_dup_output, - close_output : aps_close_output, - suspend_output : aps_suspend_output, - restore_output : aps_restore_output, - open_input : aps_open_input, - close_input : aps_close_input, - set_stream_volume : aps_set_stream_volume, - set_stream_output : aps_set_stream_output, - set_parameters : aps_set_parameters, - get_parameters : aps_get_parameters, - start_tone : aps_start_tone, - stop_tone : aps_stop_tone, - set_voice_volume : aps_set_voice_volume, - move_effects : aps_move_effects, - load_hw_module : aps_load_hw_module, - open_output_on_module : aps_open_output_on_module, - open_input_on_module : aps_open_input_on_module, + .open_output = aps_open_output, + .open_duplicate_output = aps_open_dup_output, + .close_output = aps_close_output, + .suspend_output = aps_suspend_output, + .restore_output = aps_restore_output, + .open_input = aps_open_input, + .close_input = aps_close_input, + .set_stream_volume = aps_set_stream_volume, + .set_stream_output = aps_set_stream_output, + .set_parameters = aps_set_parameters, + .get_parameters = aps_get_parameters, + .start_tone = aps_start_tone, + .stop_tone = aps_stop_tone, + .set_voice_volume = aps_set_voice_volume, + .move_effects = aps_move_effects, + .load_hw_module = aps_load_hw_module, + .open_output_on_module = aps_open_output_on_module, + .open_input_on_module = aps_open_input_on_module, }; }; // namespace <unnamed> |