On 12/19/2011 05:11 PM, Csillag Kristof wrote:
Hi,
After fixing the jack 32bit/64bit issue, now finally I can run kontakt5
1. As standalone exe, using WINE / WineASIO
2. As a VST instrument, using WINE / WineASIO / SAVIHost
3. As a VST instrument, using Festige / FST.
All approaches can show the GUI, and play some sound.
Great!
Indeed. Congrats.
Are you using the free-of-charge Kontakt player or the full K5 version?
I can see the following differences:
- While approach 1 and 2 give me 2 output channels, approach 3 gives me
8, 16 or 64 output channels (depending on which DLL I pick). I only need
2 for stereo..
- I would think that approach 1 and 2 involve emulating more stuff than
strictly necessary, so I would like to stick to approach 3, if possible.
There'll be performance differences when it comes to low latency.
running it under wine will require an extra context-switch. I don't know
if WineASIO works around this, but I think it does not.
Not too long ago there was an email on LAD by Paul Davis who explained
ardour's native VST/wine strategy. IIRC the whole app was run in the
context of wine to forego the extra context-switch; but I don't know the
details. He may chime in.
http://old.nabble.com/Kontakt-Spikes-td32614159.html
May actually have some insight as well..
- Only approach 3 gives me direct JACK midi input.
(But I guess I can
solve this with a2jmidid for the other two approaches, too.)
Where there's a will, there's a way :)
* * *
Anyway, what comes next now is to
1. Set this up in a networked way: host1 has the physical midi input and
audio HW, host2 is running the VST. (I have already done this with
jack2, but now I have to re-do this for jack1.)
2. Tune the system to decent latency/performance; currently I get a lot
of xruns...
It'd be great if you could document this setup or write a blog-post when
you're done.
Well, most of it is already there scattered over the last couple of
emails so it should not be much work.
* * *
Is there an up-to-date guide somewhere explaining
2 months out of business and I lost track of those :)
- how should I choose my kernel version ,
For a professional studio setup you'll want a realtime-kernel for
reliability (it must be the time of the year again, I wrote this two
times today already).
http://www.kernel.org/pub/linux/kernel/projects/rt/
I have good stable experience with 3.0.6-rt17 on 64bit; there were some
b0rked versions after that and I have not yet tried 3.0.12-rt30 nor
3.2-rc5-rt8.
- what to compile into my kernel,
Maybe you can get away with some stock kernel, from Arch or AVLinux;
otherwise:
CONFIG_TREE_PREEMPT_RCU=y
CONFIG_PREEMPT_RCU=y
CONFIG_PREEMPT=y
CONFIG_PREEMPT_RT_FULL=y
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_HPET_TIMER=y
disable CONFIG_RT_GROUP_SCHED
or walk through
http://trac.jackaudio.org/wiki/Cgroups
Avoid *_TRACE and *DEBUG* and *_ACCOUNTING options in general; although
many of those e.g. CONFIG_LATENCYTOP=y or CONFIG_PM_DEBUG=y don't have
negative impact unless you explictly enable them during runtime; this is
usually documented in the help for the option.
http://old.nabble.com/IO-scheduler-for-realtime-audio--td30624684.html
might be helpful as well.
- how to configure my kernel run-time,
boot option 'threadirqs'; and Rui's rtirq:
http://alsa.opensrc.org/Rtirq
debian already takes are of /etc/security/limits.d/audio.conf
CPU frequency scaling works fine on most systems these days - even on
low latency systems. But PCI-bus or FSB freq. scaling is still often an
issue. Chipsets vary a lot WRT to that. In doubt: disable it in the BIOS
(look for sth like 'C1E halt state' and/or 'EIST' and disable them).
- how to patch / configure wine,
- how to configure jack
Should work fine OOTB.
- etc
.... to get the best possible audio performance?
"best" is somewhat ambiguous in that context. I assumed you meant a
reliable low-latency system.
(I know this gets talked about all the time, but
everything is changing
so fast, and half of the info I find the net is already obsolete;
indeed.
I am not asking you to repeat what is is already
stated, but to point me
to the relevant and current docs.)
too late :)
Cheers!
robin
Thank you for your help:
Kristof