From a16094253ba19f2e7123029eb80fba52b0d192b6 Mon Sep 17 00:00:00 2001 From: cbdev Date: Tue, 27 Feb 2018 18:56:13 +0100 Subject: Implement sACN output --- artnet.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'artnet.c') diff --git a/artnet.c b/artnet.c index 5b93c8f..6863861 100644 --- a/artnet.c +++ b/artnet.c @@ -291,11 +291,11 @@ static int artnet_set(instance* inst, size_t num, channel** c, channel_value* v) //FIXME maybe introduce minimum frame interval for(u = 0; u < num; u++){ if(IS_WIDE(data->data.map[c[u]->ident])){ - uint32_t val = (v[u].normalised * 0xFFFF); - //test coarse channel - if(data->data.out[c[u]->ident] != (val >> 8)){ + uint32_t val = v[u].normalised * ((double) 0xFFFF); + //the primary (coarse) channel is the one registered to the core, so we don't have to check for that + if(data->data.out[c[u]->ident] != ((val >> 8) & 0xFF)){ mark = 1; - data->data.out[c[u]->ident] = val >> 8; + data->data.out[c[u]->ident] = (val >> 8) & 0xFF; } if(data->data.out[MAPPED_CHANNEL(data->data.map[c[u]->ident])] != (val & 0xFF)){ -- cgit v1.2.3