On 9/20/05, Matt Garman <[EMAIL PROTECTED]> wrote:
>
> I installed jack (jack-audio-connection-kit), and configured it, as
> far as I can tell, correctly.  At least I can get multiple audio
> streams multiplexed together.
>
> However, the performance leaves something to be desired: it is
> *extremely* prone to skipping, if my system is under any kind of
> load.  For example, doing an "emerge search <package>" will usually
> cause my XMMS playback to skip.  *Moving a window* will almost
> always cause a skip---not just skip, but freeze for the whole time
> the window is being moved.  Even worse, whenever the screensaver
> comes on, the player skips.  And while the screensaver is active,
> the music playback will regularly skip every couple seconds.  The
> kicker?  My screensaver is just a blank screen!
>
> I'd like to think that my system is powerful enough to do "normal"
> desktop use without skipping: Athlon XP 2500, 1 GB RAM.
>
> Any thoughts as to why the jack performance is so shoddy?
>
> Thanks!
> Matt
>
> --
> Matt Garman
> email at: http://raw-sewage.net/index.php?file=email
> --
> gentoo-user@gentoo.org mailing list
>
>

Matt,
   I'm very sorry but I somehow never saw this thread. Please accept
my apologies.

   Did you get this working better?

   Anyway, I'd say that your machine is certainly fast enough to do
good audio work, barring some specific chipset or driver issue which
most likely won't be the case. In my experience there are usually just
a few things required to get this working.

1) First, let's determine whether you need a new kernel. su to root
and run Jack and some simple Jack apps. I'd recommend alsaplayer since
it's simple, small and very stable:

(Note - this is best done through QJackCtl, but you can do it at the
command line if you want.) Choose latency numbers that make sense for
your card and your needs. I run at 128/2:

jackd -R -dalsa -r44100 -dhw -p128 -n2

Then with Jack running run alsaplayer

alsaplayer -o jack

Tell alsaplayer to play a wave file or play a CD for a better, longer
test. Any skipping?

If you have skipping at this point then you most likely need a
real-time kernel. My 32-bit machines do not. They run fine with
gentoo-sources, but my amd64 doesn't run well and needed a new
realtime kernel to work right.

2) Assuming that your tests as root go well, then emerge realtime-lsm.
This may require a new kernel if you don't have the right Linux
Securities stuff enabled:

[ ] Enable access key retention support
   [*] Enable different security models
   [ ]   Socket and Networking Security Hooks
  <M>   Default Linux Capabilities
  < >   Root Plug Support
  < >   BSD Secure Levels
   [ ]   NSA SELinux Support

Reboot into your new kernel if necessary, emerge realtime-lsm at this point.

3) Create a group for realtime access. Here's mine:

lightning linux # cat /etc/group | grep realtime
realtime:x:600:mark
lightning linux #

4) Modprobe realtime at the command line:

modprobe realtime gid=600 any=1

5) Assuming this all goes well, redo your tests with alsaplayer and
make sure it's working as a user.

   Enabling realtime operation thorugh realtime-lsm is CRITICAL to
making this work well over time. For instance this morning I'm
rebuilding glibc as part of an emerge sync / emerge world operation.
At the same time I'm doing email on the web as well as playing music
with Aqualung on my AMD64 machine. Jack is running at 128/2 and I can
go for hours without any xruns. True, we are still working bugs out of
the newest kernel (2.6.14-rc3-rt10 as of this morning) but things are
starting to work pretty well even on AMD64. My gentoo-sources 32-bit
machines can go for days with out an xrun. (Granted, very good RME
sound cards that cost as much as the machine are being used....)

   Hope this helps. Write back if you want or need more info.

Cheers,
Mark

-- 
gentoo-user@gentoo.org mailing list

Reply via email to