summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/ad_ffmpeg.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmpcodecs/ad_ffmpeg.c')
-rw-r--r--libmpcodecs/ad_ffmpeg.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libmpcodecs/ad_ffmpeg.c b/libmpcodecs/ad_ffmpeg.c
index 2e484f92aa..13f56e054d 100644
--- a/libmpcodecs/ad_ffmpeg.c
+++ b/libmpcodecs/ad_ffmpeg.c
@@ -78,6 +78,15 @@ static int init(sh_audio_t *sh_audio)
lavc_context->extradata_size);
}
+ // for QDM2
+ if (sh_audio->codecdata_len && sh_audio->codecdata && !lavc_context->extradata)
+ {
+ lavc_context->extradata = av_malloc(sh_audio->codecdata_len);
+ lavc_context->extradata_size = sh_audio->codecdata_len;
+ memcpy(lavc_context->extradata, (char *)sh_audio->codecdata,
+ lavc_context->extradata_size);
+ }
+
/* open it */
if (avcodec_open(lavc_context, lavc_codec) < 0) {
mp_msg(MSGT_DECAUDIO,MSGL_ERR, MSGTR_CantOpenCodec);