}
void ff_mpeg1_encode_slice_header(MpegEncContext *s){
- put_header(s, SLICE_MIN_START_CODE + s->mb_y);
+ if (s->height > 2800) {
+ put_header(s, SLICE_MIN_START_CODE + (s->mb_y & 127));
+ put_bits(&s->pb, 3, s->mb_y >> 7); /* slice_vertical_position_extension */
+ } else {
+ put_header(s, SLICE_MIN_START_CODE + s->mb_y);
+ }
put_qscale(s);
put_bits(&s->pb, 1, 0); /* slice extra information */
}