[linux-audio-user] midi timing problems

Paul Winkler pw_lists at slinkp.com
Sat Nov 15 18:45:05 EST 2003


On Sat, Nov 15, 2003 at 05:12:45PM +0000, James Stone wrote:
> On Tue, Nov 11, 2003 at 09:13:58PM +0000, James Stone wrote:
> > Hello everyone.
> > 
> > I have a problem with midi timing.. I think I have set up enhanced rtc
> > correctly and low latency patch on kernel 2.4.20.
> > 
> > When I drive hydrogen (or even the inbuilt soundfont player on my
> > SBLive) with seq24 or ardour, there is a noticable variation in midi
> > timing. This was tested by using a run of closed hihats. When I play the
> > sequence back, the hihats are grouped in batches rather than being
> > evenly spaced. This was noticable when running as root and when using
> > alsa and (to a lesser extent) jack. The midi connection is via alsa.
> > 
> > Any hints on what I should do?
> > 
> > James
> 
> Just to reply to myself,
> 
> I solved the problem:
> 
> I needed to install the snd-rtctimer for alsa. This required a patch to
> the kernel RTC (patch included with ALSA but also needed a tweak. see:
> 
> http://www.geocrawler.com/archives/3/12349/2001/7/0/6299315/

So... you got the rtc patch to apply on kernel 2.4.20???
Are you using vanilla kernel sources with low-latency patch?

It fails for me :-(  
I am using gentoo "gaming-sources" for 2.4.20,
which have preemptible and lowlat patches already applied.
I get three rejects (one in the makefile as described in that 
message), two in rtc.c which are trivial to fix by hand...
but then "make modules" fails on rtc.c:

make[2]: Entering directory `/usr/src/linux-2.4.20-gaming-r3/drivers/char'
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-gaming-r3/include  -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.20-gaming-r3/include/linux/modversions.h  -nostdinc -iwithprefix include -DKBUILD_BASENAME=rtc  -DEXPORT_SYMTAB -c rtc.c
rtc.c:150: redefinition of `rtc_task_lock'
rtc.c:145: `rtc_task_lock' previously defined here
rtc.c:151: redefinition of `rtc_callback'
rtc.c:146: `rtc_callback' previously defined here
rtc.c:591: redefinition of `rtc_do_ioctl'
rtc.c:296: `rtc_do_ioctl' previously defined here
rtc.c:780: redefinition of `__kstrtab_rtc_register_Rsmp_fdab2b9c'
rtc.c:698: `__kstrtab_rtc_register_Rsmp_fdab2b9c' previously defined here
rtc.c:780: redefinition of `__ksymtab_rtc_register_Rsmp_fdab2b9c'
rtc.c:698: `__ksymtab_rtc_register_Rsmp_fdab2b9c' previously defined here
rtc.c:781: redefinition of `__kstrtab_rtc_unregister_Rsmp_eddfe49d'
rtc.c:699: `__kstrtab_rtc_unregister_Rsmp_eddfe49d' previously defined here
rtc.c:781: redefinition of `__ksymtab_rtc_unregister_Rsmp_eddfe49d'
rtc.c:699: `__ksymtab_rtc_unregister_Rsmp_eddfe49d' previously defined here
rtc.c:782: redefinition of `__kstrtab_rtc_control_Rsmp_c9b27289'
rtc.c:700: `__kstrtab_rtc_control_Rsmp_c9b27289' previously defined here
rtc.c:782: redefinition of `__ksymtab_rtc_control_Rsmp_c9b27289'
rtc.c:700: `__ksymtab_rtc_control_Rsmp_c9b27289' previously defined here
rtc.c:785: redefinition of `rtc_register_Rsmp_fdab2b9c'
rtc.c:703: `rtc_register_Rsmp_fdab2b9c' previously defined here
rtc.c:811: redefinition of `rtc_unregister_Rsmp_eddfe49d'
rtc.c:729: `rtc_unregister_Rsmp_eddfe49d' previously defined here
rtc.c:843: redefinition of `rtc_control_Rsmp_c9b27289'
rtc.c:761: `rtc_control_Rsmp_c9b27289' previously defined here
rtc.c:145: warning: `rtc_task_lock' defined but not used
rtc.c:146: warning: `rtc_callback' defined but not used
rtc.c:296: warning: `rtc_do_ioctl' defined but not used
{standard input}: Assembler messages:
{standard input}:58: Error: symbol `rtc_task_lock' is already defined
{standard input}:63: Error: symbol `rtc_callback' is already defined
{standard input}:189: Error: symbol `__kstrtab_rtc_register_Rsmp_fdab2b9c' is already defined
{standard input}:196: Error: symbol `__ksymtab_rtc_register_Rsmp_fdab2b9c' is already defined
{standard input}:203: Error: symbol `__kstrtab_rtc_unregister_Rsmp_eddfe49d' is already defined
{standard input}:210: Error: symbol `__ksymtab_rtc_unregister_Rsmp_eddfe49d' is already defined
{standard input}:217: Error: symbol `__kstrtab_rtc_control_Rsmp_c9b27289' is already defined
{standard input}:224: Error: symbol `__ksymtab_rtc_control_Rsmp_c9b27289' is already defined
make[2]: *** [rtc.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.4.20-gaming-r3/drivers/char'
make[1]: *** [_modsubdir_char] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.20-gaming-r3/drivers'
make: *** [_mod_drivers] Error 2

Any clues?

-- 

Paul Winkler
http://www.slinkp.com
Look! Up in the sky! It's IAMBIC HEART PROFESSOR!
(random hero from isometric.spaceninja.com)



More information about the Linux-audio-user mailing list