Mercurial > audlegacy-plugins
comparison src/amidi-plug/backend-alsa/b-alsa.c @ 1414:5f892afeb8e1 audacious-plugins-1.4.0-dr2
- amidi-plug 0.8 beta1; support for gthread and v3 plugin system; needs testing and refinements
author | Giacomo Lozito <james@develia.org> |
---|---|
date | Mon, 06 Aug 2007 14:01:24 +0200 |
parents | d2e508857ded |
children |
comparison
equal
deleted
inserted
replaced
1413:4731d28ea19d | 1414:5f892afeb8e1 |
---|---|
177 { | 177 { |
178 return snd_seq_start_queue( sc.seq , sc.queue , NULL ); | 178 return snd_seq_start_queue( sc.seq , sc.queue , NULL ); |
179 } | 179 } |
180 | 180 |
181 | 181 |
182 gint sequencer_queue_stop( void ) | |
183 { | |
184 return snd_seq_stop_queue( sc.seq , sc.queue , NULL ); | |
185 } | |
186 | |
187 | |
182 gint sequencer_event_init( void ) | 188 gint sequencer_event_init( void ) |
183 { | 189 { |
184 /* common settings for all our events */ | 190 /* common settings for all our events */ |
185 snd_seq_ev_clear(&sc.ev); | 191 snd_seq_ev_clear(&sc.ev); |
186 sc.ev.queue = sc.queue; | 192 sc.ev.queue = sc.queue; |
285 | 291 |
286 | 292 |
287 gint sequencer_event_other( midievent_t * event ) | 293 gint sequencer_event_other( midievent_t * event ) |
288 { | 294 { |
289 /* unhandled */ | 295 /* unhandled */ |
296 return 1; | |
297 } | |
298 | |
299 | |
300 gint sequencer_event_allnoteoff( gint unused ) | |
301 { | |
302 gint i = 0 , c = 0; | |
303 /* send "ALL SOUNDS OFF" to all channels on all ports */ | |
304 sc.ev.type = SND_SEQ_EVENT_CONTROLLER; | |
305 sc.ev.time.tick = 0; | |
306 snd_seq_ev_set_fixed(&sc.ev); | |
307 sc.ev.data.control.param = MIDI_CTL_ALL_SOUNDS_OFF; | |
308 sc.ev.data.control.value = 0; | |
309 for ( i = 0 ; i < sc.dest_port_num ; i++ ) | |
310 { | |
311 sc.ev.queue = sc.queue; | |
312 sc.ev.dest = sc.dest_port[i]; | |
313 | |
314 for ( c = 0 ; c < 16 ; c++ ) | |
315 { | |
316 sc.ev.data.control.channel = c; | |
317 snd_seq_event_output(sc.seq, &sc.ev); | |
318 snd_seq_drain_output(sc.seq); | |
319 } | |
320 } | |
290 return 1; | 321 return 1; |
291 } | 322 } |
292 | 323 |
293 | 324 |
294 gint sequencer_output( gpointer * buffer , gint * len ) | 325 gint sequencer_output( gpointer * buffer , gint * len ) |