|
|
@ -4838,6 +4838,8 @@ static int pre_estimate_motion_thread(AVCodecContext *c, void *arg){ |
|
|
|
static int estimate_motion_thread(AVCodecContext *c, void *arg){ |
|
|
|
static int estimate_motion_thread(AVCodecContext *c, void *arg){ |
|
|
|
MpegEncContext *s= arg; |
|
|
|
MpegEncContext *s= arg; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ff_check_alignment(); |
|
|
|
|
|
|
|
|
|
|
|
s->me.dia_size= s->avctx->dia_size; |
|
|
|
s->me.dia_size= s->avctx->dia_size; |
|
|
|
s->first_slice_line=1; |
|
|
|
s->first_slice_line=1; |
|
|
|
for(s->mb_y= s->start_mb_y; s->mb_y < s->end_mb_y; s->mb_y++) { |
|
|
|
for(s->mb_y= s->start_mb_y; s->mb_y < s->end_mb_y; s->mb_y++) { |
|
|
@ -4864,6 +4866,8 @@ static int mb_var_thread(AVCodecContext *c, void *arg){ |
|
|
|
MpegEncContext *s= arg; |
|
|
|
MpegEncContext *s= arg; |
|
|
|
int mb_x, mb_y; |
|
|
|
int mb_x, mb_y; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ff_check_alignment(); |
|
|
|
|
|
|
|
|
|
|
|
for(mb_y=s->start_mb_y; mb_y < s->end_mb_y; mb_y++) { |
|
|
|
for(mb_y=s->start_mb_y; mb_y < s->end_mb_y; mb_y++) { |
|
|
|
for(mb_x=0; mb_x < s->mb_width; mb_x++) { |
|
|
|
for(mb_x=0; mb_x < s->mb_width; mb_x++) { |
|
|
|
int xx = mb_x * 16; |
|
|
|
int xx = mb_x * 16; |
|
|
@ -4911,6 +4915,8 @@ static int encode_thread(AVCodecContext *c, void *arg){ |
|
|
|
PutBitContext pb[2], pb2[2], tex_pb[2]; |
|
|
|
PutBitContext pb[2], pb2[2], tex_pb[2]; |
|
|
|
//printf("%d->%d\n", s->resync_mb_y, s->end_mb_y);
|
|
|
|
//printf("%d->%d\n", s->resync_mb_y, s->end_mb_y);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ff_check_alignment(); |
|
|
|
|
|
|
|
|
|
|
|
for(i=0; i<2; i++){ |
|
|
|
for(i=0; i<2; i++){ |
|
|
|
init_put_bits(&pb [i], bit_buf [i], MAX_MB_BYTES); |
|
|
|
init_put_bits(&pb [i], bit_buf [i], MAX_MB_BYTES); |
|
|
|
init_put_bits(&pb2 [i], bit_buf2 [i], MAX_MB_BYTES); |
|
|
|
init_put_bits(&pb2 [i], bit_buf2 [i], MAX_MB_BYTES); |
|
|
|