Support 16bit gray pam encoding.

This commit is contained in:
Carl Eugen Hoyos 2012-01-08 20:20:29 +01:00
parent 2f21c50784
commit fac2a6fa0c
1 changed files with 7 additions and 1 deletions

View File

@ -62,6 +62,12 @@ static int pam_encode_frame(AVCodecContext *avctx, unsigned char *outbuf,
maxval = 255;
tuple_type = "GRAYSCALE";
break;
case PIX_FMT_GRAY16BE:
n = w * 2;
depth = 1;
maxval = 0xFFFF;
tuple_type = "GRAYSCALE";
break;
case PIX_FMT_GRAY8A:
n = w * 2;
depth = 2;
@ -128,6 +134,6 @@ AVCodec ff_pam_encoder = {
.priv_data_size = sizeof(PNMContext),
.init = ff_pnm_init,
.encode = pam_encode_frame,
.pix_fmts = (const enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB32, PIX_FMT_GRAY8, PIX_FMT_GRAY8A, PIX_FMT_MONOBLACK, PIX_FMT_NONE},
.pix_fmts = (const enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB32, PIX_FMT_GRAY8, PIX_FMT_GRAY8A, PIX_FMT_GRAY16BE, PIX_FMT_MONOBLACK, PIX_FMT_NONE},
.long_name = NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
};