mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-13 21:28:01 +02:00
mpeg12: Support decoding dimensions that are a multiple of 4096
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
7a6beedd3f
commit
878e5bd6f5
@ -2001,8 +2001,6 @@ static int mpeg1_decode_sequence(AVCodecContext *avctx,
|
|||||||
|
|
||||||
width = get_bits(&s->gb, 12);
|
width = get_bits(&s->gb, 12);
|
||||||
height = get_bits(&s->gb, 12);
|
height = get_bits(&s->gb, 12);
|
||||||
if (width <= 0 || height <= 0)
|
|
||||||
return -1;
|
|
||||||
s->aspect_ratio_info = get_bits(&s->gb, 4);
|
s->aspect_ratio_info = get_bits(&s->gb, 4);
|
||||||
if (s->aspect_ratio_info == 0) {
|
if (s->aspect_ratio_info == 0) {
|
||||||
av_log(avctx, AV_LOG_ERROR, "aspect ratio has forbidden 0 value\n");
|
av_log(avctx, AV_LOG_ERROR, "aspect ratio has forbidden 0 value\n");
|
||||||
@ -2312,6 +2310,11 @@ static int decode_chunks(AVCodecContext *avctx,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case PICTURE_START_CODE:
|
case PICTURE_START_CODE:
|
||||||
|
if (s2->width <= 0 || s2->height <= 0) {
|
||||||
|
av_log(avctx, AV_LOG_ERROR, "%dx%d is invalid\n", s2->width, s2->height);
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
}
|
||||||
|
|
||||||
if(s->tmpgexs){
|
if(s->tmpgexs){
|
||||||
s2->intra_dc_precision= 3;
|
s2->intra_dc_precision= 3;
|
||||||
s2->intra_matrix[0]= 1;
|
s2->intra_matrix[0]= 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user