[FFmpeg-cvslog] r19775 - in trunk: libavcodec/imgconvert.c libavcodec/pixdesc.c libavutil/pixfmt.h

ramiro subversion
Sun Sep 6 01:33:26 CEST 2009


Author: ramiro
Date: Sun Sep  6 01:33:25 2009
New Revision: 19775

Log:
Make 16bit YUV formats compatible with NE avcodec_get_pix_fmt().
Patch by Lars T?uber <lars <dot> taeuber <at> gmx <dot> net>.

Modified:
   trunk/libavcodec/imgconvert.c
   trunk/libavcodec/pixdesc.c
   trunk/libavutil/pixfmt.h

Modified: trunk/libavcodec/imgconvert.c
==============================================================================
--- trunk/libavcodec/imgconvert.c	Sat Sep  5 21:35:59 2009	(r19774)
+++ trunk/libavcodec/imgconvert.c	Sun Sep  6 01:33:25 2009	(r19775)
@@ -130,48 +130,48 @@ static const PixFmtInfo pix_fmt_info[PIX
         .depth = 8,
         .x_chroma_shift = 0, .y_chroma_shift = 1,
     },
-    [PIX_FMT_YUV420PLE] = {
-        .name = "yuv420ple",
+    [PIX_FMT_YUV420P16LE] = {
+        .name = "yuv420p16le",
         .nb_channels = 3,
         .color_type = FF_COLOR_YUV,
         .pixel_type = FF_PIXEL_PLANAR,
         .depth = 16,
         .x_chroma_shift = 1, .y_chroma_shift = 1,
     },
-    [PIX_FMT_YUV422PLE] = {
-        .name = "yuv422ple",
+    [PIX_FMT_YUV422P16LE] = {
+        .name = "yuv422p16le",
         .nb_channels = 3,
         .color_type = FF_COLOR_YUV,
         .pixel_type = FF_PIXEL_PLANAR,
         .depth = 16,
         .x_chroma_shift = 1, .y_chroma_shift = 0,
     },
-    [PIX_FMT_YUV444PLE] = {
-        .name = "yuv444ple",
+    [PIX_FMT_YUV444P16LE] = {
+        .name = "yuv444p16le",
         .nb_channels = 3,
         .color_type = FF_COLOR_YUV,
         .pixel_type = FF_PIXEL_PLANAR,
         .depth = 16,
         .x_chroma_shift = 0, .y_chroma_shift = 0,
     },
-    [PIX_FMT_YUV420PBE] = {
-        .name = "yuv420pbe",
+    [PIX_FMT_YUV420P16BE] = {
+        .name = "yuv420p16be",
         .nb_channels = 3,
         .color_type = FF_COLOR_YUV,
         .pixel_type = FF_PIXEL_PLANAR,
         .depth = 16,
         .x_chroma_shift = 1, .y_chroma_shift = 1,
     },
-    [PIX_FMT_YUV422PBE] = {
-        .name = "yuv422pbe",
+    [PIX_FMT_YUV422P16BE] = {
+        .name = "yuv422p16be",
         .nb_channels = 3,
         .color_type = FF_COLOR_YUV,
         .pixel_type = FF_PIXEL_PLANAR,
         .depth = 16,
         .x_chroma_shift = 1, .y_chroma_shift = 0,
     },
-    [PIX_FMT_YUV444PBE] = {
-        .name = "yuv444pbe",
+    [PIX_FMT_YUV444P16BE] = {
+        .name = "yuv444p16be",
         .nb_channels = 3,
         .color_type = FF_COLOR_YUV,
         .pixel_type = FF_PIXEL_PLANAR,
@@ -662,12 +662,12 @@ int ff_fill_linesize(AVPicture *picture,
         picture->linesize[1] = w2;
         picture->linesize[2] = w2;
         break;
-    case PIX_FMT_YUV420PLE:
-    case PIX_FMT_YUV422PLE:
-    case PIX_FMT_YUV444PLE:
-    case PIX_FMT_YUV420PBE:
-    case PIX_FMT_YUV422PBE:
-    case PIX_FMT_YUV444PBE:
+    case PIX_FMT_YUV420P16LE:
+    case PIX_FMT_YUV422P16LE:
+    case PIX_FMT_YUV444P16LE:
+    case PIX_FMT_YUV420P16BE:
+    case PIX_FMT_YUV422P16BE:
+    case PIX_FMT_YUV444P16BE:
         w2 = (width + (1 << pinfo->x_chroma_shift) - 1) >> pinfo->x_chroma_shift;
         picture->linesize[0] = 2*width;
         picture->linesize[1] = 2*w2;
@@ -760,12 +760,12 @@ int ff_fill_pointer(AVPicture *picture, 
     case PIX_FMT_YUVJ422P:
     case PIX_FMT_YUVJ444P:
     case PIX_FMT_YUVJ440P:
-    case PIX_FMT_YUV420PLE:
-    case PIX_FMT_YUV422PLE:
-    case PIX_FMT_YUV444PLE:
-    case PIX_FMT_YUV420PBE:
-    case PIX_FMT_YUV422PBE:
-    case PIX_FMT_YUV444PBE:
+    case PIX_FMT_YUV420P16LE:
+    case PIX_FMT_YUV422P16LE:
+    case PIX_FMT_YUV444P16LE:
+    case PIX_FMT_YUV420P16BE:
+    case PIX_FMT_YUV422P16BE:
+    case PIX_FMT_YUV444P16BE:
         h2 = (height + (1 << pinfo->y_chroma_shift) - 1) >> pinfo->y_chroma_shift;
         size2 = picture->linesize[1] * h2;
         picture->data[0] = ptr;

Modified: trunk/libavcodec/pixdesc.c
==============================================================================
--- trunk/libavcodec/pixdesc.c	Sat Sep  5 21:35:59 2009	(r19774)
+++ trunk/libavcodec/pixdesc.c	Sun Sep  6 01:33:25 2009	(r19775)
@@ -511,8 +511,8 @@ const AVPixFmtDescriptor av_pix_fmt_desc
             {0,1,1,0,4},        /* R */
         },
     },
-    [PIX_FMT_YUV420PLE] = {
-        .name = "yuv420ple",
+    [PIX_FMT_YUV420P16LE] = {
+        .name = "yuv420p16le",
         .nb_channels  = 3,
         .log2_chroma_w= 1,
         .log2_chroma_h= 1,
@@ -522,8 +522,8 @@ const AVPixFmtDescriptor av_pix_fmt_desc
             {2,1,1,0,15},        /* V */
         },
     },
-    [PIX_FMT_YUV420PBE] = {
-        .name = "yuv420pbe",
+    [PIX_FMT_YUV420P16BE] = {
+        .name = "yuv420p16be",
         .nb_channels  = 3,
         .log2_chroma_w= 1,
         .log2_chroma_h= 1,
@@ -534,8 +534,8 @@ const AVPixFmtDescriptor av_pix_fmt_desc
         },
         .flags = PIX_FMT_BE,
     },
-    [PIX_FMT_YUV422PLE] = {
-        .name = "yuv422ple",
+    [PIX_FMT_YUV422P16LE] = {
+        .name = "yuv422p16le",
         .nb_channels  = 3,
         .log2_chroma_w= 1,
         .log2_chroma_h= 0,
@@ -545,8 +545,8 @@ const AVPixFmtDescriptor av_pix_fmt_desc
             {2,1,1,0,15},        /* V */
         },
     },
-    [PIX_FMT_YUV422PBE] = {
-        .name = "yuv422pbe",
+    [PIX_FMT_YUV422P16BE] = {
+        .name = "yuv422p16be",
         .nb_channels  = 3,
         .log2_chroma_w= 1,
         .log2_chroma_h= 0,
@@ -557,8 +557,8 @@ const AVPixFmtDescriptor av_pix_fmt_desc
         },
         .flags = PIX_FMT_BE,
     },
-    [PIX_FMT_YUV444PLE] = {
-        .name = "yuv444ple",
+    [PIX_FMT_YUV444P16LE] = {
+        .name = "yuv444p16le",
         .nb_channels  = 3,
         .log2_chroma_w= 0,
         .log2_chroma_h= 0,
@@ -568,8 +568,8 @@ const AVPixFmtDescriptor av_pix_fmt_desc
             {2,1,1,0,15},        /* V */
         },
     },
-    [PIX_FMT_YUV444PBE] = {
-        .name = "yuv444pbe",
+    [PIX_FMT_YUV444P16BE] = {
+        .name = "yuv444p16be",
         .nb_channels  = 3,
         .log2_chroma_w= 0,
         .log2_chroma_h= 0,

Modified: trunk/libavutil/pixfmt.h
==============================================================================
--- trunk/libavutil/pixfmt.h	Sat Sep  5 21:35:59 2009	(r19774)
+++ trunk/libavutil/pixfmt.h	Sun Sep  6 01:33:25 2009	(r19775)
@@ -117,12 +117,12 @@ enum PixelFormat {
     PIX_FMT_VAAPI_IDCT, ///< HW acceleration through VA API at IDCT entry-point, Picture.data[3] contains a vaapi_render_state struct which contains fields extracted from headers
     PIX_FMT_VAAPI_VLD,  ///< HW decoding through VA API, Picture.data[3] contains a vaapi_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
 
-    PIX_FMT_YUV420PLE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-    PIX_FMT_YUV420PBE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-    PIX_FMT_YUV422PLE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-    PIX_FMT_YUV422PBE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-    PIX_FMT_YUV444PLE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-    PIX_FMT_YUV444PBE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
+    PIX_FMT_YUV420P16LE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
+    PIX_FMT_YUV420P16BE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
+    PIX_FMT_YUV422P16LE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
+    PIX_FMT_YUV422P16BE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
+    PIX_FMT_YUV444P16LE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
+    PIX_FMT_YUV444P16BE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
     PIX_FMT_NB,        ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
 };
 
@@ -144,8 +144,8 @@ enum PixelFormat {
 #define PIX_FMT_BGR565 PIX_FMT_NE(BGR565BE, BGR565LE)
 #define PIX_FMT_BGR555 PIX_FMT_NE(BGR555BE, BGR555LE)
 
-#define PIX_FMT_YUV420P16 PIX_FMT_NE(YUV420PBE, YUV420PLE)
-#define PIX_FMT_YUV422P16 PIX_FMT_NE(YUV422PBE, YUV422PLE)
-#define PIX_FMT_YUV444P16 PIX_FMT_NE(YUV444PBE, YUV444PLE)
+#define PIX_FMT_YUV420P16 PIX_FMT_NE(YUV420P16BE, YUV420P16LE)
+#define PIX_FMT_YUV422P16 PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
+#define PIX_FMT_YUV444P16 PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
 
 #endif /* AVUTIL_PIXFMT_H */



More information about the ffmpeg-cvslog mailing list