libopenjpeg: YUV410P and YUV411P support
authorPaul B Mahol <onemda@gmail.com>
Fri, 1 Jun 2012 12:18:05 +0000 (12:18 +0000)
committerPaul B Mahol <onemda@gmail.com>
Mon, 4 Jun 2012 11:44:04 +0000 (11:44 +0000)
Signed-off-by: Paul B Mahol <onemda@gmail.com>
libavcodec/libopenjpegdec.c
libavcodec/libopenjpegenc.c

index 9928adb..9829e74 100644 (file)
@@ -39,7 +39,8 @@
 // similar pix_fmts with higher bpp.
 #define RGB_PIXEL_FORMATS   PIX_FMT_RGB24,PIX_FMT_RGBA,PIX_FMT_RGB48,PIX_FMT_RGBA64
 #define GRAY_PIXEL_FORMATS  PIX_FMT_GRAY8,PIX_FMT_GRAY8A,PIX_FMT_GRAY16
-#define YUV_PIXEL_FORMATS   PIX_FMT_YUV420P,PIX_FMT_YUV422P,PIX_FMT_YUVA420P, \
+#define YUV_PIXEL_FORMATS   PIX_FMT_YUV410P,PIX_FMT_YUV411P, \
+                            PIX_FMT_YUV420P,PIX_FMT_YUV422P,PIX_FMT_YUVA420P, \
                             PIX_FMT_YUV440P,PIX_FMT_YUV444P, \
                             PIX_FMT_YUV420P9,PIX_FMT_YUV422P9,PIX_FMT_YUV444P9, \
                             PIX_FMT_YUV420P10,PIX_FMT_YUV422P10,PIX_FMT_YUV444P10, \
index b357fcd..da12498 100644 (file)
@@ -89,6 +89,8 @@ static opj_image_t *mj2_create_image(AVCodecContext *avctx, opj_cparameters_t *p
     case PIX_FMT_RGBA64:
         color_space = CLRSPC_SRGB;
         break;
+    case PIX_FMT_YUV410P:
+    case PIX_FMT_YUV411P:
     case PIX_FMT_YUV420P:
     case PIX_FMT_YUV422P:
     case PIX_FMT_YUV440P:
@@ -333,6 +335,8 @@ static int libopenjpeg_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
         cpyresult = libopenjpeg_copy_packed16(avctx, frame, image);
         break;
     case PIX_FMT_GRAY8:
+    case PIX_FMT_YUV410P:
+    case PIX_FMT_YUV411P:
     case PIX_FMT_YUV420P:
     case PIX_FMT_YUV422P:
     case PIX_FMT_YUV440P:
@@ -448,6 +452,7 @@ AVCodec ff_libopenjpeg_encoder = {
                                            PIX_FMT_GRAY8,PIX_FMT_GRAY8A,PIX_FMT_GRAY16,
                                            PIX_FMT_YUV420P,PIX_FMT_YUV422P,PIX_FMT_YUVA420P,
                                            PIX_FMT_YUV440P,PIX_FMT_YUV444P,
+                                           PIX_FMT_YUV411P,PIX_FMT_YUV410P,
                                            PIX_FMT_YUV420P9,PIX_FMT_YUV422P9,PIX_FMT_YUV444P9,
                                            PIX_FMT_YUV420P10,PIX_FMT_YUV422P10,PIX_FMT_YUV444P10,
                                            PIX_FMT_YUV420P16,PIX_FMT_YUV422P16,PIX_FMT_YUV444P16,