I was reading over this thread while researching a fix for my problem. I
thought I would share what I happening on my machine, and hopefully it will
provide you with some insight into your situation. I don't have the answer
yet, but maybe I can provide a different view of what the problem is.
I am currently trying to get 4 PCI cards with 8 channels to work with a new
motherboard (MSI Neo 3FR). I also have an nvidia GeForce 9600 NGO video
card, an Intel Core2 Extreme Quad processor, 4 GB of memory, and 4 Sata II
disks installed. I am currently running Fedora Core 8, with CCRMA
modifications for sound. The audio card is an old Gadget Labs card, and
there is a linux driver, but it isn't part of the Alsa tree yet. I have to
compile and install a module to make the Gadget Labs cards work.
I can easily get 3 cards working (24 channels), but I am needing to do some
'black magic' to get 4 cards working. I am not getting any sound out of
the fourth soundcard. So far, it sounds familiar, doesn't it? (not enough
channels coming out). One of the benefits of having the new linux
driver is that there is already some basic diagnostics built into the
driver, and you can see reports in /var/log/messages of how long it takes to
open or close the card to it's memory buffer. This was originally used
because the interface chip was so old that it didn't have DMA, and a
'software DMA' had to be written, and this was the mechanism to test the
card/driver and figure out its performance.
For my particular system, because I can run a test and see the driver
performance in /var/log/messages (I'm using Jack/Ardour for 'high level
stuff, aplay, arecord, etc for low level stuff), I have seen that the video
card driver is sending a bunch of interrupts down the PCI bus (even though
it is on PCI Express). The particular driver that is sending the
interrupts down the PCI bus is called NV, and is an open source
implementation of NVidia drivers. I get rid of all graphics by issuing
'init 3' instead of being at the normal runlevel 5 (graphics).
As an example for playback only, here are some statistics for one card in
the graphics mode:
[root@localhost tmp]# cat /var/log/messages |grep ISR
...
Dec 13 12:18:23 localhost kernel: api_gl824_stop ISR took between 47 and 137
samples
Dec 13 12:18:23 localhost kernel: api_gl824_stop Buffer transfers TO CARD
within ISR took between 11 and 100 samples
Dec 13 12:18:23 localhost kernel: api_gl824_stop Buffer transfers FROM CARD
within ISR took between 35 and 125 samples
(There is a 128 sample-memory on the card. It is easier to deal with
samples than time, so the 44100khz or 48000khz can be scaled more easily.
What you are seeing is that I am about to run out of time on the PCI bus if
I only have 128 samples to play with)
When I go to a non-graphics mode with init 3, I get the following results:
[root@localhost tmp]# cat /var/log/messages
...
Dec 13 22:03:22 localhost kernel: pcm_gl824_output_trigger 0
Dec 13 22:03:22 localhost kernel: api_gl824_stop Master card's clock
position stopped at 1540
Dec 13 22:03:22 localhost kernel: api_gl824_stop ISR took between 2 and 4
samples
Dec 13 22:03:22 localhost kernel: api_gl824_stop Buffer transfers TO CARD
within ISR took between 2 and 4 samples
Dec 13 22:03:22 localhost kernel: api_gl824_stop Buffer transfers FROM CARD
within ISR took between 0 and 1 samples
.
Dec 13 22:07:48 localhost kernel: pcm_gl824_output_trigger 0
Dec 13 22:07:48 localhost kernel: api_gl824_stop Master card's clock
position stopped at 1932
Dec 13 22:07:48 localhost kernel: api_gl824_stop ISR took between 10 and 12
samples
Dec 13 22:07:48 localhost kernel: api_gl824_stop Buffer transfers TO CARD
within ISR took between 10 and 11 samples
Dec 13 22:07:48 localhost kernel: api_gl824_stop Buffer transfers FROM CARD
within ISR took between 0 and 1 samples
Dec 13 22:07:48 localhost kernel: pcm_gl824_output_hw_free
Dec 13 22:07:48 localhost kernel: pcm_gl824_output_close
What this means is that some interrupt in the graphics mode was taking up
all the PCI bus.
Now, further testing in nongraphic mode revealed that there is still an
issue with hard disk interrupts taking up a lot of PCI bus time.
I'm running arecord and aplay for about 30 seconds to see what the
performance is. I'm recording and playing back 8 channels at once in the
32 bit noninterleaved mode. After I record 8 channels for about 30 seconds
with arecord (creating one honkin' big file) and playing it back with aplay,
I get the following stats when looking at the output of the card:
Dec 14 09:39:15 localhost kernel: pcm_gl824_output_trigger 0
Dec 14 09:39:15 localhost kernel: api_gl824_stop Master card's clock
position stopped at 397
Dec 14 09:39:15 localhost kernel: api_gl824_stop ISR took between 11 and
1498 samples
Dec 14 09:39:15 localhost kernel: api_gl824_stop Buffer transfers TO CARD
within ISR took between 0 and 98 samples
Dec 14 09:39:15 localhost kernel: api_gl824_stop Buffer transfers FROM CARD
within ISR took between 0 and 39 samples
Dec 14 09:39:15 localhost kernel: pcm_gl824_output_hw_free
This means that there are still interrupts happening on the PCI bus while
the card is trying to play. I'm reading the following link to determine
what is the best next thing to do, but I'm also looking at a modern
equivalent to 'hdparm' (and maybe hdparm if I can get it to work with my
Sata disks).
Here's a link that gives an approach to solving the problem:
http://www.gentoo.org/doc/en/articles/hardware-stability-p2.xml
In my opinion, the problem I'm having is because the hard disks are 'too
fast' with 'too much priority' and are taking up too much bandwidth on the
PCI bus. You may be having the same thing happen. It may be that instead
of your problem being that your disks are too slow, the real problem is that
your disk may be too fast. I remember having very severe problems with
disk interrupts when I first started using this software and scsi disks on a
Sun V20z (which are much faster than IDE or SATA). Once I switched to a
normal PC (with slower IDE disks), the underruns just disappeared.
Fortunately with that setup, you could actually hear the disks move and see
the underruns happen at the same time.
If anyone else has been down this road and knows of how to solve the
underlying issues (sata hard disk interrupts taking up too much PCI
bandwidth), I am still searching for an answer and I'm VERY interested in
hearing something from you.
Thanks in advance,
Mike Mazarick
If someone else has been down this road
It's been a long while since I've updated my site, but I added 6 new
songs to the bottom of my page. I appreciated all the helpful
feedback I got from the last time I posted my music to this list and
I'm hoping for the same results. All %100 Linux (even the included
art was designed in Gimp and Inkscape)
http://airlynx.sitesled.com
Christopher VanDan ("Airlynx")
--
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCA/FA/S/O d+(--) s+: a-- C+++ L++ P E-- W++ N-
o K? w O-- M- V- PS+ PE- Y+ PGP t- 5-- X R- !tv
b++ DI++ D+ G+ e+/++ h--- r--/+++ z+++(*)
------END GEEK CODE BLOCK------
hello,
I've been looking at the midi 1.0 specifications and it looks as if in
midi you only have 3 controllers which apply specifically to a given
note rather than a whole channel. I.e. volume, note number and
aftertouch. All the other controllers seem to apply to all the notes
played in a given channel rather than just a single note.
Is this the case, or have later revisions of the midi spec provided ways
of getting round this? I can't find a later midi spec on the web so
assume there isn't a way round it.
andy
Hi everybody,
I wrote a few time ago about 'crescendo' in long notes, and I thank you
for yours suggestes; now I'd like to know what's the finest mode to
manage CC #11 : I've began to use Rosegarden, and I've seen in matrix
editor I can define a lines to manage expression, but it works by big
steps only, I'd like a better and smoothly effect; which sequencer
software can I use?
bye and thanks again
confrey
I did it! Finally I'm able to boot linux-rt with working (but
proprietary) fglrx drivers. I used kernel versions 2.6.27-7 and
2.6.27-3-rt from the repos. Here's a Howto for everyone who also spend
hours of frustration:
0. Uninstall the fglrx driver and linux-rt if installed.
1. Last night I found https://launchpad.net/~abogani/+archive . There's
a subfolder "fglrx-installer". Download those debs
(fglrx-amdcccle_8.543, fglrx-kernel-source_8.543,
fglrx-modaliases_8.543, libamdxvba1_8.543, xorg-driver-fglrx_8.543,
xorg-driver-fglrx-dev_8.543) and install them. Neither mess around with
those other files like "fglrx-installer", I didn't need them, nor add
the repository to your list (also not needed, linux-rt won't even
install if you do that). If the files mentioned above aren't there,
email me.
2. Just install linux-rt, image, headers, restricted modules in synaptic
- watch for the dkms message! If fglrx was succesfully build in your
standart kernel, it should automatically install for the linux-rt
kernel. In my case it was confused because there was fglrx 8.552 and
fglrx 8.543 installed, I had to remove version 8.552 in order to get it
to build (sudo dkms remove -m fglrx -v 8.552 --all). If dkms in the
details dialog in synaptic says it's alright you should be fine.
I'm so happy, I'm going to post this on ubuntuusers.de and the
proprietary ati driver wiki.
Cheers!
Matthias
Hello, I am currently running Ubuntu on my Compaq Laptop. I am fairly new
to Linux.
I need a USB Audio Interface, I do audio production and do alot of onsite
recording. I usually just plug my recording device (Tascam 788) directly
into a music groups sounds system and record on 1 track, so I don't need
anything realy fancy. I am hoping to spend around $200-$300 or so.
Any recommendations or suggestions would be great.
Thanks
Brian
Hi list,
I have a license question, maybe you can help me.
A short while ago I released my album "Laute Minne macht dich Hinne" (http://www.wargsang.de/download.php?file=1) under a CC-by-sa license. That means that anyone can do anything with the recordings (for example share, sell or remix them).
But what does that mean for the music itself, the composition. If someone now plays one of my songs himself...?
Is this covered by the license? Are people allowed or is this a complete different matter?
I personally don't think people can play my songs, but I'm not sure. After all the CC-by-sa only means the recording itself, not the musical composition behind it.
What do you thin?
Nils
Here are two short clips from last Friday night, of Linux being played live in a jazz-oriented context:
http://www.youtube.com/watch?v=MuKqzVDR4wAhttp://www.youtube.com/watch?v=Yc5O-esJ8ko
Bass (via fluidsynth) is left hand, Rhodes (fluidsynth going through CAPS amp simulator LADSPA plugin in ecasound) and AZR3 are right hand.
The sound quality of the video isn't great, buit the Linux Laptop which is making all the keyboard and bass sounds, is clearly visible in the videos.
What's that running on my screen?
1) Emacs (with the setlist and changes of the songs)
2) A couple rxvt's
3) Ion3 tiling window manager
4) Xclock so the drummer and I could keep track of our set length
A lot of times I close the latop lid. But, when I leave it open, I'd like to have something more interesting showing on screen if it's going to be visible from the audience. Any ideas/suggestions as to what to run, that would be visually interesting, but not too CPU intensive?
Thanks.
-ken
I hadn't got the time to do some music on my ubuntu machine the last few
months, but yesterday I wanted to boot the rt-kernel on my machine. To
my surprise, I only got a resolution of 800x600. I used to have the
proprietary driver from ati.com installed; Though this one doesn't work
on the Linux-rt kernel (no 3D acceleration), I used to get the desired
resolution of 1400x1050. To regain this resolution, I tried several
xorf.conf files, using "ati", "fglrx" and "vesa" as driver, but none
worked. (In the process of doing so, I somehow even managed to screw up
my Internet configuration on the main kernel (d'oh), so I'm actually
writing this on 800x600... ) So my question is: Is there actually
someone on this list, who is able to boot Linux-rt on his ubuntu
machine, using an ati x700 mobility? I'd really appreciate any
suggestions, more so working xorg.conf files and verified driver
numbers.
Greetings from Euskirchen
Matthias