[MPlayer-cvslog] r34660 - in trunk: codec-cfg.c etc/codecs.conf fmt-conversion.c libmpcodecs/img_format.c libmpcodecs/img_format.h libvo/gl_common.c m_option.c

cehoyos subversion at mplayerhq.hu
Wed Feb 8 00:04:30 CET 2012


Author: cehoyos
Date: Wed Feb  8 00:04:30 2012
New Revision: 34660

Log:
Support displaying 64bit RGB via OpenGL.

Modified:
   trunk/codec-cfg.c
   trunk/etc/codecs.conf
   trunk/fmt-conversion.c
   trunk/libmpcodecs/img_format.c
   trunk/libmpcodecs/img_format.h
   trunk/libvo/gl_common.c
   trunk/m_option.c

Modified: trunk/codec-cfg.c
==============================================================================
--- trunk/codec-cfg.c	Tue Feb  7 23:07:09 2012	(r34659)
+++ trunk/codec-cfg.c	Wed Feb  8 00:04:30 2012	(r34660)
@@ -199,6 +199,8 @@ static const struct {
     {"UYVY",        IMGFMT_UYVY},
     {"YVYU",        IMGFMT_YVYU},
 
+    {"RGB64LE",     IMGFMT_RGB64LE},
+    {"RGB64BE",     IMGFMT_RGB64BE},
     {"RGB48LE",     IMGFMT_RGB48LE},
     {"RGB48BE",     IMGFMT_RGB48BE},
     {"RGB4",        IMGFMT_RGB4},

Modified: trunk/etc/codecs.conf
==============================================================================
--- trunk/etc/codecs.conf	Tue Feb  7 23:07:09 2012	(r34659)
+++ trunk/etc/codecs.conf	Wed Feb  8 00:04:30 2012	(r34660)
@@ -579,7 +579,7 @@ videocodec ffdpx
   fourcc "dpx " ; "dpx " is an internal MPlayer FOURCC
   driver ffmpeg
   dll dpx
-  out RGB48BE,RGB48LE,RGB24,RGBA
+  out RGB64BE,RGB64LE,RGB48BE,RGB48LE,RGB24,RGBA
 
 videocodec ffgif
   info "FFmpeg GIF"
@@ -595,7 +595,7 @@ videocodec fftiff
   fourcc "tiff" ; for TIFF-encoded QuickTime files
   driver ffmpeg
   dll tiff
-  out BGR8,Y800,RGB48BE,RGB48LE,RGBA,RGB32,RGB24
+  out BGR32,BGR24,BGR8,Y800,RGB64LE,RGB64BE,RGB32,RGB24,RGB8
 
 videocodec ffpcx
   info "FFmpeg PCX"
@@ -612,7 +612,7 @@ videocodec ffpng
   fourcc "png " ; for PNG-encoded QuickTime files
   driver ffmpeg
   dll png
-  out BGR32,BGR8,Y800,RGB48BE,RGBA,RGB24
+  out BGR32,BGR8,Y800,RGB64BE,RGB48BE,RGBA,RGB24
 
 videocodec mpng
   info "PNG image"
@@ -655,7 +655,7 @@ videocodec ffsgi
   fourcc SGI1 ; SGI1 is an internal MPlayer FOURCC
   driver ffmpeg
   dll sgi
-  out RGB24,Y800,RGB48BE,RGBA
+  out RGB24,Y800,RGB64BE,RGB48BE,RGBA
 
 videocodec sgi
   info "SGI image"
@@ -1798,6 +1798,7 @@ videocodec fflibopenjpeg
   fourcc mjp2
   driver ffmpeg
   dll "libopenjpeg"
+  out RGB64LE,RGB64BE
   out RGB24,RGB32,BGR32,Y8,Y800
   out 420P16,420P10,420P9
   out 422P16,422P10,422P9

Modified: trunk/fmt-conversion.c
==============================================================================
--- trunk/fmt-conversion.c	Tue Feb  7 23:07:09 2012	(r34659)
+++ trunk/fmt-conversion.c	Wed Feb  8 00:04:30 2012	(r34660)
@@ -63,6 +63,8 @@ static const struct {
     {IMGFMT_BGR32,   PIX_FMT_0RGB32},
     {IMGFMT_BGRA,    PIX_FMT_BGR0},
     {IMGFMT_RGBA,    PIX_FMT_RGB0},
+    {IMGFMT_RGB64LE, PIX_FMT_RGBA64LE},
+    {IMGFMT_RGB64BE, PIX_FMT_RGBA64BE},
     {IMGFMT_444A,    PIX_FMT_YUVA444P},
 #endif
 #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 20, 1)

Modified: trunk/libmpcodecs/img_format.c
==============================================================================
--- trunk/libmpcodecs/img_format.c	Tue Feb  7 23:07:09 2012	(r34659)
+++ trunk/libmpcodecs/img_format.c	Wed Feb  8 00:04:30 2012	(r34660)
@@ -37,6 +37,8 @@ const char *vo_format_name(int format)
 //  case IMGFMT_RGB32:   return "RGB 32-bit";
     case IMGFMT_RGB48LE: return "RGB 48-bit LE";
     case IMGFMT_RGB48BE: return "RGB 48-bit BE";
+    case IMGFMT_RGB64LE: return "RGB 64-bit LE";
+    case IMGFMT_RGB64BE: return "RGB 64-bit BE";
     case IMGFMT_BGR1:    return "BGR 1-bit";
     case IMGFMT_BGR4:    return "BGR 4-bit";
     case IMGFMT_BG4B:    return "BGR 4-bit per byte";

Modified: trunk/libmpcodecs/img_format.h
==============================================================================
--- trunk/libmpcodecs/img_format.h	Tue Feb  7 23:07:09 2012	(r34659)
+++ trunk/libmpcodecs/img_format.h	Wed Feb  8 00:04:30 2012	(r34660)
@@ -36,6 +36,8 @@
 #define IMGFMT_RGB32 (IMGFMT_RGB|32)
 #define IMGFMT_RGB48LE (IMGFMT_RGB|48)
 #define IMGFMT_RGB48BE (IMGFMT_RGB|48|128)
+#define IMGFMT_RGB64LE (IMGFMT_RGB|64)
+#define IMGFMT_RGB64BE (IMGFMT_RGB|64|128)
 
 #define IMGFMT_BGR_MASK 0xFFFFFF00
 #define IMGFMT_BGR (('B'<<24)|('G'<<16)|('R'<<8))
@@ -56,6 +58,7 @@
 #define IMGFMT_BGRA    (IMGFMT_RGB32|128)
 #define IMGFMT_ARGB    IMGFMT_BGR32
 #define IMGFMT_RGBA    (IMGFMT_BGR32|128)
+#define IMGFMT_RGB64NE IMGFMT_RGB64BE
 #define IMGFMT_RGB48NE IMGFMT_RGB48BE
 #define IMGFMT_RGB12BE IMGFMT_RGB12
 #define IMGFMT_RGB12LE (IMGFMT_RGB12|128)
@@ -74,6 +77,7 @@
 #define IMGFMT_BGRA IMGFMT_BGR32
 #define IMGFMT_ARGB (IMGFMT_RGB32|128)
 #define IMGFMT_RGBA IMGFMT_RGB32
+#define IMGFMT_RGB64NE IMGFMT_RGB64LE
 #define IMGFMT_RGB48NE IMGFMT_RGB48LE
 #define IMGFMT_RGB12BE (IMGFMT_RGB12|128)
 #define IMGFMT_RGB12LE IMGFMT_RGB12
@@ -96,8 +100,8 @@
 #define IMGFMT_IS_RGB(fmt) (((fmt)&IMGFMT_RGB_MASK)==IMGFMT_RGB)
 #define IMGFMT_IS_BGR(fmt) (((fmt)&IMGFMT_BGR_MASK)==IMGFMT_BGR)
 
-#define IMGFMT_RGB_DEPTH(fmt) ((fmt)&0x3F)
-#define IMGFMT_BGR_DEPTH(fmt) ((fmt)&0x3F)
+#define IMGFMT_RGB_DEPTH(fmt) ((fmt)&0x7F)
+#define IMGFMT_BGR_DEPTH(fmt) ((fmt)&0x7F)
 
 
 /* Planar YUV Formats */

Modified: trunk/libvo/gl_common.c
==============================================================================
--- trunk/libvo/gl_common.c	Tue Feb  7 23:07:09 2012	(r34659)
+++ trunk/libvo/gl_common.c	Wed Feb  8 00:04:30 2012	(r34660)
@@ -272,6 +272,8 @@ int glFindFormat(uint32_t fmt, int *bpp,
   *bpp = IMGFMT_IS_BGR(fmt)?IMGFMT_BGR_DEPTH(fmt):IMGFMT_RGB_DEPTH(fmt);
   *gl_texfmt = 3;
   switch (fmt) {
+    case IMGFMT_RGB64NE:
+      *gl_texfmt = 4;
     case IMGFMT_RGB48NE:
       *gl_format = GL_RGB;
       *gl_type = GL_UNSIGNED_SHORT;

Modified: trunk/m_option.c
==============================================================================
--- trunk/m_option.c	Tue Feb  7 23:07:09 2012	(r34659)
+++ trunk/m_option.c	Wed Feb  8 00:04:30 2012	(r34660)
@@ -1127,6 +1127,8 @@ static struct {
   {"bgr4", IMGFMT_BGR4},
   {"bg4b", IMGFMT_BG4B},
   {"bgr1", IMGFMT_BGR1},
+  {"rgb64be", IMGFMT_RGB64BE},
+  {"rgb64le", IMGFMT_RGB64LE},
   {"rgb48be", IMGFMT_RGB48BE},
   {"rgb48le", IMGFMT_RGB48LE},
   {"rgb48ne", IMGFMT_RGB48NE},


More information about the MPlayer-cvslog mailing list