ffv1enc: fix integer overflow with high resolutions and lots of slices.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
594b1fcb28
commit
f049729e61
@ -1313,9 +1313,8 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
|
|||||||
|
|
||||||
for(i=1; i<f->slice_count; i++){
|
for(i=1; i<f->slice_count; i++){
|
||||||
FFV1Context *fs= f->slice_context[i];
|
FFV1Context *fs= f->slice_context[i];
|
||||||
uint8_t *start = pkt->data + (pkt->size-used_count)*i/f->slice_count;
|
uint8_t *start = pkt->data + (pkt->size-used_count)*(int64_t)i/f->slice_count;
|
||||||
int len = pkt->size/f->slice_count;
|
int len = pkt->size/f->slice_count;
|
||||||
|
|
||||||
ff_init_range_encoder(&fs->c, start, len);
|
ff_init_range_encoder(&fs->c, start, len);
|
||||||
}
|
}
|
||||||
avctx->execute(avctx, encode_slice, &f->slice_context[0], NULL, f->slice_count, sizeof(void*));
|
avctx->execute(avctx, encode_slice, &f->slice_context[0], NULL, f->slice_count, sizeof(void*));
|
||||||
|
Loading…
Reference in New Issue
Block a user