AutoStatic wrote:DJ Barney wrote:Apologies if that sounds over critical in any way. Some may prefer the more technical path. But I'm concerned that I see some confusion out there about what is the major strength of Linux when it comes to music production ... real time capability, customisation, and on the most part up to date hardware support if one is prepared to wait a little for patches (or can write their own).
No need to apologize! I really wasn't aware of the method you're describing and to me it looks like a very simple way to build a real-time kernel for Debian. Maybe I'll add it to the Wiki, but first I'll give it a testdrive myself
.
I'd be very interested to see if you get the same results
And if the method described in the Wiki is too technical than I should work on making it easier to understand what each step does. The method in the Wiki does allow you to make some changes in the kernel config that could improve the Linux audio experience. That's why I started this thread actually, I really want to know what people tweak in their kernel configs regarding Linux audio. But new methods to actually build a real-time kernel are always welcome.
The method on the wiki looks to be one of the most succinct and accurate descriptions I've seen. One of the wider problems is that Linux kernel development has become mature (as of quite a few years ago some would say). The Linux kernel is now a big busy fast moving place, but possibly at the expense of accurate documentation when it comes to kernel development. There are a lot of outdated and just plain inaccurate or misleading guides out there. the best one of found is here -
http://users.wowway.com/~zlinuxman/Kernel.htm
That identifies one method that I've never found described anywhere ...
It used to be a real pain to create a "lean and mean" custom kernel: one which only contains the function necessary to execute on your specific machine. It can easily take all day to customize the kernel configuration to get everything you need but nothing that you don't need, and it is easy to leave something out that you need but don't realize that you need. However, starting with kernel version 2.6.32, a new kernel configuration option is available called "make localmodconfig". Initialize the .config file, either by copying it from the stock kernel config file in /boot or by running "make menuconfig" with no previous .config file, then run the preceding command. It runs "lsmod" to find all the modules loaded on the currently running system. It will then read all the Makefiles to map which CONFIG enables which module. It will then read the Kconfig files to find the dependencies and selects that may be needed to support a CONFIG. Finally, it reads the .config file and removes any module ("=m") that is not needed to enable the currently loaded modules. With this tool, you can strip the .config file of all drivers which are not useful in your machine, and it will take much less time to build the kernel. 80% compile time reduction seems to be typical.
I have not tried it but it sure sounds like it beats going through config options manually
There must be many other methods and tweaks that can get latency right down below 10ms. For example the Mixxx site says this ...
For best scratch performance with vinyl control, your system must be able to handle setting the latency to 10ms or less ...
( Source:
http://mixxx.org/wiki/doku.php/vinyl_control )
So although I can use vinyl control I'm only just on the threshold of being able to use my Serrato record at full performance..
Another thing. If you ask me technical configuration advice or methods should all have references to
Kernel.org sources. Selecting any of the Gitweb links on that page will allow searching of up to date Kernel sources and documentation. This is especially important when setting up a professional production system, such as those used in recording studios or in live performances. It's just as important as, for example, being a factory manager who has to insure real-time performance of robots on his production line ... otherwise his car does not get built properly. Same with a music track.