the good news is, that using HR timer will cause less jitter than the
usage of any other timer.
The bad news are
- Open Octave will freeze the system when selecting HR timer
- Qtractor is fine with HR timer, BUT only when I start a project. Once
I closed it and try to load it again (even after doing a reset) I get
"This system has no accessible HPET device (Device or resource busy)"
I now wish to do a song using HR timer for Qtractor. When recording
external MIDI devices I could mute anything else and decrease the
frames/buffer to probably get less jitter. How can I load a project
without getting this message?
I suppose that Windows and Linux HR timer also aren't good enough. I
guess the graphics frame buffer (shared RAM) or the USB MIDI device will
cause this trouble or any other hardware issue. Internal Linux there's
still no jitter for MIDI.
At least the table of my test might be interesting. On Linux I used
Qtractor 0.4.3.1418. For all timers I used kernel
2.6.29-1-multimedia-amd64 x86_64 and run jackd -Rdalsa -dhw:0 -r96000
-p512 -n2 -Xseq, but for HR timer only I used the self build kernel
18.104.22.168-rt18 x86_64 and run jackd -Rch -dalsa -dhw:0 -r96000 -p512 -n2
-Xseq. JACK is jackdmp 1.9.3. The self build kernel might be buggy.
||Cubase|HR tmr|System|PCM pl|PCM ca
500.0|| 493.0| 504.9| 505.6| 503.4| 503.2
msec +/- 0.1 msec
maxDif|| 4.8| 6.0| 7.2| 8.8| 9.9
minDif|| -2.4| -2.7| -3.2| -3.4| -3.2
Jitter|| 2.4| 3.3| 4.0| 5.4| 6.7
msec +/- 0.2 msec
At 120 BPM 1/512 note or 1/512 rest has got a length of > 3.9 msec.
A resolution of 1/512 note at 120 BPM for a sequencer is nearly good
enough to record what a good musician plays and to playback it without
quantize. I guess for a straight and grooving loop there's the need to
quantize and to have less jitter than 1/512 note.
My machine is able to do comparable productions with ASIO set to 128
samples/buffer for Windows and with JACK set to 512 frames/period, 2
periods/buffer for Linux, any other settings will cause trouble, while
for Windows it's possible to use more virtual effects and instruments etc..
This latest test is a surprise for me. For the experiences I made before
PCM timer sources seems to be better than the system timer at 1000 Hz.
Anyway all three sources didn't enable the usage of external MIDI equipment.
On this machine I only made comparable test productions for Linux and
Windows without using external MIDI equipment. For Linux I never used HR
timer before. The only trials to make music on this machine with
external MIDI equipment were done on Linux with system timer at 1000 Hz
or by using one of the PCM timer sources. I never used Windows or Linux
with HR timer to do it.
Btw. I'm a Linux only user and run Linux before I run Windows on my
machines. Windows is a test install because of troubles when making
music. No discussion because of this
Some notes to this test:
The MIDI test sequence are 8 Beats at 120 BPM with a length of 1/128
The tones are note G8 sinus tones from a Yamaha DX7's "VOICE INIT".
All notes have a velocity of 64. I imported this MIDI file done with
Qtractor by Cubase.
The measurements were done with Audacity waveform dB. Because of the
high frequency sinus tone visually separation between noise and signal
could be done more precise as when using a kick as signal. Older
measurements I did were less precise. Anyway I'm not sure that I only
have got a tolerance of +/- (2 * 0.1 msec).
64studio-users mailing list