diff --git a/Changelog b/Changelog index 85374f343d..a820449302 100644 --- a/Changelog +++ b/Changelog @@ -397,7 +397,7 @@ version 0.10: - ffwavesynth decoder - aviocat tool - ffeval tool -- support decoding 4-channel SGI images +- support encoding and decoding 4-channel SGI images version 0.9: diff --git a/libavcodec/sgienc.c b/libavcodec/sgienc.c index a809d5c0b2..21026afccc 100644 --- a/libavcodec/sgienc.c +++ b/libavcodec/sgienc.c @@ -50,7 +50,8 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, const AVFrame * const p = frame; uint8_t *offsettab, *lengthtab, *in_buf, *encode_buf, *buf; int x, y, z, length, tablesize, ret; - unsigned int width, height, depth, dimension, bytes_per_channel, pixmax, put_be; + unsigned int width, height, depth, dimension; + unsigned int bytes_per_channel, pixmax, put_be; unsigned char *end_buf; avctx->coded_frame->pict_type = AV_PICTURE_TYPE_I; @@ -183,7 +184,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, for (y = 0; y < height; y++) { for (x = 0; x < width * depth; x += depth) if (bytes_per_channel == 1) { - bytestream_put_byte(&buf, in_buf[x]); + bytestream_put_byte(&buf, in_buf[x]); } else { if (put_be) { bytestream_put_be16(&buf, ((uint16_t *)in_buf)[x]); @@ -223,7 +224,7 @@ AVCodec ff_sgi_encoder = { AV_PIX_FMT_RGB24, AV_PIX_FMT_RGBA, AV_PIX_FMT_RGB48LE, AV_PIX_FMT_RGB48BE, AV_PIX_FMT_RGBA64LE, AV_PIX_FMT_RGBA64BE, - AV_PIX_FMT_GRAY16LE, AV_PIX_FMT_GRAY16BE, - AV_PIX_FMT_GRAY8, AV_PIX_FMT_NONE + AV_PIX_FMT_GRAY16LE, AV_PIX_FMT_GRAY16BE, AV_PIX_FMT_GRAY8, + AV_PIX_FMT_NONE }, };