Commit Graph

13 Commits

Author SHA1 Message Date
landry
1aad8ff35d Explicitely add libtool to BUILD_DEPENDS as jack autohell uses macros from
libtool.m4. Builds fine with ports libtool otherwise.
2010-06-23 17:06:44 +00:00
jakemsr
d58e7b8aad * clean up sndio(7) driver
* update README.OpenBSD
* add patches to let it build on gcc2 archs (from Sebastian Reitenbach)
* disable audio(4) driver
2010-06-07 01:44:38 +00:00
jakemsr
1d211a19db sndio_driver.c:
- make it work with 24-bit formats (as with azalia and envy)
- use the correct member of struct sio_par for the buffer size
- check both poll(2) revents as well as calculated buffer positions
to know when we can read/write data
sun_driver.c:
- make it work with 24-bit formats (as with azalia and envy)
jackd/engine.c:
- don't spam error messages every time a client quits
add README.OpenBSD
2009-12-09 10:15:08 +00:00
jakemsr
7f381452e1 fixes for the sndio backend:
* deal with sio_{read,write} possibly moving less data than requested
* check for out-of-sync conditions and restart if they occur

makes running jackd over aucat much more reliable
2009-03-13 23:06:14 +00:00
merdely
3d06380085 Fix build on alpha.
ok jakemsr@
2009-02-04 00:02:16 +00:00
jakemsr
9fecd9e1e1 don't use dynamic SIMD instructions. 2009-01-12 10:45:01 +00:00
jakemsr
5f8648a46b - update to 0.116.1, mostly stability/reliability fixes
- add sndio backend

playback under aucat server is pretty solid.  for full-duplex,
starting aucat with 'aucat -l -b 2048' and jackd with just
'jackd -d sndio' seems to work best for me.  we want low latency
anyway, right ;)
2009-01-11 10:51:45 +00:00
ajacoutot
57dccad1f5 - add a patch from upstream SVN to allow compiling with DEBUG
"if it works for you" jakemsr@ (maintainer)
2009-01-02 22:47:45 +00:00
jakemsr
781094ad81 maintainence update, plus
- fix build on alpha by not comparing a va_list to NULL.  problem
  noticed and fix tested by merdely@.
- fix possible 100% cpu usage in full-duplex mode
- fix net client/server
- add @bin markers to PLIST
2008-06-28 05:49:30 +00:00
jakemsr
ef451787b0 update to 0.111.2.1169
- don't bother trying to fix compiler optimization flag tests.  they're
badly broken/linux spcific, and we don't use them anyway.
- the net source client became a "real" client (executable), instead of
an "in process" client (plugin)
- previous sun_driver patches accepted upstream, plus:
* fix cycle timing in duplex mode by moving calculations and function
calls out of the poll() synchronization loop
* shorten xrun and silence writing/reading messages
* remove unused variables
* attempt to stop continuous playback underruns in duplex mode that are
caused by the capture buffer overrunning
* try harder to make sure we have pristine buffers after
sun_driver_start()
* use native endian audio encodings
* report a delay when poll() times out, instead of effectively running
a null cycle


now jack works on my r10k sgi :)
2008-04-22 09:34:58 +00:00
jakemsr
56ff75c711 - restore the 10 second sleep in the watchdog thread by using
nanosleep(2) instead of usleep(3), which is limited to 1 second.

- stop clients from getting "zombified" after connection graph
changes by ignoring errors from read(2)ing data that isn't used.
2008-03-30 08:46:15 +00:00
jakemsr
a785de8f2c sun_driver tweaks:
- in each call to sun_driver_write(), bzero the buffer that will be
  written to the audio device.  stops jackd from "buzzing" or
  "humming" when the last samples from a client weren't true silence.
- consistently use bzero instead of memset to zero out buffers.
- add missing returns in error conditions.
2008-03-24 21:45:14 +00:00
jakemsr
9e62d5e750 import jack (jack-audio-connection-kit)
JACK is a low-latency audio server, written for POSIX conformant
operating systems. It can connect a number of different applications to
an audio device, as well as allowing them to share audio between
themselves. Its clients can run in their own processes (ie. as normal
applications), or can they can run within the JACK server (ie. as a
"plugin").

JACK was designed from the ground up for professional audio work, and
its design focuses on two key areas: synchronous execution of all
clients, and low latency operation.

ok kili@
2008-03-24 03:01:28 +00:00