Change event callback for audio jack connection state

Detects if connection of audio jack port state changed. Using runtime information change system feature.
#include <runtime_info.h>
#include <dlog.h> // for logging purposes

void
audio_jack_connection_cb(runtime_info_key_e key, void *user_data) {
	int value;

	if(key != RUNTIME_INFO_KEY_AUDIO_JACK_STATUS)
		return;

	if(runtime_info_get_value_int(key, &value) == RUNTIME_INFO_ERROR_NONE) {

		if(value != RUNTIME_INFO_AUDIO_JACK_STATUS_UNCONNECTED)
			LOGI("Audio jack connected");
		else
			LOGI("Audio jack disconnected");
	}
}

void
audio_jack_status_changed() {
	int ret;

	ret = runtime_info_set_changed_cb(RUNTIME_INFO_KEY_AUDIO_JACK_STATUS, audio_jack_connection_cb, NULL);

	if(ret != RUNTIME_INFO_ERROR_NONE)
		LOGE("Error occurred");
}

Responses

0 Replies