diff --git a/libavcodec/pamenc.c b/libavcodec/pamenc.c index d6f945e24c..44db009c26 100644 --- a/libavcodec/pamenc.c +++ b/libavcodec/pamenc.c @@ -86,6 +86,12 @@ static int pam_encode_frame(AVCodecContext *avctx, unsigned char *outbuf, maxval = 255; tuple_type = "RGB_ALPHA"; break; + case PIX_FMT_RGB48BE: + n = w * 6; + depth = 3; + maxval = 0xFFFF; + tuple_type = "RGB"; + break; default: return -1; } @@ -134,6 +140,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_GRAY16BE, PIX_FMT_MONOBLACK, PIX_FMT_NONE}, + .pix_fmts = (const enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB32, PIX_FMT_RGB48BE, 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"), };