void pulseaudio_module_unload(menu_info_item_t* mii) { assert(mii->menu_info->type == MENU_MODULE); pa_operation_unref(pa_context_unload_module(context, mii->index, pulseaudio_module_unload_success_cb, mii)); }
void AudioSinksManager::InternalAudioSink::stop_sink() { manager->logger->trace("(AudioSink '{}') Stopping sink", name); pa_operation* op = pa_context_unload_module(manager->context, module_idx, module_unload_callback, this); if (op) { pa_operation_unref(op); } else { manager->logger->error("(AudioSink '{}') Failed to start unloading module {}: {}", name, module_idx, manager->get_pa_error()); state = State::DEAD; manager->unregister_audio_sink(shared_from_this()); } }