On Mon, 2003-01-13 at 09:04, Clemens Ladisch wrote:
Mark Knecht wrote:
I recently purchased an RME HDSP 9652 card.
The card is working fine
for audio, but the MIDI interface is a timing disaster. The interface
works, but won't keep time. A 2 minute song is Rosegarden takes abut
2:45 to play every time. You can hear how the HDSP isn't delivering
closely spaced MIDI events together, but is sort of smearing them out.
The hdsp driver doesn't send more than one MIDI byte per timer tick.
IMHO it should be modified to send in a loop until the FIFO is full
(however, I don't know if the HDSP has a FIFO at all). And it should start
sending in output_trigger() instead of delaying it to the next timer tick.
Clemens,
Thanks for the response. One comment I forgot to make in the first
post. This MIDI interface works fine under Windows, so whatever causes
the problem is purely a Alsa MIDI issue. If we can figure it out, then
we can fix it.
I agree that it sounds like this sort of one note per timer tick.
When the interface is supposed to send a chord, it sends what sounds
like an arpegiated chord. It's all smeared out.
Is there some example code I could look at to understand implementing
a FIFO? However, if there is a FIFO Full indication, doesn't we need to
know _how_ it's indicated? I would assume it's different for all cards?
(Bus possibly similar for cards from the same manufacturer?
Also, this is the HDSP 9652, which is a single PCI card. Is this
problem showing up for the DigiFace/MultiFace type cards?
Thanks,
Mark