summaryrefslogtreecommitdiff
path: root/libavcodec/dxva2_mpeg2.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/dxva2_mpeg2.c')
-rw-r--r--libavcodec/dxva2_mpeg2.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/libavcodec/dxva2_mpeg2.c b/libavcodec/dxva2_mpeg2.c
index 049fa48be7..e0b2efa927 100644
--- a/libavcodec/dxva2_mpeg2.c
+++ b/libavcodec/dxva2_mpeg2.c
@@ -20,9 +20,10 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "libavutil/log.h"
#include "dxva2_internal.h"
-#define MAX_SLICES (SLICE_MAX_START_CODE - SLICE_MIN_START_CODE + 1)
+#define MAX_SLICES 1024
struct dxva2_picture_context {
DXVA_PictureParameters pp;
DXVA_QmatrixData qm;
@@ -233,9 +234,11 @@ static int dxva2_mpeg2_decode_slice(AVCodecContext *avctx,
s->current_picture_ptr->hwaccel_picture_private;
unsigned position;
- if (ctx_pic->slice_count >= MAX_SLICES)
+ if (ctx_pic->slice_count >= MAX_SLICES) {
+ avpriv_request_sample(avctx, "%d slices in dxva2",
+ ctx_pic->slice_count);
return -1;
-
+ }
if (!ctx_pic->bitstream)
ctx_pic->bitstream = buffer;
ctx_pic->bitstream_size += size;