diff options
author | Alfred E. Heggestad <aeh@db.org> | 2014-04-11 21:39:11 +0200 |
---|---|---|
committer | Alfred E. Heggestad <aeh@db.org> | 2014-04-11 21:39:11 +0200 |
commit | cfa7d320a82be9c85ec31235de4c7b79336bcbe2 (patch) | |
tree | 9aa268294e73e0a432fda5f7f7065edf6da31244 /modules/auloop/auloop.c | |
parent | 1790b152bbe7f97906603f53e64172fad273a5e7 (diff) | |
parent | 454fb8da6d1408da743e682a00d84f767610863e (diff) |
Merge pull request #6 from alfredh/ausrc_api
Ausrc api
Diffstat (limited to 'modules/auloop/auloop.c')
-rw-r--r-- | modules/auloop/auloop.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/modules/auloop/auloop.c b/modules/auloop/auloop.c index 821c5e6..b432da9 100644 --- a/modules/auloop/auloop.c +++ b/modules/auloop/auloop.c @@ -112,21 +112,21 @@ static int codec_read(struct audio_loop *al, int16_t *sampv, size_t sampc) } -static void read_handler(const uint8_t *buf, size_t sz, void *arg) +static void read_handler(const int16_t *sampv, size_t sampc, void *arg) { struct audio_loop *al = arg; int err; ++al->n_read; - err = aubuf_write(al->ab, buf, sz); + err = aubuf_write_samp(al->ab, sampv, sampc); if (err) { warning("auloop: aubuf_write: %m\n", err); } } -static bool write_handler(uint8_t *buf, size_t sz, void *arg) +static void write_handler(int16_t *sampv, size_t sampc, void *arg) { struct audio_loop *al = arg; int err; @@ -135,17 +135,15 @@ static bool write_handler(uint8_t *buf, size_t sz, void *arg) /* read from beginning */ if (al->ac) { - err = codec_read(al, (void *)buf, sz/2); + err = codec_read(al, sampv, sampc); if (err) { warning("auloop: codec_read error " - "on %u bytes (%m)\n", sz, err); + "on %zu samples (%m)\n", sampc, err); } } else { - aubuf_read(al->ab, buf, sz); + aubuf_read_samp(al->ab, sampv, sampc); } - - return true; } @@ -223,7 +221,6 @@ static int auloop_reset(struct audio_loop *al) if (err) return err; - auplay_prm.fmt = AUFMT_S16LE; auplay_prm.srate = al->srate; auplay_prm.ch = al->ch; auplay_prm.ptime = PTIME; @@ -236,7 +233,6 @@ static int auloop_reset(struct audio_loop *al) return err; } - ausrc_prm.fmt = AUFMT_S16LE; ausrc_prm.srate = al->srate; ausrc_prm.ch = al->ch; ausrc_prm.ptime = PTIME; |