LinuxSA Mailing list archives
Index:
[thread]
[date]
[subject]
[author]
[stats]
From: Alan Kennington <akenning@dog.topology.org>
To : David Lloyd <lloy0076@rebel.net.au>
Date: Wed, 8 Nov 2000 17:15:02 +1030
Re: Sound Card Support
On Wed, Nov 08, 2000 at 04:56:52PM +1030, David Lloyd wrote:
>
> > Has anyone else got a card based on this chip that got MIDI working on
> > it?
>
> Although I haven't attempted an ALSA download, my MIDI doesn't work
> either. Can someone tell me whether MIDI is done by the hardware or in
> software? That is to say, are the MIDI instructions intercepted by the
> software device driver, translated and sent to the sound card, or do
> sound cards do that themselves?
Not that I really understand this kind of thing, but....
I've used the ALSA software, and since each kind of card is different,
it seems like it creates kind of pseudo-devices or pseudo-MIDI-synths
to which programs like pmidi can send MIDI commands.
Thus when you run "pmidi -l", it lists all of the available
pseudo-MIDI-devices.
In my case, I use device 64:0 on my card which uses the es1371 driver
software.
Here's a list of modules which I used for the pseudo-synths:
=======================================================
emu:~ # lsmod
Module Size Used by
snd-seq 35892 0 (autoclean)
snd-timer 7488 0 (autoclean) [snd-seq]
snd-seq-device 3004 0 (autoclean) [snd-seq]
snd 33228 0 (autoclean) [snd-seq snd-timer snd-seq-device]
parport_probe 3204 0 (autoclean)
parport_pc 7264 1 (autoclean)
lp 4572 0 (autoclean)
parport 6884 1 (autoclean) [parport_probe parport_pc lp]
soundcore 2148 0 (autoclean) [snd]
eepro100 15848 1 (autoclean)
=======================================================
But there's also a sort of raw driver for the sound-blaster card that I
use:
=======================================================
emu:~ # modprobe es1371
emu:~ # lsmod
Module Size Used by
es1371 25696 0 (unused)
snd-seq 35892 0 (autoclean)
snd-timer 7488 0 (autoclean) [snd-seq]
snd-seq-device 3004 0 (autoclean) [snd-seq]
snd 33228 0 (autoclean) [snd-seq snd-timer snd-seq-device]
parport_probe 3204 0 (autoclean)
parport_pc 7264 1 (autoclean)
lp 4572 0 (autoclean)
parport 6884 1 (autoclean) [parport_probe parport_pc lp]
soundcore 2148 4 (autoclean) [es1371 snd]
eepro100 15848 1 (autoclean)
=======================================================
The ALSA software loads up drivers like snd-seq-XXXX for each
sound card, and these are located by ALSA applications.
Hmmm. It seems like although you need to load up es1371.o for things
like realplayer, it uses the same resource as the snd-card-ens1371.o
module wants to use. So....
======================================================
emu:/lib/modules/2.2.16/misc # modprobe snd-card-ens1371
emu:/lib/modules/2.2.16/misc # lsmod
Module Size Used by
snd-card-ens1371 1964 0 (unused)
snd-seq-midi 2972 0 (unused)
snd-seq-midi-event 2460 0 [snd-seq-midi]
snd-ens1371 9036 0 [snd-card-ens1371]
snd-pcm 27928 0 [snd-ens1371]
snd-rawmidi 8408 0 [snd-seq-midi snd-ens1371]
snd-ac97-codec 23840 0 [snd-ens1371]
snd-mixer 22160 0 [snd-ens1371 snd-ac97-codec]
snd-seq 35892 0 (autoclean) [snd-seq-midi snd-seq-midi-event]
snd-timer 7488 0 (autoclean) [snd-pcm snd-seq]
snd-seq-device 3004 0 (autoclean) [snd-seq-midi snd-rawmidi snd-seq]
snd 33228 1 (autoclean) [snd-card-ens1371 snd-seq-midi snd-seq-midi-event snd-ens1371 snd-pcm snd-rawmidi snd-ac97-codec snd-mixer snd-seq snd-timer snd-seq-device]
parport_probe 3204 0 (autoclean)
parport_pc 7264 1 (autoclean)
lp 4572 0 (autoclean)
parport 6884 1 (autoclean) [parport_probe parport_pc lp]
soundcore 2148 2 (autoclean) [snd]
eepro100 15848 1 (autoclean)
emu:/lib/modules/2.2.16/misc # pmidi -l
Port Client name Port name
64:0 External MIDI 0 MIDI 0-0
======================================================
So now I get a midi device 64:0 to send midi to, which goes down the
cable. But you can also set it up to send MIDI to the built-in synths
inside cards by loading up the right modules.
More info in links on this page:
http://www.topology.org/midi.html
Cheerio,
Alan Kennington.
--
LinuxSA WWW: http://www.linuxsa.org.au/ IRC: #linuxsa on irc.linux.org.au
To unsubscribe from the LinuxSA list:
mail linuxsa-request@linuxsa.org.au with "unsubscribe" as the subject
Index:
[thread]
[date]
[subject]
[author]
[stats]
Return to the LinuxSA Mailing List Information Page