Hi :)

first of all, it seems to be solved, but borderline. I'll go on with 
test-producing on Linux.

If you reply, keep in mind that I don't receive mails send by the 64 
Studio dev list, because I disabled this.

*Is it Qtractor*? If so, I guess it's not because of Qtractor alone, 
anyway there are other issues that belong to Qtractor. Is it the kernel? 
Is it Jack audio? It doesn't seem to be ALSA MIDI alone, because I sang 
to an audio track and get troubles, when there was no MIDI used.

Here's a Link to the report about the experiment I did yesterday:

http://lists.64studio.com/pipermail/64studio-users/2009-May/003022.html

This is what I did today:

64 Studio 3.0-beta3
2.6.29-1-multimedia-amd64
jackdmp version 1.9.2
spinymouse-s...@64studio:~$ jackd -Rdalsa -dhw:0 -r48000 -p64 -n2
Qtractor Version 0.4.1 without VST support
spinymouse-s...@64studio:~$ qtractor
Audio: PCI sound card  TerraTec EWX 24/96 (Envy24)
MIDI : USB MIDI device swissonic

Track 1: MIDI  ch  2 connected to external 19" drum sample module Alesis 
D4 Dry Acoustic
Track 2: MIDI  ch 10 FluidSynth DSSI plugin Acoustic drum set.SF2
Track 3: Audio Left D4/ Right SF2

When playing from bar 2 to bar 4 by transport loop enabled, no recorded 
audio track, but the external and FluidSynth kick in unison, it starts 
phasing and after a few cycles it becomes not only an early reflection 
like, but real delay effekt. The two kicks get completely out of sync, 
but this only seems to happen, while transport loop is enabled.

I made a test song, I gave 4 to the floor (constantly Note On (36) C1/ 
Velocity 64/ Duration 00:00:00.060 = 1/16), a clip (also known as 
segment or part for other sequencers) has a length of 2 bars, the clips 
starts at bar 2. I repeated the first clips 104 times, to get a song 
that starts with 2.01.000 (2 Seconds @ 120 BPM) and ends with 212.01.000 
(7 Minutes and 2 Seconds @ 120 BPM). Punch in at 1.04.000 (1.5 Seconds) 
and punch out at 212.01.000 (7 Minutes and 2 Seconds).

I tried to recorded a WAV Microsoft Signed 24-Bit, for playback Sinc 
(Best Quality) was chosen, but Qtractor didn't record.

After that I launched Jack by
spinymouse-s...@64studio:~$ jackd -Rdalsa -dhw:0 -r48000 -p128 -n2

The same, even if I tried only to record the D4, like I did yesterday, 
nothing is recorded, the track is armed, record for the transport is 
enabled too, all buses etc. are fine, the mixer shows a signal, but 
nothing is recorded to the track.

The test song today based on the test song from yesterday, so I loaded 
the version from yesterday and tried to record and it worked.

Okay, I played a little bit with buses and dedicated outputs, but reset 
everything, maybe a bug by Qtractor, once you changed something and you 
reset it again, you can't go on with this project.

Completely new, resp ...

spinymouse-s...@64studio:~$ jackd -Rdalsa -dhw:0 -r48000 -p64 -n2
spinymouse-s...@64studio:~$ qtractor

I loaded the song from yesterday and saved it by another name.

I made a test, recording is fine.

It's

Track 1: MIDI  ch  2 connected to external 19" drum sample module Alesis 
D4 Dry Acoustic
Track 2: Audio empty track

I added Track 3: MIDI  ch 10 FluidSynth DSSI plugin Acoustic drum 
set.SF2, in the meanwhile I needed to re-edit Program change for the 
Alesis, because it was set to (none) by random. I don't report all the 
seg faults, because once everything is set Qtractor is fine, but doing 
the setup is a PITA.

It's still possible to record.

I copied the clip for the Alesis to the Track for the FluidSynth DSSI. 
The clip (4 to the floor) is from 2.01.000 to 4.01.000.

Again I copied the clips 104 times.

Now recording the Alesis still is fine, I set connections to record the 
Alesis and FluidSynth DSSI.

Punch in and out are set the same as for my first test today, mixing 
levels are fine tuned and here we go, starting a punch in and out 
recording at punch in position.

Phew, now everything seems to be fine, excepted that the GUI added some 
off-beats (I didn't listen while recording).

By the way GNOME Terminal with 2 tabs and Qtractor were the only running 
desktop applications (excepted of the panel), while recording.

The recording connections for Jack audio and ALSA MIDI were:

Qtractor Master/out_1 --> system   playback_1
Qtractor Master/out_2 --> system   playback_2
system   capture_1    --> Qtractor Master/in_1
Qtractor Master/out_2 --> Qtractor Master/in_2
129:Qtractor 1:Master --> 20:USB Device 0:MIDI 1

For playback I set them to:

Qtractor Master/out_1 --> system   playback_1
Qtractor Master/out_2 --> system   playback_2
129:Qtractor 1:Master --> 20:USB Device 0:MIDI 1

1. I muted both MIDI tracks and listened to the Audio track, left Alesis 
D4 and right FluidSynth DSSI, but set to mono by an external console. I 
stopped at bar 146, there were no unwanted off-beats, there was no early 
reflection or delay like effect. The phasing changed a little bit.

2. I un-muted the MIDI tracks, kept everything at mono. I stopped at bar 
66, while playing I sometimes listened to the left or right channel only 
and muted and un-muted the Alesis D4. The phasing wasn't stable, but it 
didn't become an early reflection or delay like effect.

3. Audacity

Should be      / left D4 is     / right DSSI is
= 10500.000 ms / ~ 10501.670 ms / ~ 10500.510 ms
= 11000.000 ms / ~ 11001.750 ms / ~ 11000.510 ms
= 11500.000 ms / ~ 11501.775 ms / ~ 11500.510 ms
= 12000.000 ms / ~ 12001.760 ms / ~ 12000.510 ms

The external D4
max. delay + 1.775 ms
min. delay + 1.670 ms

In other words
constant delay + 1.670 ms
jitter         + 0.105 ms

DSSI
constant delay + 0.510 ms
no jitter

Resumee:
If I can keep a latency of 2.67 ms, external sources are borderline 
fine, jitter seems not to be an issue, but the constant delay. Listening 
to the 4 to the floor about a wide range of bars, it might be, that 
there will be more jitter, maybe there might be negative delay too, but 
assumed that there will be a range of - 0.5 ms to + 2.0 ms for recorded 
external sources, beeing able to give the tracks a (negative) delay of - 
0.5 ms, there would be a range of - 1.0 ms to +1.5 ms, so the difference 
to DSSIs will have a range about - 1.5 ms to + 1.0 ms. Assumed that 
there will be a relative constant delay around + 1.7 ms for external 
sources, the same negative delay given to recorded tracks of external 
sources will make external sources,resp. the track and DSSIs nearly 
perfectly fit together. The better choise would be to give DSSIs a 
correction, so DSSIs and external equipment can be recorded on the same 
track.

Maybe guitar, vocals etc. will have less delay, if so, it will be fine. 
It's not clear what's the lion's share here. Is it the USB MIDI output 
delay or is it the audio input delay?

It can be said, that a latency of 10.7 ms makes it impossible to make 
music, while a latency of 2.67 ms seems to make it possible to make 
music, even without any correcton. I didn't test 5.33 ms, but it can be 
expected that this latency will be extrem borderline and needs the 
option to give tracks positiy or negative delay, an option that should 
be available anyway, e.g. to give even 100% to the beat synced drum 
tracks a negative delay, to get a positive stress for the groove. I also 
didn't test decreased latencies, maybe they are fine too.

It also can be said, that for people that only will use internal, 
virtual synth and FX, there seems to be absolutley no problem with sync. 
The DSSI had a constant delay of 0.51 ms, so if all DSSIs have the same 
delay, it's not delay anymore.

Cheers,
Ralf
_______________________________________________
64studio-devel mailing list
[email protected]
http://lists.64studio.com/mailman/listinfo/64studio-devel

Reply via email to