OpenBSD CVS

CVS log for src/usr.bin/aucat/Attic/safile.c


[BACK] 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.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.