aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2014-09-02 17:05:28 +0000
committerDimitri Sokolyuk <demon@dim13.org>2014-09-02 17:05:28 +0000
commit56b9322a73bd3e4f9974b80fdc64bcb863913073 (patch)
tree3df8f2ddbea16ebce59c4b799ef5818aec7b5a21
parent97784697eb902b755ce58808c62efd1e911e330a (diff)
alsa: set round by init
-rw-r--r--alsa.c9
-rw-r--r--sio.c2
2 files changed, 3 insertions, 8 deletions
diff --git a/alsa.c b/alsa.c
index a1b8a3c..bc307ed 100644
--- a/alsa.c
+++ b/alsa.c
@@ -30,7 +30,7 @@ struct sio {
};
struct sio *
-init_sio(void)
+init_sio(unsigned int round)
{
struct sio *sio;
unsigned int rate = 48000;
@@ -51,6 +51,7 @@ init_sio(void)
snd_pcm_hw_params_set_format(sio->handle, sio->params, SND_PCM_FORMAT_S16_LE);
snd_pcm_hw_params_set_rate_near(sio->handle, sio->params, &rate, NULL);
snd_pcm_hw_params_set_channels(sio->handle, sio->params, RCHAN);
+ snd_pcm_hw_params_set_period_size(sio->handle, sio->params, round, 0);
rc = snd_pcm_hw_params(sio->handle, sio->params);
if (rc < 0)
@@ -69,12 +70,6 @@ init_sio(void)
return sio;
}
-unsigned int
-get_round(struct sio *sio)
-{
- return sio->frames;
-}
-
int16_t *
read_sio(struct sio *sio)
{
diff --git a/sio.c b/sio.c
index 0f6e067..ab5b5e8 100644
--- a/sio.c
+++ b/sio.c
@@ -33,7 +33,7 @@ struct sio {
};
struct sio *
-init_sio(int round)
+init_sio(unsigned int round)
{
struct sio *sio;
size_t bufsz;