aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/output/ao_plugin.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/output/ao_plugin.c b/src/output/ao_plugin.c
index 3907448ae..4c69592ff 100644
--- a/src/output/ao_plugin.c
+++ b/src/output/ao_plugin.c
@@ -201,6 +201,12 @@ audioOutputAo_openDevice(void *data, struct audio_format *audio_format)
audioOutputAo_closeDevice(ad);
}
+ /* support for 24 bit samples in libao is currently dubious,
+ and until we have sorted that out, resample everything to
+ 16 bit */
+ if (audio_format->bits > 16)
+ audio_format->bits = 16;
+
format.bits = audio_format->bits;
format.rate = audio_format->sample_rate;
format.byte_format = AO_FMT_NATIVE;