From 4d0bcfb647d3a22df51a1c15df105db69a3bf2d5 Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Sun, 9 Nov 2014 20:18:46 +0100 Subject: [PATCH] Code cleanups --- nocturn.c | 4 +-- pulse-ucw.c | 2 -- pulse.c | 8 ++--- ursaryd.c | 94 +++++++++++++++++++++++++++-------------------------- ursaryd.h | 2 ++ 5 files changed, 56 insertions(+), 54 deletions(-) diff --git a/nocturn.c b/nocturn.c index 2e93f5c..f8665ed 100644 --- a/nocturn.c +++ b/nocturn.c @@ -351,7 +351,7 @@ static void noct_connect(struct main_timer *t) desc.idVendor == 0x1235 && desc.idProduct == 0x000a) { - msg(L_DEBUG, "Found device: bus %d, addr %d", libusb_get_bus_number(dev), libusb_get_device_address(dev)); + msg(L_INFO, "Nocturn found at bus %d, addr %d", libusb_get_bus_number(dev), libusb_get_device_address(dev)); if (found_dev) { msg(L_ERROR, "Multiple Nocturn devices found. Using the first one."); @@ -369,7 +369,7 @@ static void noct_connect(struct main_timer *t) return; } - msg(L_DEBUG, "Initializing Nocturn"); + DBG("Initializing Nocturn"); if ((err = libusb_open(found_dev, &usb_dev)) < 0) return noct_error(err, "libusb_open failed"); diff --git a/pulse-ucw.c b/pulse-ucw.c index 3ccb70d..4ef032c 100644 --- a/pulse-ucw.c +++ b/pulse-ucw.c @@ -13,8 +13,6 @@ #include #include -#include - #include "ursaryd.h" struct pmain_io { diff --git a/pulse.c b/pulse.c index a22021f..08f51be 100644 --- a/pulse.c +++ b/pulse.c @@ -4,7 +4,7 @@ * (c) 2014 Martin Mares */ -#define LOCAL_DEBUG +#undef LOCAL_DEBUG #include #include @@ -15,8 +15,6 @@ #include #include -#include - #include "ursaryd.h" enum pulse_state pulse_state; @@ -125,6 +123,7 @@ static void pulse_sink_input_cb(pa_context *ctx UNUSED, const pa_sink_input_info if (op->is_init) { PULSE_STATE(PS_ONLINE); + msg(L_INFO, "PulseAudio is ready"); schedule_update(); } pulse_op_done(op); @@ -356,6 +355,7 @@ static void pulse_state_cb(pa_context *ctx, void *userdata UNUSED) { if (pulse_state != PS_OFFLINE) { + msg(L_INFO, "Lost connection to PulseAudio"); PULSE_STATE(PS_OFFLINE); pulse_op_cancel_all(); pulse_shutdown(); @@ -368,7 +368,7 @@ static void pulse_state_cb(pa_context *ctx, void *userdata UNUSED) static void pulse_connect(struct main_timer *t) { - DBG("Pulse: Connecting"); + msg(L_DEBUG, "Connecting to PulseAudio"); timer_del(t); clist_init(&pulse_op_list); diff --git a/ursaryd.c b/ursaryd.c index 7f9d00c..c8a87a2 100644 --- a/ursaryd.c +++ b/ursaryd.c @@ -15,13 +15,9 @@ #include #include -#include - #include "ursaryd.h" -/*** High-level logic ***/ - -static struct main_timer update_timer; +/*** Sink controls ***/ static double volume_from_pa(pa_volume_t vol) { @@ -72,6 +68,21 @@ static void update_sink_from_rotary(int delta, const char *sink_name) pulse_sink_set_volume(s->idx, &cvol); } +static void update_sink_mute_from_button(int on, const char *sink_name) +{ + if (!on) + return; + + struct pulse_sink *s = pulse_sink_by_name(sink_name); + if (!s) + return; + + DBG("## Setting mute of sink %s to %d", s->name, !s->mute); + pulse_sink_set_mute(s->idx, !s->mute); +} + +/*** Client controls ***/ + struct client_map { int rotary; const char *client; @@ -189,6 +200,35 @@ static void update_client_from_rotary(int rotary, int delta) } } +static void update_client_from_button(int button, int on) +{ + if (button >= 8 || !on) + return; + + int i = find_client_by_rotary(button); + if (i < 0) + return; + struct client_state *cs = &client_state[i]; + + calc_clients(); + if (!cs->have_muted[0] && !cs->have_muted[1]) + return; + uns mute = !cs->have_muted[1]; + + CLIST_FOR_EACH(struct pulse_sink_input *, s, pulse_sink_input_list) + { + if (s->noct_client_idx == i) + { + DBG("@@ Client #%d, sink input #%d: setting mute=%u", s->client_idx, s->idx, mute); + pulse_sink_input_set_mute(s->idx, mute); + } + } +} + +/*** Main update routines ***/ + +static struct main_timer update_timer; + static void do_update(struct main_timer *t) { timer_del(t); @@ -260,44 +300,6 @@ void notify_rotary(int rotary, int delta) } } -static void update_sink_mute_from_button(int on, const char *sink_name) -{ - if (!on) - return; - - struct pulse_sink *s = pulse_sink_by_name(sink_name); - if (!s) - return; - - DBG("## Setting mute of sink %s to %d", s->name, !s->mute); - pulse_sink_set_mute(s->idx, !s->mute); -} - -static void update_client_from_button(int button, int on) -{ - if (button >= 8 || !on) - return; - - int i = find_client_by_rotary(button); - if (i < 0) - return; - struct client_state *cs = &client_state[i]; - - calc_clients(); - if (!cs->have_muted[0] && !cs->have_muted[1]) - return; - uns mute = !cs->have_muted[1]; - - CLIST_FOR_EACH(struct pulse_sink_input *, s, pulse_sink_input_list) - { - if (s->noct_client_idx == i) - { - DBG("@@ Client #%d, sink input #%d: setting mute=%u", s->client_idx, s->idx, mute); - pulse_sink_input_set_mute(s->idx, mute); - } - } -} - void notify_button(int button, int on) { if (pulse_state != PS_ONLINE) @@ -319,6 +321,8 @@ void notify_button(int button, int on) } } +/*** Main entry point ***/ + int main(int argc UNUSED, char **argv) { log_init(argv[0]); @@ -326,11 +330,9 @@ int main(int argc UNUSED, char **argv) update_timer.handler = do_update; noct_init(); - - msg(L_INFO, "Initializing PulseAudio"); pulse_init(); - msg(L_INFO, "Entering main loop"); + msg(L_DEBUG, "Entering main loop"); main_loop(); return 0; diff --git a/ursaryd.h b/ursaryd.h index 46ec097..8fa213a 100644 --- a/ursaryd.h +++ b/ursaryd.h @@ -4,6 +4,8 @@ * (c) 2014 Martin Mares */ +#include + /* ursary.c */ void schedule_update(void); -- 2.39.2