mirror of
https://git.videolan.org/git/ffmpeg.git
synced 2024-09-05 15:58:07 +02:00
fix 4:2:2 psnr
Originally committed as revision 14662 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
b80b569242
commit
ec7e2582ae
@ -2012,6 +2012,7 @@ static void write_slice_end(MpegEncContext *s){
|
|||||||
static int encode_thread(AVCodecContext *c, void *arg){
|
static int encode_thread(AVCodecContext *c, void *arg){
|
||||||
MpegEncContext *s= arg;
|
MpegEncContext *s= arg;
|
||||||
int mb_x, mb_y, pdif = 0;
|
int mb_x, mb_y, pdif = 0;
|
||||||
|
int chr_h= 16>>s->chroma_y_shift;
|
||||||
int i, j;
|
int i, j;
|
||||||
MpegEncContext best_s, backup_s;
|
MpegEncContext best_s, backup_s;
|
||||||
uint8_t bit_buf[2][MAX_MB_BYTES];
|
uint8_t bit_buf[2][MAX_MB_BYTES];
|
||||||
@ -2606,11 +2607,11 @@ static int encode_thread(AVCodecContext *c, void *arg){
|
|||||||
s, s->new_picture.data[0] + s->mb_x*16 + s->mb_y*s->linesize*16,
|
s, s->new_picture.data[0] + s->mb_x*16 + s->mb_y*s->linesize*16,
|
||||||
s->dest[0], w, h, s->linesize);
|
s->dest[0], w, h, s->linesize);
|
||||||
s->current_picture.error[1] += sse(
|
s->current_picture.error[1] += sse(
|
||||||
s, s->new_picture.data[1] + s->mb_x*8 + s->mb_y*s->uvlinesize*8,
|
s, s->new_picture.data[1] + s->mb_x*8 + s->mb_y*s->uvlinesize*chr_h,
|
||||||
s->dest[1], w>>1, h>>1, s->uvlinesize);
|
s->dest[1], w>>1, h>>s->chroma_y_shift, s->uvlinesize);
|
||||||
s->current_picture.error[2] += sse(
|
s->current_picture.error[2] += sse(
|
||||||
s, s->new_picture .data[2] + s->mb_x*8 + s->mb_y*s->uvlinesize*8,
|
s, s->new_picture.data[2] + s->mb_x*8 + s->mb_y*s->uvlinesize*chr_h,
|
||||||
s->dest[2], w>>1, h>>1, s->uvlinesize);
|
s->dest[2], w>>1, h>>s->chroma_y_shift, s->uvlinesize);
|
||||||
}
|
}
|
||||||
if(s->loop_filter){
|
if(s->loop_filter){
|
||||||
if(ENABLE_ANY_H263_ENCODER && s->out_format == FMT_H263)
|
if(ENABLE_ANY_H263_ENCODER && s->out_format == FMT_H263)
|
||||||
|
Loading…
Reference in New Issue
Block a user