summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/dec_audio.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmpcodecs/dec_audio.c')
-rw-r--r--libmpcodecs/dec_audio.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libmpcodecs/dec_audio.c b/libmpcodecs/dec_audio.c
index c063b97cc2..ad09b1c3ab 100644
--- a/libmpcodecs/dec_audio.c
+++ b/libmpcodecs/dec_audio.c
@@ -49,6 +49,14 @@ void afm_help(){
int init_audio_codec(sh_audio_t *sh_audio)
{
+ if ((af_cfg.force & AF_INIT_FORMAT_MASK) == AF_INIT_FLOAT) {
+ int fmt = AF_FORMAT_FLOAT_NE;
+ if (mpadec->control(sh_audio, ADCTRL_QUERY_FORMAT,
+ &fmt) == CONTROL_TRUE) {
+ sh_audio->sample_format = fmt;
+ sh_audio->samplesize = 4;
+ }
+ }
if(!mpadec->preinit(sh_audio))
{
mp_msg(MSGT_DECAUDIO,MSGL_ERR,MSGTR_ADecoderPreinitFailed);