alsa-utils/axfer
Takashi Sakamoto c2f79d9fdf axfer: add support for blocking data transmission operation of alsa-lib PCM API
In alsa-lib PCM API, snd_pcm_read[i|n]() and snd_pcm_write[i|n]() are used
to transfer data frames from/to hardware. When a handler is not opened with
specific flags, these functions perform blocking operation; i.e. the
function call doesn't return till all of request number of data frames are
actually handled, or call is interrupted by Unix signals, or PCM substeam
corrupts due to hardware reasons.

This commit adds support for this type of data transmission. For cases that
requested data frames are not processed by container interface, this commit
adds internal cache mechanism to handle rest of data frames in next timing.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2018-11-13 12:04:32 +01:00
..
test axfer: add a unit test for mapper interface 2018-11-13 12:04:28 +01:00
container-au.c axfer: add support for a container of Sparc AU format 2018-11-13 12:04:23 +01:00
container-raw.c axfer: add support for a container of raw data 2018-11-13 12:04:25 +01:00
container-riff-wave.c axfer: add support for a container of Microsoft/IBM RIFF/Wave format 2018-11-13 12:04:22 +01:00
container-voc.c axfer: add support for a container of Creative Tech. voice format 2018-11-13 12:04:23 +01:00
container.c axfer: add support for a container of raw data 2018-11-13 12:04:25 +01:00
container.h axfer: add support for a container of raw data 2018-11-13 12:04:25 +01:00
frame-cache.c axfer: add support for blocking data transmission operation of alsa-lib PCM API 2018-11-13 12:04:32 +01:00
frame-cache.h axfer: add support for blocking data transmission operation of alsa-lib PCM API 2018-11-13 12:04:32 +01:00
main.c axfer: add a parser for command-line options 2018-11-13 12:04:30 +01:00
Makefile.am axfer: add support for blocking data transmission operation of alsa-lib PCM API 2018-11-13 12:04:32 +01:00
mapper-multiple.c axfer: add support for a mapper for multiple target 2018-11-13 12:04:28 +01:00
mapper-single.c axfer: add support for a mapper for single target 2018-11-13 12:04:27 +01:00
mapper.c axfer: add support for a mapper for multiple target 2018-11-13 12:04:28 +01:00
mapper.h axfer: add support for a mapper for multiple target 2018-11-13 12:04:28 +01:00
misc.h axfer: add a parser for command-line options 2018-11-13 12:04:30 +01:00
subcmd-list.c axfer: add a sub-command to print list of PCMs/devices 2018-11-13 12:04:20 +01:00
subcmd.h axfer: add a sub-command to print list of PCMs/devices 2018-11-13 12:04:20 +01:00
xfer-libasound-irq-rw.c axfer: add support for blocking data transmission operation of alsa-lib PCM API 2018-11-13 12:04:32 +01:00
xfer-libasound.c axfer: add support for blocking data transmission operation of alsa-lib PCM API 2018-11-13 12:04:32 +01:00
xfer-libasound.h axfer: add support for blocking data transmission operation of alsa-lib PCM API 2018-11-13 12:04:32 +01:00
xfer-options.c axfer: add a parser for command-line options 2018-11-13 12:04:30 +01:00
xfer.c axfer: add support to transfer data frames by alsa-lib PCM APIs 2018-11-13 12:04:31 +01:00
xfer.h axfer: add support to transfer data frames by alsa-lib PCM APIs 2018-11-13 12:04:31 +01:00