aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/decoder/ffmpeg_plugin.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/decoder/ffmpeg_plugin.c b/src/decoder/ffmpeg_plugin.c
index b24685980..02a1f836b 100644
--- a/src/decoder/ffmpeg_plugin.c
+++ b/src/decoder/ffmpeg_plugin.c
@@ -273,7 +273,12 @@ ffmpeg_decode_internal(struct ffmpeg_context *ctx)
codec_context->channels = 2;
}
- audio_format.bits = (uint8_t)16;
+#if LIBAVCODEC_VERSION_INT > ((51<<16)+(41<<8)+0)
+ audio_format.bits = (uint8_t) av_get_bits_per_sample_format(codec_context->sample_fmt);
+#else
+ /* XXX fixme 16-bit for older ffmpeg (13 Aug 2007) */
+ audio_format.bits = (uint8_t) 16;
+#endif
audio_format.sample_rate = (unsigned int)codec_context->sample_rate;
audio_format.channels = codec_context->channels;