sad

simple audio daemon
git clone git://git.2f30.org/sad.git
Log | Files | Refs | LICENSE

commit 27ca3577ee8f7d295af940e7b66b99ef4996d079
parent f5d1284c5a39bc5fff33639a9f2c5c1432ac7cf1
Author: sin <sin@2f30.org>
Date:   Fri Dec 26 16:56:50 +0000

Pull rate and chans from the file itself

Diffstat:
vorbis.c | 17+++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/vorbis.c b/vorbis.c @@ -22,6 +22,7 @@ static int vorbisopen(const char *name) { int r; + vorbis_info *vi; fp = fopen(name, "r"); if (!fp) { @@ -36,8 +37,20 @@ vorbisopen(const char *name) return -1; } - /* TODO: pull out params from file */ - return output->open(16, 44100, 2); + vi = ov_info(&vf, -1); + if (!vi) { + warnx("ov_info: failed"); + goto err0; + } + + r = output->open(16, vi->rate, vi->channels); + if (r < 0) + goto err0; + + return 0; +err0: + ov_clear(&vf); + return -1; } static int