Up to [local] / src / usr.bin / aucat
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.23, Wed Jan 13 10:02:52 2010 UTC (14 years, 4 months ago) by ratchov
Branch: MAIN
CVS Tags: HEAD
Changes since 1.22: +1 -1 lines
FILE REMOVED
Rename s/safile/siofile/g, missed when libsa was renamed to libsndio. Fixes crashes in full-duplex mode on vax and hp300.
Revision 1.22 / (download) - annotate - [select for diffs], Tue Jan 12 21:42:59 2010 UTC (14 years, 4 months ago) by ratchov
Branch: MAIN
Changes since 1.21: +10 -1 lines
Diff to previous 1.21 (colored)
check for bogus clock ticks sent by the device; helps tracking bugs in device drivers.
Revision 1.21 / (download) - annotate - [select for diffs], Mon Jan 11 13:06:32 2010 UTC (14 years, 4 months ago) by ratchov
Branch: MAIN
Changes since 1.20: +7 -3 lines
Diff to previous 1.20 (colored)
When resuming from suspend, prime play buffers with silence, otherwise the client would underrun by more than its own buffer size, which currently is not allowed (causes the client to deadlock). Set the minimum client buffer size to two blocks. Single block buffers don't work properly yet. with help from jakemsr
Revision 1.20 / (download) - annotate - [select for diffs], Sun Jan 10 21:47:41 2010 UTC (14 years, 4 months ago) by ratchov
Branch: MAIN
Changes since 1.19: +44 -1 lines
Diff to previous 1.19 (colored)
Add traces to help tracking subtle timing bugs often causing underuns and overruns; such bugs are hard to debug with ktrace or a debugger. They are also handy to debug or monitor code using aucat. To enable traces, compile aucat with ``make DEBUG=-DDEBUG'' and use the -d option multiple times. ok jakemsr
Revision 1.19 / (download) - annotate - [select for diffs], Thu Nov 5 08:36:48 2009 UTC (14 years, 6 months ago) by ratchov
Branch: MAIN
Changes since 1.18: +4 -2 lines
Diff to previous 1.18 (colored)
in rpipe_done (wpipe_done), all buffers must be detached before deleting the writer (reader) otherwise the later could trigger rpipe_done again.
Revision 1.18 / (download) - annotate - [select for diffs], Sun Sep 27 11:51:20 2009 UTC (14 years, 7 months ago) by ratchov
Branch: MAIN
Changes since 1.17: +4 -52 lines
Diff to previous 1.17 (colored)
remove all debug traces
Revision 1.17 / (download) - annotate - [select for diffs], Sat Sep 19 16:30:10 2009 UTC (14 years, 8 months ago) by ratchov
Branch: MAIN
Changes since 1.16: +2 -2 lines
Diff to previous 1.16 (colored)
if the device is dying, don't try to stop it, otherwise this would trigger the code to free() it, which will try to stop it, and so on
Revision 1.16 / (download) - annotate - [select for diffs], Sat Sep 19 15:56:04 2009 UTC (14 years, 8 months ago) by ratchov
Branch: MAIN
Changes since 1.15: +2 -2 lines
Diff to previous 1.15 (colored)
tag the device as stopped even if sio_stop() failed (ie. device is disconnected). This way, when it's ``file'' structure is free()'d, we don't try to stop it again.
Revision 1.15 / (download) - annotate - [select for diffs], Fri Aug 28 06:30:17 2009 UTC (14 years, 8 months ago) by ratchov
Branch: MAIN
Changes since 1.14: +9 -1 lines
Diff to previous 1.14 (colored)
top device before closing it. It's necessary to ensure that if we are using another instance of aucat as device, the server closes the connection before we open a new one.
Revision 1.14 / (download) - annotate - [select for diffs], Sat Jul 25 10:52:19 2009 UTC (14 years, 9 months ago) by ratchov
Branch: MAIN
Changes since 1.13: +8 -8 lines
Diff to previous 1.13 (colored)
fix comments, remove no longer needed declaration, reorder includes from Thomas Pfaff
Revision 1.13 / (download) - annotate - [select for diffs], Sat Jul 25 08:44:27 2009 UTC (14 years, 9 months ago) by ratchov
Branch: MAIN
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (colored)
Currently midi capable programs can control midi hardware, but cannot cooperate with other programs. The aim of this change is to allow any program to send midi data to other programs as they were midi hardware. For instance, this change should solve the longstanding problem of using a midi sequencer with software synthesizers. More precisely: - new midicat(1) utility (actually hardlink to aucat(1)). it creates software midi thru boxes, allowing programs to send midi messages to other programs as they were midi(4) hardware. - new midi api in libsndio (see mio_open(3)), to access midi(4) devices and midicat(1) sockets in a uniform way. - new device naming scheme <service>:<unit>[.<option>], common to audio and midi. - new sndio(7) manual describing concepts and naming The current audio device naming still works, but people having scripts or configuration files containing device names could read the sndio(7) man page and slowly start updating device names. discussed with jakemsr@ and deraadt@, help form jmc@
Revision 1.12 / (download) - annotate - [select for diffs], Fri Feb 6 08:26:34 2009 UTC (15 years, 3 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE,
OPENBSD_4_6,
OPENBSD_4_5_BASE,
OPENBSD_4_5
Changes since 1.11: +2 -8 lines
Diff to previous 1.11 (colored)
move error messages reported to user into main()
Revision 1.11 / (download) - annotate - [select for diffs], Wed Feb 4 20:35:14 2009 UTC (15 years, 3 months ago) by ratchov
Branch: MAIN
Changes since 1.10: +8 -3 lines
Diff to previous 1.10 (colored)
if there are too many connections, stop acceping new ones rather than exit()ing with ``too many open files'' fatal error
Revision 1.10 / (download) - annotate - [select for diffs], Fri Jan 23 17:38:15 2009 UTC (15 years, 3 months ago) by ratchov
Branch: MAIN
Changes since 1.9: +7 -7 lines
Diff to previous 1.9 (colored)
spacing + typo fix from Matt Jibson <matt.jibson(at)gmail.com>
Revision 1.9 / (download) - annotate - [select for diffs], Mon Dec 29 17:59:08 2008 UTC (15 years, 4 months ago) by ratchov
Branch: MAIN
Changes since 1.8: +3 -1 lines
Diff to previous 1.8 (colored)
make the code "more correct": add reference counters to aproc structures so we can keep a pointer to the device. Beside some simplifications, this allows to easily handle the situation where the audio device desappears. No change in the behaviour.
Revision 1.8 / (download) - annotate - [select for diffs], Sat Dec 27 14:18:26 2008 UTC (15 years, 4 months ago) by ratchov
Branch: MAIN
Changes since 1.7: +5 -5 lines
Diff to previous 1.7 (colored)
do not call exit(1) if sio_start(3) or sio_stop(3) fail. The error will be catched later in the main loop.
Revision 1.7 / (download) - annotate - [select for diffs], Fri Dec 26 13:29:31 2008 UTC (15 years, 4 months ago) by ratchov
Branch: MAIN
Changes since 1.6: +3 -5 lines
Diff to previous 1.6 (colored)
*** empty log message ***
Revision 1.6 / (download) - annotate - [select for diffs], Wed Dec 17 07:19:27 2008 UTC (15 years, 5 months ago) by ratchov
Branch: MAIN
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)
add a writable ``appbufsz'' field to the sa_par structure, containing the program-part of the buffer size, ie the part that is subject to underruns. Useful for apps like cdio(1) that don't have their own rings, or to apps that have a minimum ring size constraint. Setting the ``bufsz'' parameter becomes deprecated. ok jakemsr
Revision 1.5 / (download) - annotate - [select for diffs], Sun Dec 7 17:10:41 2008 UTC (15 years, 5 months ago) by ratchov
Branch: MAIN
Changes since 1.4: +6 -99 lines
Diff to previous 1.4 (colored)
When resampling, don't require the sample frequency to be an integer. This removes the arithmetic constraint between the sample frequency and the block size and all the associated code. Now aucat can work in server mode with any block size. ok jakemsr
Revision 1.4 / (download) - annotate - [select for diffs], Sat Nov 8 10:40:52 2008 UTC (15 years, 6 months ago) by ratchov
Branch: MAIN
Changes since 1.3: +6 -4 lines
Diff to previous 1.3 (colored)
set the default device to /dev/audio for legacy mode. From Thomas Pfaff <tpfaff _at_ agderlink.no> and tweaks from me
Revision 1.3 / (download) - annotate - [select for diffs], Fri Nov 7 21:01:15 2008 UTC (15 years, 6 months ago) by ratchov
Branch: MAIN
Changes since 1.2: +102 -13 lines
Diff to previous 1.2 (colored)
expose the block size in the sndio API by making par->round writable and thus remove the ugly rate <-> block-size table from sio_setpar(3). Handle the block size negociation in aucat(1), since it has few constrains the code is overally simpler. ok jakemsr@, major crank suggested by deraadt@
Revision 1.2 / (download) - annotate - [select for diffs], Mon Oct 27 00:26:33 2008 UTC (15 years, 6 months ago) by ratchov
Branch: MAIN
Changes since 1.1: +28 -28 lines
Diff to previous 1.1 (colored)
rename libsa to libsndio requested by many, "just go for it" deraadt@
Revision 1.1 / (download) - annotate - [select for diffs], Sun Oct 26 08:49:44 2008 UTC (15 years, 6 months ago) by ratchov
Branch: MAIN
add minimal server capability to aucat(1). When started in server mode, it listens on an unix socket and mixes/demultiplexes any number of full-duplex streams, doing necessary format conversions and resampling on the fly. programs can use the new libsa(3) library to play and record audio. The library provides a very simple API to connect to the audio server; if aucat(1) isn't running, it uses the audio(4) driver transparently instead.