[LAU] Problem uploading sysex data to hardware synth

Brent Busby brent at keycorner.org
Sat May 4 22:58:26 UTC 2013


I'd like to get the snd-virmidi driver working on my setup, but even 
after reading the documentation included with the kernel for Alsa and 
the Alsa wiki, I'm a bit murky on all the stuff that's in modprobe's 
configuration for getting everything loaded at bootup.  Currently, I 
have an Intel sound chipset on my motherboard that I'm using index=0 to 
ensure will be my primary sound device, followed by my RME Multiface 
with index=1.  I also have an Edirol UM-3EX USB 3-port Midi interface 
that's being forced to be last with index=-2, since it's not really even 
a sound device and I want it to be last (though how "-2" is achieving 
this is one of the things I'm murky about, and hesitant to screw with). 
This yields the following presently positive result in 
/proc/asound/cards:

village:~# cat /proc/asound/cards
  0 [SB             ]: HDA-Intel - HDA ATI SB
                       HDA ATI SB at 0xfb9f8000 irq 16
  1 [DSP            ]: H-DSP - Hammerfall DSP
                       RME Hammerfall DSP + Multiface at 0xfbbf0000, irq 19
  2 [UM3EX          ]: USB-Audio - UM-3EX
                       EDIROL UM-3EX at usb-0000:00:12.1-2.1, full speed

If I enable the snd-virmidi driver, I'd like it to be even lower in 
priority than the Edirol UM-3EX Midi, and be last.  Probably that means 
the Edirol now becomes index=2, but does snd-virmidi become index=-2? 
The kernel documentation says negative card indexes are "a bitmask of 
permissable indexes"...from what?  An 8-bit number?  How does that work 
exactly?  I do understand what a bitmask is...but what is this doing 
really?  With my current configuration, I'm getting what I want, but I'm 
unsettled that I don't know how it's being achieved.  Just for 
amusement/advice, I've included my /etc/modprobe.d/alsa.conf below. 
Feel free to point out anything that looks foolish, because it's largely 
been adapted from what the modprobe package came with by default:


-------------------------------------------------------------------------

# Alsa kernel modules' configuration file.

# ALSA portion
alias char-major-116 snd
# OSS/Free portion
alias char-major-14 soundcore

##
## IMPORTANT:
## You need to customise this section for your specific sound card(s)
## and then run `update-modules' command.
## Read alsa-driver's INSTALL file in /usr/share/doc for more info.
##
##  ALSA portion
alias snd-card-1 snd-hdsp
alias snd-card-0 snd-hda-intel
options snd-hda-intel index=0
options snd-hdsp index=1
options snd-usb-audio index=-2
##  OSS/Free portion
alias sound-slot-0 snd-card-0
alias sound-slot-1 snd-card-1
##

# OSS/Free portion - card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
#  OSS/Free portion - card #2
alias sound-service-1-0 snd-mixer-oss
alias sound-service-1-3 snd-pcm-oss
alias sound-service-1-12 snd-pcm-oss

alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss

# Set this to the correct number of cards.
options snd cards_limit=4
# options snd slots=snd-hda-intel,snd-hdsp,snd-usb-audio

-- 
+ Brent A. Busby	 + "We've all heard that a million monkeys
+ Sr. UNIX Systems Admin +  banging on a million typewriters will
+ University of Chicago	 +  eventually reproduce the entire works of
+ James Franck Institute +  Shakespeare.  Now, thanks to the Internet,
+ Materials Research Ctr +  we know this is not true." -Robert Wilensky


More information about the Linux-audio-user mailing list