Re: midish and alsasequencer

From: Alexandre Ratchov <alex_at_caoua.org>
Date: Fri Jul 06 2007 - 15:40:42 CEST
On Fri, Jul 06, 2007 at 02:16:18PM +0200, Julien Claassen wrote:
> Hi Alexandre!
>   It now works partly. I did the following:
> devattach 0 "/dev/snd/midiC1D0" # hardware
> devattach 1 "/dev/snd/midiC0D0" # VIRMidi
> 
> # copy dev1 and dev2 and vice versa
> proc copydevs dev1 dev2 {
>   filtnew devcopy1
>   filtnew devcopy2
>   filtdevmap devcopy1 $dev1 $dev2
>   filtdevmap devcopy2 $dev2 $dev1
>   # do I need two filters, or can one filter have to devmaps?
> }
> 

hi

you must put both "devmap" rules in a single filter; actually, only
one filter is active (the "current filter"). Usually it's the last
one you created. The following should do what you need:

	filtnew devcopy
	filtdevmap devcopy 0 1
	filtdevmap devcopy 1 0

(note that a track can have its current filter too; in this case
events are passed through that filter. if the track has no current
filter, then the song current filter is used, try 'songinfo' if
unsure)

> in rmidish:
> 1> copydevs 0 1
> 2> p
> 
>   On a different console:
> aplaymidi -p 16:0 bwv1000.mid # 16:0 being virmidi
>   this works, but I couldn't get midish to output to another alsaseq client. 

yeah, that's because only the second filter is active; it maps the
virmidi device to hardware device. The mapping of the hardware to
the alsaseq client is still on the inactive filter. Putting both
rules in the same filter should work

cheers, 

-- Alexandre
Received on Fri, 6 Jul 2007 15:40:42 +0200

This archive was generated by hypermail 2.1.8 : Wed Nov 08 2017 - 16:32:19 CET