diff options
author | Sreerenj Balachandran <sreerenj.balachandran@intel.com> | 2018-04-16 14:37:21 -0800 |
---|---|---|
committer | Sreerenj Balachandran <sreerenj.balachandran@intel.com> | 2018-04-16 14:44:15 -0800 |
commit | 3f90235aaa36d78aada6adb59c3e333bfe9865a8 (patch) | |
tree | 91f6c184ea0a5c77de9452210ebc156bf44edc40 | |
parent | dc41c25d30f7e201ed0dc8ea878c0c02c5b47b44 (diff) |
msdk: jpegdec: Fix non-interleaved sample decode
Using the default value (InterleavedDec == MFX_SCANTYPE_UNKNOWN)
causing issues with non-interleaved sample decode. Ideally the usage
of MFXVideoDECODE_DecodeHeader should fix these type of issue, but
it seems to be not. But hardcoding the InterleaveDec to
MFX_SCANTYPE_NONINTERLEAVED
is fixing the problem and fortunately msdk seems to be taking care of
Interleaved samples
too .So let's hardcode it for now.
https://bugzilla.gnome.org/show_bug.cgi?id=793787
-rw-r--r-- | sys/msdk/gstmsdkmjpegdec.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/msdk/gstmsdkmjpegdec.c b/sys/msdk/gstmsdkmjpegdec.c index 6ae02d691..ef377751e 100644 --- a/sys/msdk/gstmsdkmjpegdec.c +++ b/sys/msdk/gstmsdkmjpegdec.c @@ -62,6 +62,14 @@ static gboolean gst_msdkmjpegdec_configure (GstMsdkDec * decoder) { decoder->param.mfx.CodecId = MFX_CODEC_JPEG; + + /* HACK to make sure MSDK won't crash while handling non-interleaved samples */ + /* setting MFX_SCANTYPE_UNKNOWN (== 0) causing issues for + non-interleaved samples. Usage of MFXVideoDECODE_DecodeHeader + also doesn't seems to fix the issue. But even if we hardcode + the InterleaveDec to MFX_SCANTYPE_NONINTERLEAVED, msdk seems to be taking care + of Interleaved samples, so let's hardcode it for now */ + decoder->param.mfx.InterleavedDec = MFX_SCANTYPE_NONINTERLEAVED; return TRUE; } |