From: <te...@ro...> - 2004-10-14 23:55:35
|
Hello. Apparently, muse, ardour, and rosegarden are suffering =A0from the same fatal flaw which makes them unusable for serious work. Am I doing something wrong, or what... =A0 Do this simple muse test: Record an audio track of the sound of the=20 =A0midi metronome (use SB 'what-u-hear' or 'mix' input). Now play back the track, leaving the metronome on as a reference. The audio sound is delayed from the midi metronome sound. Open the recorded track and look at the wave. It's shifted to the right. You can see the samples were stored in a later t= ime=20 =A0frame. This should not happen. It causes compound delays everywhere. Especially if you record from another =A0audio track or use an audio metronome (ardour) or have other tracks play= ing.=20 So I modified jack's simple-client.c app so I could see exactly what was=20 coming in to and out of jack. In the process callback, I see that if you=20 place a wave into the output buffer, and use the 'what-u-hear' or 'mix'=20 record input, the wave will appear in the NEXT input buffer, in the next=20 callback.=20 That's OK. That's what should happen. So it's not jack's fault. Had it appeared two or more blocks later, well, I wouldn't be posting here.= =2E. I can only conclude that these apps aren't handling audio correctly - they =A0assume you can get jack's buffer size to approach 1... =2D-- =A0 Therefore I submit that when recording, muse needs to: =A0"Shift the incoming buffers backward one time period - it's the sound th= at=20 =A0WAS there at THAT time, not now."=20 (I thought I saw, in the muse code somewhere, some TODO's for that.) This way we can all use large buffers, and lower priorities and permissions= ,=20 =A0if desired. =2D-- =A0 OK now the good part. I love muse. Hands down the winner, in my opinion! It's the only one that can transpose my keyboard AND compress the velocity.= =20 Nice touch. Because while playing my keyboard via MIDI + PC, often a stray= =20 =A0note will 'jump out' at you - too loud, you'd swear you didn't =A0press = it that =A0=20 =A0hard. I think it's a linearity thing. My keyboard's built-in sounds'=20 =A0velocities are noticibly more 'non-linear'. It has three settings - soft= ,=20 =A0medium, and hard. =A0 =A0 Thank you. Good work. (Tell me, is your compressor a simple limiter, or does follow a curve?)=20 =A0 Muse definitely WILL be THE killer app if this one problem can be fixed. I'm slowly learning the muse code, but I thought at this point best to ask. Cheers, thanks much....=20 |