Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-05-19 | Fix integer overflow in block size calculation. | Alexandre Ratchov | |
Fixes truncation of contents of files with rate above 64kHz generate in off-line mode (i.e. -n option). | |||
2019-02-21 | Use reallocarray in place of malloc(a * b) to handle possible | Alexandre Ratchov | |
overflow in multiplication of malloc argument. | |||
2018-05-13 | Add missing pledge(). From Jesper Wallin <jesper at ifconfig.se>. | Alexandre Ratchov | |
Thanks! | |||
2017-11-07 | prefill with silence the buffer where cmap_copy() stores samples | Alexandre Ratchov | |
rather than the file buffer. Fixes initialized data being treated as recorded samples when resampling or format conversions are involved but mono->stereo conversion is disabled. | |||
2017-11-03 | Prefill rec buffer with silence. This is necessary because certain | Alexandre Ratchov | |
channels don't get samples, for instance when mono->stereo conversion is disabled. | |||
2017-07-20 | Fix integer overflow that would causes >12 hours files | Alexandre Ratchov | |
to not properly relocate. Found with coverity. | |||
2017-01-03 | Assert we're not freeing buffers we didn't allocate (DEBUG mode). | Alexandre Ratchov | |
2017-01-03 | Log play volume together with other play parameters. | Alexandre Ratchov | |
2016-09-30 | Set the device rate to the calculated rate. Otherwise, the signal | Alexandre Ratchov | |
may endup resampled twice. | |||
2016-09-30 | Remove unnecessary includes. From Michael W. Bombardieri <mb at ii.net>. | Alexandre Ratchov | |
2016-09-27 | Don't rely on the resampling code to calculate the number of samples | Alexandre Ratchov | |
to process, as it may produce one extra sample (to handle accumulation of fractional samples), which would cause access to one sample past the end of the buffer and crash aucat. Fix this by limiting the number of samples processed to a single block. Found by and help from Michael W. Bombardieri <mb at ii.net>. Thanks. | |||
2016-06-07 | Add -g and -p options to control device and file start position. | Alexandre Ratchov | |
2016-06-07 | Add resamp_getcnt() routine to calculate the exact number of samples | Alexandre Ratchov | |
that would be consumed and produced by the sampler rate converter. Use it to avoid partial samples that are not properly handled. Fixes last samples of certain files causing aucat to abort. | |||
2016-06-02 | remove forgotten debug printfs | Alexandre Ratchov | |
2016-06-02 | set exit status to 1 if -n is used without -i and -o | Alexandre Ratchov | |
2016-05-31 | Pass hr:min:sec:frame.cent to dev_mmcloc() directly and remove the | Alexandre Ratchov | |
useless intermediate conversion from and to 2400-th of seconds. | |||
2016-05-31 | To store MMC position, use samples (at device rate) as time units | Alexandre Ratchov | |
instead of 2400-ths of second. No behaviour change. | |||
2016-05-28 | Fix file block size rounding and ensure it's large enough to store a | Alexandre Ratchov | |
full audio block. | |||
2016-05-27 | When resampling, use the exact resampling factor instead of the ratio | Alexandre Ratchov | |
between input and output block sizes. This was inherited from sndiod, but is not required for files because they are continuous streams of samples and do not need to be split in blocks of equal duration. This change makes playback/recording rate match exactly the requested sample rate. | |||
2016-05-27 | Flush rec buffer if there's less than one block space left and refill | Alexandre Ratchov | |
play buffer if there's less than one block of data left. This is the correct condition in the general case. No behaviour change, as all input/output is multiple of the block size. | |||
2016-05-27 | Simplify slot_fill() and slot_flush(). No behaviour change | Alexandre Ratchov | |
2016-05-27 | Make resamp_do() get the exact number input and output samples and | Alexandre Ratchov | |
provide routines to calculate them. This way we don't rely on it to calculate the bytes procuded/consumed anymore. No behaviour change. | |||
2016-05-26 | Make format conversion routines return the number of frames | Alexandre Ratchov | |
consumed from both input and output buffers. No behaviour change. | |||
2016-01-29 | Check that byte order is native only if we're using more than one | Alexandre Ratchov | |
byte per sample, check that samples are lsb-aligned only if there's padding. Fixes unsupported parameters not being detected if compiled in 24-bit mode and sndiod is not running. | |||
2016-01-10 | trailing spaces, fit in 80 columns | Alexandre Ratchov | |
2015-11-09 | Remove xfree(). From Michael W. Bombardieri. | mmcc | |
ok ratchov@ | |||
2015-08-27 | fix typos in comments and error messages | Alexandre Ratchov | |
2015-05-16 | Call slot_stop() after the play buffer is drained to properly cleanup | Alexandre Ratchov | |
the slot. Fixes periodic glitches occurring after eof is reached, and then playback restarted with a MMC-relocate and MMC-start. | |||
2015-01-21 | fix macro breakage and update usage(); | Jason McIntyre | |
2015-01-21 | Simplify internals and rewrite file header parsing code: | Alexandre Ratchov | |
- remove -M, -t, -w, -C, -x flags that don't make sense anymore - make "-j off" the default (sndiod already does the job) - don't limit the number of played/recorded files. - add support for floating-point encoded files. - add support for apple .aiff and sun/next .au files | |||
2015-01-16 | Replace <sys/param.h> with <limits.h> and other less dirty headers where | Theo de Raadt | |
possible. Annotate <sys/param.h> lines with their current reasons. Switch to PATH_MAX, NGROUPS_MAX, HOST_NAME_MAX+1, LOGIN_NAME_MAX, etc. Change MIN() and MAX() to local definitions of MINIMUM() and MAXIMUM() where sensible to avoid pulling in the pollution. These are the files confirmed through binary verification. ok guenther, millert, doug (helped with the verification protocol) | |||
2013-11-18 | remove unused variables | Alexandre Ratchov | |
2013-11-18 | add missing prototypes | Alexandre Ratchov | |
2013-11-12 | remove bogus legacy server-specific bits that cause confusion | Alexandre Ratchov | |
2012-12-03 | Remove server capability description from the documentation and from | Alexandre Ratchov | |
the usage string, and just say that for historic reasons aucat behaves like sndiod. with help from jmc@ | |||
2012-11-23 | Since there's no sndiod -> aucat link anymore, allow aucat to be run | Alexandre Ratchov | |
in server mode even when not invoked as sndiod. This allows aucat and the new sndiod daemon to live together in /usr/bin, which makes easy to quickly compare sndiod and aucat (and spot possible regressions) without having to modify /usr/bin. | |||
2012-10-27 | don't stat & test sndio home directory since we never use it. | Alexandre Ratchov | |
2012-10-27 | don't (re-)define SNDIO_USER and SNDIO_PRIO if they are already defined, | Alexandre Ratchov | |
this way they can be defined at compilation time | |||
2012-06-27 | Uniformize error messages printing, use err() instead of fprintf() | Alexandre Ratchov | |
when appropriate. From Michael W. Bombardieri <mb at ii.net> | |||
2012-06-19 | Remove hidden options that are not needed any more, | Alexandre Ratchov | |
from Remco <remco at d-compu.dyndns.org>. Thanks | |||
2012-05-23 | Make the "default" string a valid device name that has the same effect | Alexandre Ratchov | |
as NULL has. This will (hopefully) simplify ports where the user passes the device string. | |||
2012-04-11 | Use "unsigned int" rather than "unsigned". No object change. | Alexandre Ratchov | |
suggested by deraadt@ | |||
2012-02-09 | Crank the default buffer size to 160ms (ie 7680 frames at 48kHz). | Alexandre Ratchov | |
Workarounds stuttering caused by something hogging the cpu in kernel mode and preventing sndiod from running at time. ok deraadt | |||
2012-01-26 | Make the default rate 48kHz and the default block size 10ms. These | Alexandre Ratchov | |
settings ensure video players and programs using MTC are smooth by default. Thanks to all who tested. | |||
2012-01-10 | When a sub-device is created (-s), check if a hardware | Alexandre Ratchov | |
device was already created (-f) before trying to use the default one, otherwise all sub-devices end up attached to the default device. Noticed by peters at schwertfisch.de, thanks! | |||
2011-12-09 | fix usage string: remove -M from aucat and -l from aucat and sndiod | Alexandre Ratchov | |
from jmc | |||
2011-12-09 | add a new sndiod audio/midi daemon and hide aucat server-specific | Alexandre Ratchov | |
options. | |||
2011-12-02 | don't use a "server" flag, just check if we expose sub-devices | Alexandre Ratchov | |
2011-12-02 | reuse midi-control code to implement midi thru boxes and remove | Alexandre Ratchov | |
the old midithru implementation; less code, less bugs. As a side effect, midi output doesn't implement running status "compression" any more. | |||
2011-11-20 | Move mmc/mtc and volume control bits from struct aproc to struct | Alexandre Ratchov | |
dev. Allows volume settings to be saved while the device is kept closed. Besides that, no behabiour changes. |