|
|
@@ -110,7 +110,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, |
|
|
bestscore = 0; |
|
|
bestscore = 0; |
|
|
for(j = 0; j < 4; j++){ |
|
|
for(j = 0; j < 4; j++){ |
|
|
for(i = 0; i < 4*3; i++){ |
|
|
for(i = 0; i < 4*3; i++){ |
|
|
int t = prevptr[x*3 + i + j*p->linesize[0]] - c->block[i + j*4*3]; |
|
|
|
|
|
|
|
|
int t = prevptr[x*3 + i - j*3*avctx->width] - c->block[i + j*4*3]; |
|
|
bestscore += t*t; |
|
|
bestscore += t*t; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@@ -204,14 +204,14 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, |
|
|
for(j = 0; j < 4; j++) |
|
|
for(j = 0; j < 4; j++) |
|
|
for(i = 0; i < 4; i++) |
|
|
for(i = 0; i < 4; i++) |
|
|
for(k = 0; k < 3; k++) |
|
|
for(k = 0; k < 3; k++) |
|
|
prevptr[i*3 + k - j*3*avctx->width] = c->avg[k]; |
|
|
|
|
|
|
|
|
prevptr[x*3 + i*3 + k - j*3*avctx->width] = c->avg[k]; |
|
|
break; |
|
|
break; |
|
|
case MODE_2COL: |
|
|
case MODE_2COL: |
|
|
for(j = 0; j < 4; j++){ |
|
|
for(j = 0; j < 4; j++){ |
|
|
for(i = 0; i < 4; i++){ |
|
|
for(i = 0; i < 4; i++){ |
|
|
flags |= (c->output[i + j*4]^1) << (i + j*4); |
|
|
flags |= (c->output[i + j*4]^1) << (i + j*4); |
|
|
for(k = 0; k < 3; k++) |
|
|
for(k = 0; k < 3; k++) |
|
|
prevptr[i*3 + k - j*3*avctx->width] = c->codebook[c->output[i + j*4]*3 + k]; |
|
|
|
|
|
|
|
|
prevptr[x*3 + i*3 + k - j*3*avctx->width] = c->codebook[c->output[i + j*4]*3 + k]; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
bytestream_put_le16(&dst, flags); |
|
|
bytestream_put_le16(&dst, flags); |
|
|
@@ -223,7 +223,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, |
|
|
for(i = 0; i < 4; i++){ |
|
|
for(i = 0; i < 4; i++){ |
|
|
flags |= (c->output2[remap[i + j*4]]^1) << (i + j*4); |
|
|
flags |= (c->output2[remap[i + j*4]]^1) << (i + j*4); |
|
|
for(k = 0; k < 3; k++) |
|
|
for(k = 0; k < 3; k++) |
|
|
prevptr[i*3 + k - j*3*avctx->width] = c->codebook2[(c->output2[remap[i+j*4]] + (i&2) + (j&2)*2)*3 + k]; |
|
|
|
|
|
|
|
|
prevptr[x*3 + i*3 + k - j*3*avctx->width] = c->codebook2[(c->output2[remap[i+j*4]] + (i&2) + (j&2)*2)*3 + k]; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
bytestream_put_le16(&dst, flags); |
|
|
bytestream_put_le16(&dst, flags); |
|
|
|