else // assume ff_rl_encode() produces at most 2x size of input
length += tablesize * 2 + depth * height * (2 * width + 1);
- if ((ret = ff_alloc_packet(pkt, length)) < 0) {
- av_log(avctx, AV_LOG_ERROR, "Error getting output packet of size %d.\n", length);
+ if ((ret = ff_alloc_packet2(avctx, pkt, bytes_per_channel * length)) < 0)
return ret;
- }
buf = pkt->data;
end_buf = pkt->data + pkt->size;
.priv_data_size = sizeof(SgiContext),
.init = encode_init,
.encode2 = encode_frame,
- .pix_fmts= (const enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGBA,
- PIX_FMT_RGB48LE, PIX_FMT_RGB48BE,
- PIX_FMT_RGBA64LE, PIX_FMT_RGBA64BE,
- PIX_FMT_GRAY16LE, PIX_FMT_GRAY16BE,
- PIX_FMT_GRAY8, PIX_FMT_NONE},
- .long_name= NULL_IF_CONFIG_SMALL("SGI image"),
+ .pix_fmts = (const enum PixelFormat[]){
+ PIX_FMT_RGB24, PIX_FMT_RGBA,
+ PIX_FMT_RGB48LE, PIX_FMT_RGB48BE,
+ PIX_FMT_RGBA64LE, PIX_FMT_RGBA64BE,
+ PIX_FMT_GRAY16LE, PIX_FMT_GRAY16BE,
+ PIX_FMT_GRAY8, PIX_FMT_NONE
+ },
+ .long_name = NULL_IF_CONFIG_SMALL("SGI image"),
};