summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Raghavan <arun@asymptotic.io>2020-10-27 06:33:29 -0400
committerTim-Philipp Müller <tim@centricular.com>2020-10-29 17:54:51 +0000
commitb16d1e804fcf077fc7bddffa256fa585400e44f9 (patch)
tree91475ce12b744bdcdb87484bce23d56abfc1a628
parent08d223e7b1d1d13db7699aa180836da0b60e8522 (diff)
downloadgst-libav-b16d1e804fcf077fc7bddffa256fa585400e44f9.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/108>
-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),