>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

that's what this tried to do:

        if (hmidi->output) {
                if (!snd_rawmidi_transmit_empty (hmidi->output)) {
                        if ((n_pending = snd_hdsp_midi_output_possible (hmidi->hdsp, 
hmidi->id)) > 0) {
                                if (n_pending > sizeof (buf))
                                        n_pending = sizeof (buf);
                                
                                if ((to_write = snd_rawmidi_transmit (hmidi->output, 
buf, n_pending)) > 0) {
                                        for (i = 0; i < to_write; ++i) 
                                                snd_hdsp_midi_write_byte (hmidi->hdsp, 
hmidi->id, buf[i]);
                                } else {
                                        clear_timer = 1;
                                }
                        }
                } else {
                        clear_timer = 1;
                }

how does this end up writing only a single byte? unless n_pending is
always either 0 or 1, which on closer inspection, i see that it is
... yikes. 

>(however, I don't know if the HDSP has a FIFO at all). And it should start

it does have a FIFO.

>sending in output_trigger() instead of delaying it to the next timer tick.

hmm. i modelled this code on another PCI driver that had MIDI
support. is there an example you can point me to that starts from
within the equivalent output_trigger?

--p


-------------------------------------------------------
This SF.NET email is sponsored by: FREE  SSL Guide from Thawte
are you planning your Web Server Security? Click here to get a FREE
Thawte SSL guide and find the answers to all your  SSL security issues.
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0026en
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to