From: Martin Mares Date: Sun, 9 Nov 2014 17:03:54 +0000 (+0100) Subject: Ursary: FIXMEs X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=c87c05d4beb1ef7d0ad2c8c1c50b8880f031f429;p=misc.git Ursary: FIXMEs --- diff --git a/ursaryd/nocturn.c b/ursaryd/nocturn.c index 96044e9..d38fa2a 100644 --- a/ursaryd/nocturn.c +++ b/ursaryd/nocturn.c @@ -325,12 +325,6 @@ static void noct_write_init(void) noct_write_xfer = libusb_alloc_transfer(0); libusb_fill_interrupt_transfer(noct_write_xfer, usb_dev, 0x02, xmalloc(8), 0, noct_write_done, NULL, 1000); -#if 0 // FIXME - noct_button_state[2] = 1; - noct_ring_mode[0] = 4; - noct_ring_val[0] = 0x40; -#endif - noct_dirty_button = 0xffff; noct_dirty_ring_mode = 0xff; noct_dirty_ring_val = 0x1ff; @@ -397,12 +391,6 @@ static void noct_connect(struct main_timer *t) return noct_error(err, stk_printf("Partial send of init packet (%d < %d)", done, noct_magic[i][0])); } -#if 0 - byte xxx[] = { 0x7f, 0x01 }; - int done; - libusb_interrupt_transfer(usb_dev, 0x02, xxx, 2, &done, 5000); -#endif - noct_read_init(); noct_write_init(); schedule_update(); @@ -470,7 +458,7 @@ static void noct_error(int usb_err, char *text) bool noct_is_ready(void) { - return !!usb_dev; // FIXME + return !!usb_dev; } void noct_init(void) diff --git a/ursaryd/ut.c b/ursaryd/ut.c index 8255848..a127744 100644 --- a/ursaryd/ut.c +++ b/ursaryd/ut.c @@ -96,6 +96,7 @@ struct pulse_sink_input { char *name; int client_idx; int sink_idx; + uns channels; uns volume; uns mute; }; @@ -126,14 +127,15 @@ static void pulse_sink_input_cb(pa_context *ctx UNUSED, const pa_sink_input_info return; } - DBG("Pulse: SINK INPUT #%u: %s client=%d sink=%d has_vol=%d vol_rw=%d volume=%u mute=%d", - i->index, i->name, i->client, i->sink, i->has_volume, i->volume_writable, i->volume.values[0], i->mute); + DBG("Pulse: SINK INPUT #%u: %s client=%d sink=%d chans=%d has_vol=%d vol_rw=%d volume=%u mute=%d", + i->index, i->name, i->client, i->sink, i->channel_map.channels, i->has_volume, i->volume_writable, i->volume.values[0], i->mute); pulse_dump_proplist(i->proplist); struct pulse_sink_input *s = pulse_sink_input_lookup(i->index); SET_STRING(s->name, i->name); s->client_idx = i->client; s->sink_idx = i->sink; + s->channels = i->channel_map.channels; s->volume = pa_cvolume_avg(&i->volume); s->mute = i->mute; schedule_update(); @@ -150,6 +152,7 @@ static void pulse_sink_input_gone(int idx) struct pulse_sink { int idx; char *name; + uns channels; uns volume; uns base_volume; int mute; @@ -179,12 +182,13 @@ static void pulse_sink_cb(pa_context *ctx, const pa_sink_info *i, int eol, void return; } - DBG("Pulse: SINK #%u: %s (%s) flags=%08x volume=%u mute=%d base_vol=%u state=%u", - i->index, i->name, i->description, i->flags, i->volume.values[0], i->mute, i->base_volume, i->state); + DBG("Pulse: SINK #%u: %s (%s) flags=%08x channels=%u volume=%u mute=%d base_vol=%u state=%u", + i->index, i->name, i->description, i->flags, i->channel_map.channels, i->volume.values[0], i->mute, i->base_volume, i->state); pulse_dump_proplist(i->proplist); struct pulse_sink *s = pulse_sink_lookup(i->index); SET_STRING(s->name, i->name); + s->channels = i->channel_map.channels; s->volume = pa_cvolume_avg(&i->volume); s->base_volume = i->base_volume; s->mute = i->mute; @@ -344,15 +348,15 @@ static void pulse_dump(void) HASH_FOR_ALL(pulse_sink, s) { - DBG("## Sink #%d: %s volume=%u base_vol=%u mute=%u", - s->idx, s->name, s->volume, s->base_volume, s->mute); + DBG("## Sink #%d: %s channels=%u volume=%u base_vol=%u mute=%u", + s->idx, s->name, s->channels, s->volume, s->base_volume, s->mute); } HASH_END_FOR; HASH_FOR_ALL(pulse_sink_input, s) { - DBG("## Sink input #%d: %s client=%d sink=%d volume=%u mute=%u", - s->idx, s->name, s->client_idx, s->sink_idx, s->volume, s->mute); + DBG("## Sink input #%d: %s client=%d sink=%d channels=%u volume=%u mute=%u", + s->idx, s->name, s->client_idx, s->sink_idx, s->channels, s->volume, s->mute); } HASH_END_FOR; } @@ -550,7 +554,7 @@ static void do_update(struct main_timer *t) void schedule_update(void) { - timer_add_rel(&update_timer, 10); // FIXME + timer_add_rel(&update_timer, 10); } static void update_sink_from_rotary(int delta, const char *sink_name) @@ -566,7 +570,7 @@ static void update_sink_from_rotary(int delta, const char *sink_name) if (pavol == s->volume) return; pa_cvolume cvol; - pa_cvolume_set(&cvol, 2, pavol); + pa_cvolume_set(&cvol, s->channels, pavol); DBG("## Setting volume of sink %s to %d", s->name, cvol.values[0]); PULSE_ASYNC_RUN(pa_context_set_sink_volume_by_index, pulse_ctx, s->idx, &cvol, pulse_success_cb); @@ -592,7 +596,7 @@ static void update_client_from_rotary(int rotary, int delta) { DBG("@@ Client #%d, sink input #%d: setting volume=%u", s->client_idx, s->idx, pavol); pa_cvolume cvol; - pa_cvolume_set(&cvol, 2, pavol); // FIXME: #channels + pa_cvolume_set(&cvol, s->channels, pavol); PULSE_ASYNC_RUN(pa_context_set_sink_input_volume, pulse_ctx, s->idx, &cvol, pulse_success_cb); } }