[linux-audio-dev] mpu401 fifo scheduling on linux2.4.18

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: [linux-audio-dev] mpu401 fifo scheduling on linux2.4.18
From: Bruce M Beach (brucemartinbeach_AT_21cn.com)
Date: Thu Nov 21 2002 - 23:42:09 EET


   Hello All

    I'm sending some midi data to synthesizer for playback
    and it appears that the fifo /dev/midi (cmpci mpu401 driver)
    is not emptying as fast as it should(could), since the play back
    is highly irregular. Here are some numbers.

    1) The timeing slice remains constant at 30 msec +/- 3usec,
       timed both at the beginning and end of the loop,
       so the irregularities are not due to loop variations.

    2) A maximum of 64 bytes burst, with around 5 bytes normal
       and an average of 1 byte (say) (ie many slices do nothing)
       can occur during a slice, the buffer for the driver is
       128 bytes with around a maximum capability of around 116 bytes
       transmitted per slice, so the midi channel can easily sustain
       the transmission rate at the rate I am sending information.

    4) System load while the program is running is around 0.1%

    5) The midi performance remains the same even if I do something
       like build the kernel, and untar some package say glibc at
       the same time.

    When I say irregular I mean, for instance on a run of 16th notes
    the notes will radically speed up and slow down. The notes all
    have the correct pitches and voice changes etc. are all happening
    correctly. Just this strange tempo problem.

    Any thoughts or suggestions would be welcome.

    Bruce


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Thu Nov 21 2002 - 16:23:43 EET