diff --git a/framework/codec/Android/mediaCodecDecoder.cpp b/framework/codec/Android/mediaCodecDecoder.cpp index 04d579d96..1e336cbce 100644 --- a/framework/codec/Android/mediaCodecDecoder.cpp +++ b/framework/codec/Android/mediaCodecDecoder.cpp @@ -49,6 +49,10 @@ namespace Cicada { int mediaCodecDecoder::init_decoder(const Stream_meta *meta, void *voutObsr, uint64_t flags) { + if (meta->pixel_fmt == AF_PIX_FMT_YUV422P || meta->pixel_fmt == AF_PIX_FMT_YUVJ422P) { + return -ENOSPC; + } + if (!checkSupport(meta->codec, flags, max(meta->height, meta->width))) { return -ENOSPC; } diff --git a/framework/codec/Apple/AppleVideoToolBox.cpp b/framework/codec/Apple/AppleVideoToolBox.cpp index ebc45e795..c1db587ec 100644 --- a/framework/codec/Apple/AppleVideoToolBox.cpp +++ b/framework/codec/Apple/AppleVideoToolBox.cpp @@ -110,6 +110,10 @@ namespace Cicada { int AFVTBDecoder::init_decoder(const Stream_meta *meta, void *voutObsr, uint64_t flags) { + if (meta->pixel_fmt == AF_PIX_FMT_YUV422P || meta->pixel_fmt == AF_PIX_FMT_YUVJ422P) { + return -ENOSPC; + } + mPInMeta = unique_ptr(new streamMeta(meta)); ((Stream_meta *) (*(mPInMeta)))->extradata = new uint8_t[meta->extradata_size]; memcpy(((Stream_meta *) (*(mPInMeta)))->extradata, meta->extradata, ((Stream_meta *) (*(mPInMeta)))->extradata_size);