summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Raghavan <arun@asymptotic.io>2020-10-27 06:33:29 -0400
committerArun Raghavan <arun@asymptotic.io>2020-10-27 07:08:12 -0400
commitb6acd99239247aeb3dbb433508316ba709f550bb (patch)
tree2ef1cb7518a99240f61c2f9ff7ecdc96c1a20f11
parent15d90f1bf9c93cb7376ce61746bd2f6ffc6b8f1d (diff)
downloadgst-libav-b6acd99239247aeb3dbb433508316ba709f550bb.tar.gz
avauddec: Check planar-ness of frame rather than context
The check seems to be to present to verify that the decoded frame matches the format we expect. The actual check for the layout of the frame was being performed against the context instead. The check fails at least for avdec_aptx_hd, where the AVCodecContext has the sample format set to AV_SAMPLE_FMT_NONE. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/107>
-rw-r--r--ext/libav/gstavauddec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/libav/gstavauddec.c b/ext/libav/gstavauddec.c
index 91ee8e3..6801bbd 100644
--- a/ext/libav/gstavauddec.c
+++ b/ext/libav/gstavauddec.c
@@ -492,7 +492,7 @@ gst_ffmpegauddec_audio_frame (GstFFMpegAudDec * ffmpegdec,
channels = ffmpegdec->info.channels;
nsamples = ffmpegdec->frame->nb_samples;
byte_per_sample = ffmpegdec->info.finfo->width / 8;
- planar = av_sample_fmt_is_planar (ffmpegdec->context->sample_fmt);
+ planar = av_sample_fmt_is_planar (ffmpegdec->frame->format);
g_return_val_if_fail (ffmpegdec->info.layout == (planar ?
GST_AUDIO_LAYOUT_NON_INTERLEAVED : GST_AUDIO_LAYOUT_INTERLEAVED),