[PD-cvs] pd/src s_midi_alsa.c,1.1.2.2.2.6.2.3,1.1.2.2.2.6.2.4
Mathieu Bouchard
matju at users.sourceforge.net
Tue Jul 24 23:03:44 CEST 2007
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27545
Modified Files:
Tag: desiredata
s_midi_alsa.c
Log Message:
extended midi max message size to 256 bytes
Index: s_midi_alsa.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/s_midi_alsa.c,v
retrieving revision 1.1.2.2.2.6.2.3
retrieving revision 1.1.2.2.2.6.2.4
diff -C2 -d -r1.1.2.2.2.6.2.3 -r1.1.2.2.2.6.2.4
*** s_midi_alsa.c 24 Jul 2007 20:58:25 -0000 1.1.2.2.2.6.2.3
--- s_midi_alsa.c 24 Jul 2007 21:03:42 -0000 1.1.2.2.2.6.2.4
***************
*** 19,22 ****
--- 19,24 ----
//#include "s_stuff.h"
+ #define MAX_EVENT_SIZE 256
+
static int alsa_nmidiin;
static int alsa_midiinfd[MAXMIDIINDEV];
***************
*** 73,77 ****
post("Opened Alsa Client %d in:%d out:%d",client,nmidiin,nmidiout);
sys_setalarm(0);
! snd_midi_event_new(20,&midiev);
alsa_nmidiout = nmidiout;
alsa_nmidiin = nmidiin;
--- 75,79 ----
post("Opened Alsa Client %d in:%d out:%d",client,nmidiin,nmidiout);
sys_setalarm(0);
! snd_midi_event_new(MAX_EVENT_SIZE,&midiev);
alsa_nmidiout = nmidiout;
alsa_nmidiin = nmidiin;
***************
*** 165,172 ****
}
-
/* this version uses the asynchronous "read()" ... */
! void sys_alsa_poll_midi(void) {
! unsigned char buf[20];
int count, alsa_source;
snd_seq_event_t *midievent = NULL;
--- 167,173 ----
}
/* this version uses the asynchronous "read()" ... */
! void sys_alsa_poll_midi() {
! unsigned char buf[MAX_EVENT_SIZE];
int count, alsa_source;
snd_seq_event_t *midievent = NULL;
***************
*** 177,181 ****
if (count != 0) count = snd_seq_event_input(midi_handle,&midievent);
if (midievent != NULL) {
! count = snd_midi_event_decode(midiev,buf,20,midievent);
alsa_source = midievent->dest.port;
for(int i=0; i<count; i++) sys_midibytein(alsa_source, (buf[i] & 0xff));
--- 178,182 ----
if (count != 0) count = snd_seq_event_input(midi_handle,&midievent);
if (midievent != NULL) {
! count = snd_midi_event_decode(midiev,buf,sizeof(buf),midievent);
alsa_source = midievent->dest.port;
for(int i=0; i<count; i++) sys_midibytein(alsa_source, (buf[i] & 0xff));
***************
*** 195,199 ****
static int alsa_nmidiindevs, alsa_nmidioutdevs, alsa_initted;
! void midi_alsa_init(void) {
if (alsa_initted) return;
alsa_initted = 1;
--- 196,200 ----
static int alsa_nmidiindevs, alsa_nmidioutdevs, alsa_initted;
! void midi_alsa_init() {
if (alsa_initted) return;
alsa_initted = 1;
More information about the Pd-cvs
mailing list