Linux Audio the way to go!?

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
When kernel 2.6.23 is released (real soon!), all distros will have Ingo Molnar's CFQ "realtime patch/queue" as soon as they include this kernel, since that "rt patch" is included in mainstream. It will be very interesting to compare it to Con Kolivas 2.6.22ck1...

Cheers,
Tom ;)
 
Hi folks.

The Ingo Molnar rt-scheduler won't better than the Con Kolivas patch. Of course it is better than the standard preempted kernel. The sound gets really worse compared to ck. Anyhow -- sooner or later we have to live with the Molnar scheduler.
I tried to figure out what's going on with the help of Ingo (a real nice guy btw). Or better Ingo tried to do it with me supporting him ;) . Ingo led me through a debugging exercise without producing a useful result.
I have to admit though that it really got to complicated after a while. With the debugging switched on I encountered heavy underruns,
which proved that I am really running at the system limits with the current settings. At this point we stopped the investigations.

Perhaps there is is a slight chance that due to further kernel improvements the kernel as a whole catches up with my latest best setup.


A comment refering to some earlier posts:
Instead of schedtool you should try "chrt" to change the scheduling method and rt-priorities. You should have it installed by default, if I recall it correctly.

Cheers
\Klaus
 
RT 2.6.22

Hello all,

After the encouraging message of Tom last week I continued today to get my new PC going with the RT 2.2.22 kernel.

First thing was to collect 9 updates, including something about libc. Tom advised to first run 'dpkg -i schedtool_1.2.9-4_i386.deb'. This is exactly the command where errors came in two weeks ago. Today I got the messages: 'reading database ...., preparing ..., unpacking ..., setting up schedtool (1.2.9-4)', so that looked OK to me. Schedtool is now located in '/usr/bin' and not in '/usr/local/bin' but that is no problem I guess.

After that I went back to point II.4 of the Wiki which also did not work last time. Today 'cd .xmms' worked straightaway and also 'gedit config'. So now point II.7: I made the script as indicated. After a few mistakes that I could figure out myself I got XMMS running using this script. My new PC is still not connected with my Twindac so I did not check yet for music coming out.

The final thing I want to do first is to get SRC to work. First the easy way with srcbat. I downloaded src.tar and did 'tar -xvvf src.tar'. I checked that '/usr/bin/srcbat' is now available. When I started 'srcbat' in a directory with 15 WAV's the program stopped after about 10 seconds. I skipped the line that shuts down the monitor and then saw that the filenames are read correctly but the conversion stops immediately.

In the line that actually starts the resampling I saw the command 'sndfile-resample'. I tried to locate it but could not find it. Looking on Internet I found that it is part of 'libsamplerate'. I installed this with 'synaptic package manager' but that made no difference when running 'srcbat' again.

After that I tried compiling it with the procedure listed in 'INSTALL'. However, already at the first command './configure' I got the error 'C-compiler cannot create executables' (?). The commands 'make' and 'make check' produced only simple errors ('no targets, no makefile', 'no rule to make target').

It seems that I made progress with 'schedtool' (for unknown reasons), but I am stuck again with 'libsamplerate'. I cannot find back how I did this previously on my laptop. Any advice?


Kind regards,
Eddie
 
Re: Klaus: DSP Room Correction etc.

EddieV said:

It seems that I made progress with 'schedtool' (for unknown reasons), but I am stuck again with 'libsamplerate'. I cannot find back how I did this previously on my laptop. Any advice?



Hi Eddie.

The issue you're encountering is some kind of inconsistency of libraries and binaries.
It might help if you compile all the binaries manually. You also should have a look at the binaries what libraries these are using. You can do this with the "ldd" command.

Slowly but surely we're entering the problem that Con stopped
working on his scheduler. :mad:

@TOM: Did you try the Molnar patch?


xp9433 said:
I seem to remember you mentioning a futher development step being to include capabilities for room correction/active crossovers.

Considering your linux operation I assume you have been having dialogue/comparing notes with Uli about his Linux/BruteFIR room correction application?

I did install the trial version of Accurate and played around with it.
I think it'll be quite easy to generate the filters.
Right now I am back on the HW-track. I need to fix my multi channel
DAC and AMP setup first before continuing on the software side.
(My time to work on my Audio projects incl. Linux projects is currently unfortunately very limited. )
I am also looking at multichannel soundcards, such as the ones Radian brought up earlier. The issue here is that I need a new PC first to use these. The new PC would be another project to start up with.
In this context I am also thinking about setting up a pure audio machine ( no fans, no hd, no screen) remotely controlled via ethernet, booting and using an external stack of harddisks.

Cheers
\Klaus
 
compiling with auto-apt

I'm surprised I didn't mention this earlier.

On my fresh debian installs I'll use auto-apt to help build up all the missing packages. It makes compiling much easier. auto-apt shouldn't be run all the time, but for first time programs and compiles, it can be a life saver.

I haven't been on redhat/fedorka systems in awhile, but they may also have an rpm based auto-apt that might work. YMMV.

This should probably be entered into the wiki.

There are many ways to do the same thing, but here are some generic steps to start with:

#make sure your system is up to date:
apt-get update ; apt-get upgrade

#install auto-apt:
apt-get install auto-apt
apt-get clean

#set up auto-apt to run (this is SLOW):
auto-apt update
auto-apt updatedb
auto-apt update-local

#go into X11 if you haven't already:
startx

#run your program:
auto-apt run some_program_here

When auto-apt finds a missing package, it will pop up a window stating so. It will also ask if you want to install it automatically. I've had problems with this and generally open a new shell window and install it manually. From there you can hit "cancel" in the pop up window and the program will keep happily running.

Not all packages accessed by the program that auto-apt catches are really needed to run (like the FORTRAN ones). These can be ignored. If you are new to all this, install them anyways to just make auto-apt happy and it easier for the others to troubleshoot.

To use auto-apt with a debian source file:
auto-apt run dpkg --build ....

To use auto-apt with a generic source tar file:
tar zxvf myprogram-source.tar.gz
cd myprogram-source
auto-apt run ./configure --options_go_here
auto-apt run make
auto-apt run make install

What I use for a generic/vanilla kernel recompile:
tar jxvf linux*.tar.bz2
cd linux-* #the extracted directory
auto-apt run make mrproper
auto-apt run make menuconfig
auto-apt run make all
auto-apt run make modules_install

As it should be rather obvious by now, "auto-apt run" is the prefix to anything and everything that might be missing a package.

Good luck.
 
re: gcc, if you can't create executables, you are probably missing the linker. gcc compiles to object code, then it is converted into another format like ELF.

re: machines, you could use compactflash and mini-itx for a silent machine. or USB or ethernet booting.

re: RPM distros, i think Debian and friends have the most powerful updaters. i gave up in disgust after trying yum.
 
libsamplerate

Hello all,

Since I was unable to compile 'libsamplerate' I decided to follow the suggestion from Klaus. I used 'ldd' on my laptop to see which libraries are used by 'sndfile-resample'. Then I checked if all of them were present on my new PC. Two of them were not: 'libm.so.6' and 'libc.so.6'. So I copied them and two executables to the identical directories as on the laptop.

Then I did again the test with 'srcbat' and it seems to have worked nicely. All wav's were put into /tmp after about half an hour and their size slightly bigger than the 44 kHz version. I played a few tracks with XMMS using my headphone and it sounded really good.

Next steps to be performed: test 'src2' and get 'brutus' going on my loudspeaker system.

It took me 3 weeks to get music out of my new PC and this whole story gives a big dip in my confidence in Linux.


Kind regards,
Eddie
 
Hi Eddie.

Good to see that you managed to get it work.

I took you just 3 weeks to get it going!?!? Considering that you're working on a non-mainstream Linux setup it looks great to me. ;)

Though you should put your project into the right perspective instead of getting frustrated:
The basic Ubuntu-installation won't take more than an hour to install. Under normal conditions your USB DAC and xmms will produce sound after one hour.

Of course it's getting more complicated if you need to install development environments for several applications, compile them and make them work. (Believe me - Google ran hot during my early days working on the subject)
However - you can learn and actually enjoy it a lot more by doing it all by yourself.

Next time it'll take you one day ( -- if you took notes about what you've done. )

Cheers
 
All my research led me to RME, if we talk serious sound quality (on commercial products of course). Lynx is not supported by ALSA.
You need to load the new OSS. Unfortunately brutefir is AFAIK not
supporting OSS.

I hope that I get my 2nd USB DAC finally finished this weekend.
I'll try it this way first. Before I go any further with multichannel commercial cards.
ALSA and brutefir are supposed to support a 2nd USB card.
That'll do fo a pair of subwoofers.

Cheers
 
Dear soundcheck,

thank you for the reply. I agree with the RME, and I have no problem with the price - if I can make it work. Consequently, for the proof of concept (or my abilities ;-)) I would prefer a cheaper card.

i have contemplated several cheaper cards, but I was told that their synchronization is PITA. How do you propose to deal with it?

M
 
Yes it is great. I have a USB Dac with the PCM2707 and a 8xTDA1543 and it is not in the same league with my modified Club3D (Buegears B-inspirer).
Right now I am working on a separate power supply for the card and a TendClock implementation. I posted a link to my web album with the mods some time ago in this thread.

Greets,
Klaus
 
mefistofelez said:
Dear SunRa and Radian,

thank you for your reply. unfortunately, the sound-card does not appear to be available in the U.S.

M

Radian said the Club3D Theathron DTS soundcard is also branded as the BGears B-Enspirer, available in the USA
here and here .

Radian said:
Yes it is great. I have a USB Dac with the PCM2707 and a 8xTDA1543 and it is not in the same league with my modified Club3D (Buegears B-inspirer).
Right now I am working on a separate power supply for the card and a TendClock implementation. I posted a link to my web album with the mods some time ago in this thread.

I'm very interested in this. Perhaps may be worth starting a separate thread, as Windows users would also be interested!
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.