libopenjpegenc: add support for YUV420/422/444P12/14
authorMichael Bradshaw <mbradshaw@sorensonmedia.com>
Tue, 3 Jul 2012 17:31:44 +0000 (11:31 -0600)
committerMichael Bradshaw <mbradshaw@sorensonmedia.com>
Wed, 4 Jul 2012 14:37:42 +0000 (08:37 -0600)
Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
libavcodec/libopenjpegenc.c

index 5bd1f9c..2b0238f 100644 (file)
@@ -104,6 +104,12 @@ static opj_image_t *mj2_create_image(AVCodecContext *avctx, opj_cparameters_t *p
     case PIX_FMT_YUV420P10:
     case PIX_FMT_YUV422P10:
     case PIX_FMT_YUV444P10:
+    case PIX_FMT_YUV420P12:
+    case PIX_FMT_YUV422P12:
+    case PIX_FMT_YUV444P12:
+    case PIX_FMT_YUV420P14:
+    case PIX_FMT_YUV422P14:
+    case PIX_FMT_YUV444P14:
     case PIX_FMT_YUV420P16:
     case PIX_FMT_YUV422P16:
     case PIX_FMT_YUV444P16:
@@ -358,6 +364,12 @@ static int libopenjpeg_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
     case PIX_FMT_YUV444P9:
     case PIX_FMT_YUV444P10:
     case PIX_FMT_YUV444P16:
+    case PIX_FMT_YUV420P12:
+    case PIX_FMT_YUV422P12:
+    case PIX_FMT_YUV444P12:
+    case PIX_FMT_YUV420P14:
+    case PIX_FMT_YUV422P14:
+    case PIX_FMT_YUV444P14:
         cpyresult = libopenjpeg_copy_unpacked16(avctx, frame, image);
         break;
     default:
@@ -460,6 +472,8 @@ AVCodec ff_libopenjpeg_encoder = {
         PIX_FMT_YUV411P, PIX_FMT_YUV410P, PIX_FMT_YUVA444P,
         PIX_FMT_YUV420P9, PIX_FMT_YUV422P9, PIX_FMT_YUV444P9,
         PIX_FMT_YUV420P10, PIX_FMT_YUV422P10, PIX_FMT_YUV444P10,
+        PIX_FMT_YUV420P12, PIX_FMT_YUV422P12, PIX_FMT_YUV444P12,
+        PIX_FMT_YUV420P14, PIX_FMT_YUV422P14, PIX_FMT_YUV444P14,
         PIX_FMT_YUV420P16, PIX_FMT_YUV422P16, PIX_FMT_YUV444P16,
         PIX_FMT_NONE
     },