X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fsvq1enc.c;h=b2a4d25d708607c151574ffed1332693da315b1d;hb=930391e5988abe126d29c5e9b09fab459e0b8936;hp=9e249aefe4b1235f75ac5e34fe2a76b9f3ced42f;hpb=717503f7166d7032e32b935f2819d450524125d1;p=ffmpeg diff --git a/libavcodec/svq1enc.c b/libavcodec/svq1enc.c index 9e249aefe4b..b2a4d25d708 100644 --- a/libavcodec/svq1enc.c +++ b/libavcodec/svq1enc.c @@ -372,8 +372,7 @@ static int svq1_encode_plane(SVQ1EncContext *s, int plane, int score[4] = { 0, 0, 0, 0 }, best; uint8_t *temp = s->scratchbuf; - if (s->pb.buf_end - s->pb.buf - - (put_bits_count(&s->pb) >> 3) < 3000) { // FIXME: check size + if (put_bytes_left(&s->pb, 0) < 3000) { // FIXME: check size av_log(s->avctx, AV_LOG_ERROR, "encoded frame too large\n"); return -1; } @@ -472,7 +471,7 @@ static int svq1_encode_plane(SVQ1EncContext *s, int plane, if (best != 2) for (i = 5; i >= 0; i--) - avpriv_copy_bits(&s->pb, reorder_buffer[best][i], + ff_copy_bits(&s->pb, reorder_buffer[best][i], count[best][i]); if (best == 0) s->hdsp.put_pixels_tab[0][0](decoded, temp, stride, 16); @@ -653,7 +652,7 @@ FF_ENABLE_DEPRECATION_WARNINGS flush_put_bits(&s->pb); - pkt->size = put_bits_count(&s->pb) / 8; + pkt->size = put_bytes_output(&s->pb); if (s->pict_type == AV_PICTURE_TYPE_I) pkt->flags |= AV_PKT_FLAG_KEY; *got_packet = 1; @@ -689,7 +688,7 @@ AVCodec ff_svq1_encoder = { .init = svq1_encode_init, .encode2 = svq1_encode_frame, .close = svq1_encode_end, - .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]) { AV_PIX_FMT_YUV410P, AV_PIX_FMT_NONE }, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, };