avcodec/ffv1enc: Slice combination is unsupported

We always write minimal slices, the size calculation is wrong in some
corner cases but as its always 1x1 (minus1) we can for now just hard-code it

This helps with ticket 5548

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2023-10-06 22:23:33 +02:00
parent 417b163c00
commit 7d514655bf
No known key found for this signature in database
GPG Key ID: B18E8928B3948D64

View File

@ -925,8 +925,8 @@ static void encode_slice_header(FFV1Context *f, FFV1SliceContext *sc)
put_symbol(c, state, (sc->slice_x +1)*f->num_h_slices / f->width , 0); put_symbol(c, state, (sc->slice_x +1)*f->num_h_slices / f->width , 0);
put_symbol(c, state, (sc->slice_y +1)*f->num_v_slices / f->height , 0); put_symbol(c, state, (sc->slice_y +1)*f->num_v_slices / f->height , 0);
put_symbol(c, state, (sc->slice_width +1)*f->num_h_slices / f->width -1, 0); put_symbol(c, state, 0, 0);
put_symbol(c, state, (sc->slice_height+1)*f->num_v_slices / f->height-1, 0); put_symbol(c, state, 0, 0);
for (j=0; j<f->plane_count; j++) { for (j=0; j<f->plane_count; j++) {
put_symbol(c, state, sc->plane[j].quant_table_index, 0); put_symbol(c, state, sc->plane[j].quant_table_index, 0);
av_assert0(sc->plane[j].quant_table_index == f->context_model); av_assert0(sc->plane[j].quant_table_index == f->context_model);