From the ALSA wiki
XG-MIDI and Yamaha YMF-744/754 Soundcards
- 1 2005-10-11
- 4 Low latency and ymfpci cards
- 5 Quick tip on recording from SPDIF
The Yamaha DS-XG specs for this card are available from here...
See GuillemotMaxisoundFortissimo for a variation on this card.
snd-ainstr-fm and related
modules. For my ad1816a soundcard, I load the
following modules using
modprobe which fills in the dependencies:
/sbin/modprobe snd-ad1816a /sbin/modprobe snd-opl3-synth
Get and install the
sbiload program from alsa-tools. Some versions of
alsa-tools are missing the instruments. The CVS version of alsa-tools
includes instruments, so your best bet is to get the CVS version of
alsa-tools-x.x.x or else to download the missing instruments (
drums.*) from here:
I used the following command to compile and install
cd alsa-tools-0.9.0rc1/seq/sbiload ./configure --prefix=/usr/local --with-kernel=2.5.20 make sudo make install
Load the patches for the card like so:
sbiload -p65:0 --opl3 std.o3 drums.o3
For Slackware Linux, I have in my
/usr/local/bin/sbiload -p 65:0 --opl3 \ /usr/local/share/alsa/banks/opl3/std.o3 \ /usr/local/share/alsa/banks/opl3/drums.o3
This loads the OPL3 versions of the sound banks. If you want more
soundblaster-like sounds (OPL2), load the files
Adjust mixer levels
Adjust the mixer levels. On my card, there is a Synth mixer and a FM mixer. The FM mixer is the one for adjusting the volume of MIDI playback. On my card, the sound is very quiet until the slider is almost to the top, so you may need to experiment.
OK, you should be able to generate FM music now. If you have a MIDI keyboard and a working MPU401, you can connect it to the OPL3 synth to hear sounds. Here are the outputs from aconnect
$ aconnect -i client 0: 'System' [type=kernel] 0 'Timer ' 1 'Announce ' client 64: 'External MIDI 0' [type=kernel] 0 'MIDI 0-0 ' $ aconnect -o client 64: 'External MIDI 0' [type=kernel] 0 'MIDI 0-0 ' client 65: 'OPL3 FM synth' [type=kernel] 0 'OPL3 Port ' $ aconnect 64:0 65:0
Viola! Sounds! The newest version of
Rosegarden works well for playing music at
least. I recommend getting the
kaconnect program if you want to work
seriously with ALSA synthesizers:
You'll probably have to play with the makefile to get them to compile.
I would also like to point out that ISA MPU401 interfaces _really_ like to have IRQ 9, but it is often taken by the ACPI controller on modern motherboards (which is unchangeable on my Tyan Tiger 100). In that case, be sure to set the next best interrupt, IRQ 10, as ISA in the BIOS settings. Setting IRQ 9 will not really prevent the ACPI controller from using it and causing the MPU401 to not work.
Have fun, and tell your friends. What I would like is to be able to change the parameters on an OPL3 instrument using MIDI control messages. An OPL3 is two operators away from a DX-7 for crying out loud ;)
--BrentCook Thanks Brent
Alsamixer Inputs Guide
'ADC' = Throughput `line in` port 'ADC Capture' = Record from `line in` port (Left hand 'Digital' input also has to be unmuted to record)
(FIXME: need more info/clarification)
Low latency and ymfpci cards
ymfpci soundcard has limited features, even in Asio with Windows.
In order to use a
ymfpci soundcard with Jack, and
generally to do anything useful, you need to set the period size. For
jackd -d alsa -d default -r 44100 -p 512 -n 3
The key setting here is:
This gives you a latency of \~74ms. Using
/dev/rtc and other kernel
latency settings and patches should help.
Quick tip on recording from SPDIF
Using the Hoontech Soundtrack Digital XG, you can record easily using
snd for example and setting the following
Please don't mess around with this stuff wearing headphones, you can get some noisy digital loops that could blow your ears.
- Master: \~90%
- PCM: \~90% (these first two shouldn't effect the quality of the recording)
- Wave: 100%
- IEC958: capture enabled (spacebar to enable)
- IEC958 1: 100%
- Capture: capture enabled (redundancy abounds)
- Digital: 100%
- Direct Recording Source: IEC958
All of the above discovered by trial and error (mostly the latter).
Retrieved from "http://alsa.opensrc.org/Ymfpci"