[MPlayer-cvslog] r25223 - trunk/libao2/ao_null.c
uau
subversion at mplayerhq.hu
Sat Dec 1 06:17:08 CET 2007
Author: uau
Date: Sat Dec 1 06:17:08 2007
New Revision: 25223
Log:
Fix ao_null with float samples
ao_null accepts float input, but the code calculating ao_data.bps only
checked for 1-byte formats and used samplesize 2 for everything else.
Because ao_null uses the bps value in its timing calculations this
effectively made "playback" advance at half the correct speed.
Fixed by calculating samplesize with af_fmt2bits() instead.
Modified:
trunk/libao2/ao_null.c
Modified: trunk/libao2/ao_null.c
==============================================================================
--- trunk/libao2/ao_null.c (original)
+++ trunk/libao2/ao_null.c Sat Dec 1 06:17:08 2007
@@ -50,7 +50,7 @@ static int control(int cmd,void *arg){
// return: 1=success 0=fail
static int init(int rate,int channels,int format,int flags){
- int samplesize = (format == AF_FORMAT_U8 || format == AF_FORMAT_S8) ? 1: 2;
+ int samplesize = af_fmt2bits(format) / 8;
ao_data.outburst = 256 * channels * samplesize;
// A "buffer" for about 0.2 seconds of audio
ao_data.buffersize = (int)(rate * 0.2 / 256 + 1) * ao_data.outburst;
More information about the MPlayer-cvslog
mailing list