summaryrefslogtreecommitdiffstats
path: root/libao2/ao_oss.c
diff options
context:
space:
mode:
Diffstat (limited to 'libao2/ao_oss.c')
-rw-r--r--libao2/ao_oss.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libao2/ao_oss.c b/libao2/ao_oss.c
index ca8cfe108e..f818beff6d 100644
--- a/libao2/ao_oss.c
+++ b/libao2/ao_oss.c
@@ -121,7 +121,7 @@ static int init(int rate,int channels,int format,int flags){
}
#endif
- ao_data.bps=channels*rate;
+ ao_data.bps=channels;
if(format != AFMT_U8 && format != AFMT_S8)
ao_data.bps*=2;
@@ -209,6 +209,9 @@ ac3_retry:
#endif
}
+ ao_data.outburst-=ao_data.outburst % ao_data.bps; // round down
+ ao_data.bps*=rate;
+
return 1;
}