[linux-audio-user] linux 2.6.1 realtime lsm, jackstart & ecasound success

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I just completed a successful run of ecasound with my guitar_mix.ecs 
(attached) on my new box. This is a 15 minutes 5 track session, 4 tracks 
from disk, one live jack input. Three outputs: stereo wav, mono wav and 
live monitor. It uses amplify and panning effects controlled by ecasound 
generic oscillators.

Details on the new box and it's current configuration:
asus a7v8x-x
athlon XP 2800+ (2071.203 MHz)
1.5GB PC2700 RAM
12GB / /dev/hda2 (actually a 40G disk)
160GB /mnt/audio/ /dev/hdc1
drives tuned
2GB swap /dev/hda1
onboard via8235
(M-Audio Delta-66 w/omni i/o -- still in old box)
(ymfpci guillemot maxisound fortissimo -- midi only -- still in old box)

debian testing (sarge)
2.6.1 (pre-empt on -- kernel.org sources compiled via make-kpkg)
     realtime-0.0.2 lsm
alsa-1.0.2 (drivers, lib, envy24control, tools)
     drivers:
     ./configure --with-isapnp=no --with-sequencer=yes --with-oss=no \
     --with-cards=dummy,virmidi,ice1712,ymfpci,via82xx
libsndfile-1.0.5
     from tar.gz. debian only had 1.0.4
jack-0.94.0
     ./configure --enable-capabilities --enable-optimize \
     --with-default-tmpdir=/mnt/ramfs/ --disable-portaudio
ecasound-2.3.2
     ./configure --enable-pyecasound --disable-oss --disable-arts \
     --with-largefile

I started jackd via jackstart like so:
jackstart -v -R -d alsa -d via82xx -r 44100 -p 128 -n 3

I run the ecasound session from a script that does some pre and post 
processing. It assembles the 4 wav input files from other wav's and cuts 
the output files down to randomly selected 5 minute chunks, fades in and 
out the beginnings and ends, normalizes and encodes the stereo wav to ogg.

The whole session ran on this onboard soundcard without xruns. I 
switched desktops numerous times in openbox3 and even switched out of X 
to tty2 to login and change my hostname back (I had changed it while in 
X and new apps weren't able to start because they couldn't connect to 
the display. duh ... 8) ). The session ran flawlessly.

I'm not exactly sure what the stats jackd puts out when run verbosely 
mean, but I know the results I saw mean I'll be able to run this session 
  with many more effects at lower latency than I could on my old box ... 
_And_ I don't have to do it as root! yay! :)

The old box is a PII 400 w/768M PC100 RAM. On that box the whole session 
including pre and post processing takes around 21 minutes. On the new 
box that overhead is cut way down with the whole session taking only 16 
minutes 20 seconds (only 1 min, 20 more than the actual recording time).

While running jackd reports load averaging (just measured visually from 
jackd output, not hard numbers) around 7.5 with max usecs ~220. On the 
old box using my delta66 I have to run at -p 256 to avoid xruns in this 
session, load averages around 22 and max usecs around 1350. Admittedly, 
much of this performance gain is related to the new hardware. But, still 
, it's very cool that all this newish stuff (lsm, latest alsa, latest 
ecasound, latest jackd, 2.6 kernel) is working well

In other testing with the via chip I've had jack running as low as -p 32 
-n 3 with just a couple jack_metro's connected. I have to go down to -p 
16 to get a few xruns. Not until -p 8 do things start to get really bad. 
/proc/interrupts says the card's on IRQ 4, too.

I have a few more things to install, configure and test before I move my 
delta66 and midi setup over to the new box. But, these initial tests are 
very exciting. I just had to share. Thank you to all the developers for 
all this excellent software. And thanks to all the list members, too. :)

-Eric Rz.
-------------- next part --------------
# eric@xxxxxxxxxx guitar_mix chainsetup file

### general 
-b:128 -B:rtlowlatency -n:guitar_mix -X -t:902.802

### audio inputs 
-a:1,6,11  -i:track1.wav
-a:2,7,12  -i:track2.wav
-a:3,8,13  -i:track3.wav
-a:4,9,14  -i:track4.wav
-a:5,10,15 -i:jack_alsa
#-a:5,10,15 -f:16,1,44100 -i alsahw,0

### audio outputs 

# live output
-a:1,2,3,4,5 -f:16,2,44100 -o jack_alsa
#-a:1,2,3,4,5 -f:16,2,44100 -o alsahw,0,0

# file outputs
### FIXME: change this output to .ogg when crop and fades work
-a:6,7,8,9,10 -f:16,2,44100 -o:/mnt/audio/in_progress/guitar_mix/stereo_out.wav
-a:11,12,13,14,15 -f:16,1,44100 -o:/mnt/audio/in_progress/guitar_mix/mono_out.wav

### chain operators and controllers

# live output 
-a:1 -erc:1,2 -epp:0  -kos:1,0,100,0.02,0 -ea:0 -kos:1,0,200,0.01,0
-a:2 -erc:1,2 -epp:0  -kos:1,0,100,0.04,0 -ea:0 -kos:1,0,200,0.02,0
-a:3 -erc:1,2 -epp:0  -kos:1,0,100,0.06,0 -ea:0 -kos:1,0,200,0.03,0
-a:4 -erc:1,2 -epp:0  -kos:1,0,100,0.08,0 -ea:0 -kos:1,0,200,0.04,0
-a:5 -erc:1,2 -epp:50 -ea:205

# stereo file out for .ogg
-a:6  -erc:1,2 -epp:0  -kos:1,0,100,0.02,0 -ea:0 -kos:1,0,200,0.01,0
-a:7  -erc:1,2 -epp:0  -kos:1,0,100,0.04,0 -ea:0 -kos:1,0,200,0.02,0
-a:8  -erc:1,2 -epp:0  -kos:1,0,100,0.06,0 -ea:0 -kos:1,0,200,0.03,0
-a:9  -erc:1,2 -epp:0  -kos:1,0,100,0.08,0 -ea:0 -kos:1,0,200,0.04,0
-a:10 -erc:1,2 -epp:50 -ea:205
### crop and fade in/out
### generate an effects preset file for this in preprocessing
#-a:6,7,8,9,10  -ea:0 -kl:1,0,100,4,0,0,10,1,290,1,300,0

# mono file out for pool
-a:11 -ea:0 -kos:1,0,200,0.01,0
-a:12 -ea:0 -kos:1,0,200,0.02,0
-a:13 -ea:0 -kos:1,0,200,0.03,0
-a:14 -ea:0 -kos:1,0,200,0.04,0
-a:15 -ea:205
### crop and fade in/out
### generate an effects preset file for this in preprocessing
#-a:11,12,13,14,15 -gc:$pos,300 -ea:100 -klg:0,0,100,4,0,0,10,1,290,1,300,0

[Index of Archives]     [Linux Sound]     [ALSA Users]     [Pulse Audio]     [ALSA Devel]     [Sox Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux