aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorcbdev <cb@cbcdn.com>2019-11-22 14:45:33 +0100
committercbdev <cb@cbcdn.com>2019-11-22 14:45:33 +0100
commit243d176936152bc2691a5594f76583948af70618 (patch)
treed5a87ab9d0bd2753558d46c55c2072e30561a3f4
parentcb17ab98ebffb5b736068452da5a46016caba424 (diff)
downloadmidimonster-243d176936152bc2691a5594f76583948af70618.tar.gz
midimonster-243d176936152bc2691a5594f76583948af70618.tar.bz2
midimonster-243d176936152bc2691a5594f76583948af70618.zip
Exclude buttons from feedback filtering for maweb backend
-rw-r--r--backends/maweb.c4
-rw-r--r--backends/winmidi.c14
2 files changed, 11 insertions, 7 deletions
diff --git a/backends/maweb.c b/backends/maweb.c
index 57d04ae..453dfa4 100644
--- a/backends/maweb.c
+++ b/backends/maweb.c
@@ -837,7 +837,9 @@ static int maweb_set(instance* inst, size_t num, channel** c, channel_value* v){
//i/o value space separation
chan->in = v[n].normalised;
- chan->input_blocked = 1;
+ if(chan->type == exec_fader){
+ chan->input_blocked = 1;
+ }
switch(chan->type){
case exec_fader:
diff --git a/backends/winmidi.c b/backends/winmidi.c
index d6bc0bc..ffca3b4 100644
--- a/backends/winmidi.c
+++ b/backends/winmidi.c
@@ -277,17 +277,19 @@ static int winmidi_handle(size_t num, managed_fd* fds){
//pretty-print channel-wide events
if(backend_config.event[u].channel.fields.type == pitchbend
|| backend_config.event[u].channel.fields.type == aftertouch){
- fprintf(stderr, "Incoming MIDI data on channel %s.ch%d.%s\n",
+ fprintf(stderr, "Incoming MIDI data on channel %s.ch%d.%s, value %f\n",
backend_config.event[u].inst->name,
backend_config.event[u].channel.fields.channel,
- winmidi_type_name(backend_config.event[u].channel.fields.type));
+ winmidi_type_name(backend_config.event[u].channel.fields.type),
+ backend_config.event[u].value);
}
else{
- fprintf(stderr, "Incoming MIDI data on channel %s.ch%d.%s%d\n",
+ fprintf(stderr, "Incoming MIDI data on channel %s.ch%d.%s%d, value %f\n",
backend_config.event[u].inst->name,
backend_config.event[u].channel.fields.channel,
winmidi_type_name(backend_config.event[u].channel.fields.type),
- backend_config.event[u].channel.fields.control);
+ backend_config.event[u].channel.fields.control,
+ backend_config.event[u].value);
}
}
chan = mm_channel(backend_config.event[u].inst, backend_config.event[u].channel.label, 0);
@@ -434,7 +436,7 @@ static int winmidi_match_input(char* prefix){
printf("\tID %d: %s\n", n, input_caps.szPname);
}
else if(!strncmp(input_caps.szPname, prefix, strlen(prefix))){
- fprintf(stderr, "winmidi selected input device %s for name %s\n", input_caps.szPname, prefix);
+ fprintf(stderr, "winmidi selected input device %s (ID %" PRIsize_t ") for name %s\n", input_caps.szPname, n, prefix);
return n;
}
}
@@ -467,7 +469,7 @@ static int winmidi_match_output(char* prefix){
printf("\tID %d: %s\n", n, output_caps.szPname);
}
else if(!strncmp(output_caps.szPname, prefix, strlen(prefix))){
- fprintf(stderr, "winmidi selected output device %s for name %s\n", output_caps.szPname, prefix);
+ fprintf(stderr, "winmidi selected output device %s (ID %" PRIsize_t " for name %s\n", output_caps.szPname, n, prefix);
return n;
}
}