summaryrefslogtreecommitdiffstats
path: root/lib/libsndio (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Handle big time_t.guenther2013-04-032-23/+23
| | | | | | | Use clock_gettime(CLOCK_MONOTONIC) instead of gettimeofday() when measuring time intervals for debugging output. ok ratchov@
* in debug mode, log successful connections, from Jan Staryratchov2013-03-131-1/+2
|
* If par->bufsz is set (it's documented as readonly since years) thenratchov2013-02-011-1/+2
| | | | reset it and set par->appbufsz instead
* some fixes, based on a diff from Martin Toft;jmc2012-12-221-5/+5
|
* Remplace aucat server by a new sndiod daemon aimed to be simplerratchov2012-11-233-6/+10
| | | | | | | | | | | | smaller and faster than aucat. It's a drop in replacement with the following exceptions that don't affect the default setup: - The sample rate and the encoding are a per-device parameters thus -r and -e options must precede the corresponding -f option - MIDI thru boxes are dynamically created and no -M option is required anymore, so -M was removed. - MIDI ports are exposed with a new ``midi/N'' name, rather than abusing MIDI thru boxes. with help from armani@, ok deraadt@
* Make the client wait for the first flow control message rather thanratchov2012-11-232-4/+4
| | | | | assuming it can send a full initial data buffer. This requires protocol version bump (but no library version bump).
* Use dedicated messages for flow control instead of abusing clock tickratchov2012-11-025-32/+69
| | | | | | messages and enable flow control for MIDI. Since this requires protocol version bump, both sndiod and libsndio must be kept up to date to work together.
* make midi code use non-blocking i/o as does audio code, in orderratchov2012-10-274-14/+101
| | | | to make both look similar
* crank SIO_MAXNFDSratchov2012-10-271-2/+2
|
* check that polled fd number is smaller than SIO_MAXNFDSratchov2012-10-271-3/+8
|
* include netinet/in.h to get htons & friends prototypesratchov2012-10-271-1/+2
|
* Improve instructions for handling non-blocking I/O with poll(2) andstsp2012-09-151-12/+30
| | | | | the mio_* functions. As per suggestion from jmc tidy up spacing in RETURN VALUES section and Xr poll(2). ok jmc ratchov
* Don't read the xrun counter before the offset in the audio ring,ratchov2012-09-141-25/+25
| | | | | otherwise we'd open a tiny time window during which a xrun may occur in turn making the sio_onmove() clock wrong during one tick.
* Have mio_open(3) document all return values in the RETURN VALUES section.stsp2012-09-141-32/+27
| | | | | And don't document the return value of mio_pollfd() twice, one instance of which was incorrect. ok jmc, ratchov
* Define empty CDIAGFLAGS for programs that use Werror.haesbaert2012-09-121-1/+2
| | | | | | Makes "make build" build with WARNINGS=Yes on amd64. ok espie
* Be nice with the server and align data packets to audio block boundaryratchov2012-09-021-1/+12
|
* Make the "default" string a valid device name that has the same effectratchov2012-05-235-15/+29
| | | | | as NULL has. This will (hopefully) simplify ports where the user passes the device string.
* The default device is selected with sndiod(1) or the AUDIODEVICEratchov2012-05-111-2/+2
| | | | | environment variable, so stop using the /dev/audio symlink which can't be used by sndiod(1) anyway
* Use "unsigned int" rather than "unsigned". No object change.ratchov2012-04-119-89/+96
| | | | suggested by deraadt@
* Correct the spelling of "transferred" and "transferring"guenther2012-02-241-2/+2
| | | | from Tobias Ulmer (tobiasu at tmux.org); ok jmc@, krw@
* formatting errors, found using freebsd's "igor";jmc2011-12-241-3/+3
|
* mention sndiod rather than aucat when talking about the serverratchov2011-12-093-35/+35
|
* Add a "device number" component in sndio(7) device names, allowing aratchov2011-11-1513-160/+218
| | | | | | | | | | | | | | | | single aucat instance to handle all audio and MIDI services. Since this partially breaks compatibility, this is a opportunitiy to fix few other design mistakes (eg ':' being used by inet6, type name vs api name confusion, etc..). This leads to the following names: type[@hostname][,unit]/devnum[.option] The device number is the minor device number for direct hardware access (ie the 'N' in /dev/audioN). For aucat, this is the occurence number of the -f (or -M) option. There's a compatibility hook to keep old names working if only one aucat server is running.
* Don't attempt to send data not available for sending yet. Analysedratchov2011-10-221-7/+9
| | | | and fixed by Remco <remco at d-compu.dyndns.org>, thanks!
* some minor tweaks concerning midicat removal; ok ratchovjmc2011-10-181-4/+4
|
* Remove midicat since aucat can now be used instead of midicatratchov2011-10-1710-102/+57
| | | | | | | | | with almost the same syntax (roughly an extra -M option). Thru boxes are created with aucat, and corresponding MIDI port names have the "aucat" prefix instead of "midithru". The old device name will still work some time for backward compatibility. ok deraadt
* restart connect(2) if it returns EINTRratchov2011-10-051-1/+4
|
* some tweaks, from Tim van der Molenjmc2011-10-041-5/+5
|
* one midicat server can export multiple midithru portsratchov2011-06-031-3/+7
|
* don't forget to send the initial clock tickratchov2011-06-031-1/+5
|
* in sio_psleep(), use an array of SIO_MAXNFDS pollfd strucures ratherratchov2011-05-092-6/+10
| | | | than a single one. No behaviour change
* use an array of backends and iterate on it, instead of inliningratchov2011-05-061-15/+22
| | | | calls to sio_<backend>_open(). No behaviour change
* remove almost two years old hack to support legacy audio/midiratchov2011-05-062-25/+8
| | | | device names
* determine the default device in backend code instead of the commonratchov2011-05-033-10/+9
| | | | | code. This is simpler as long as not all backends use the same default.
* Add missing byter order conversions in message headers. Fixes the caseratchov2011-05-022-41/+47
| | | | | when the server and the client are not of the same endianness. Found by naddy.
* set the TCP_NODELAY option for TCP connectionsratchov2011-05-021-2/+9
|
* Implement a new authentication method allowing aucat and midicat toratchov2011-04-283-8/+200
| | | | | | | | | | | | | | | | | | | work over TCP, for instance, to expose the sound card of one machine with other machines of the network. The first client generates a 128-bit random number (aka the session cookie), saves it in $HOME/.aucat_cookie and sends it to the server. Successive clients load the cookie from $HOME/.aucat_cookie and send it to the server but the server accepts only clients whose cookie matches the session cookie. When all clients are gone, the session is over, and another cookie could start a new session, and so on. TCP is enabled on the server with the new -L option, and on the client side hostnames are specified with a new optional component in the device name. hints from damien, dlg and deraadt, tweaks from jmc
* move amsg.h containing protocol defs from aucat side to libsndio side.ratchov2011-04-272-3/+110
| | | | requested by deraadt
* slightly cleanup by separating socket-specific code fromratchov2011-04-184-37/+46
| | | | protocol specific code. No behaviour change
* remove aucat(1) and midicat(1) socket paths from the FILES sections.ratchov2011-04-161-9/+3
| | | | | Besides being wrong, they are part of sndio internals and don't need to be exposed in such a high level man page.
* for unix domain socket addresses use AUCAT_PATH and MIDICAT_PATHratchov2011-04-162-5/+5
| | | | macros instead of hardcoded strings. No object change
* Since aucat supports any parameter combination sio_getcap() doesn'tratchov2011-04-161-15/+1
| | | | | need to query the server for supported parameters. So stop using the AMSG_GETCAP message, and remove it completely from the aucat protocol.
* Make aucat audio and midi backends share the same code to communicateratchov2011-04-1615-606/+627
| | | | | | with the server. As we're at it use the same protocol for midi and audio. Now, both audio and midi code use the same SNDIO_DEBUG environment variable to turn on/off DPRINTF's.
* Use mio_<backend>_ prefix for private midi-related functions and putratchov2011-04-125-91/+87
| | | | | them in files named mio_<backend>.c No behaviour change.
* Clean up function naming: use sio_<backend>_ prefix for privateratchov2011-04-085-219/+233
| | | | | audio-related functions and put them in files named sio_<backend>.c No behaviour changes.
* tweak previous;jmc2010-11-061-2/+3
|
* make sio_onvol(3) return a integer exposing whether a volume knobratchov2010-11-064-148/+27
| | | | | is available for the stream. As we're at it, remove macros and functions that are neither used nor documented.
* add forgotten ``static''ratchov2010-10-231-2/+2
|
* use MODE_xxx and XRUN_xxx macros everywhere, and zap correspondingratchov2010-10-212-12/+4
| | | | AMSG_xxx macros, which in turns simplifies the code
* don't try to get the current stream postion when the device is stopped,ratchov2010-09-171-9/+9
| | | | | and don't generate clock ticks (ie don't invoke the sio_onmove(3) call-back).