From 89d8ae77a82461e82e7a78eb0e97a1b727675edc Mon Sep 17 00:00:00 2001 From: reimar Date: Sun, 17 Jan 2010 14:54:38 +0000 Subject: Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30353 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/img_format.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'libmpcodecs') diff --git a/libmpcodecs/img_format.h b/libmpcodecs/img_format.h index 6bab56632d..2aa037e5b7 100644 --- a/libmpcodecs/img_format.h +++ b/libmpcodecs/img_format.h @@ -35,12 +35,28 @@ #define IMGFMT_ARGB IMGFMT_BGR32 #define IMGFMT_RGBA (IMGFMT_BGR32|64) #define IMGFMT_RGB48NE IMGFMT_RGB48BE +#define IMGFMT_RGB15BE IMGFMT_RGB15 +#define IMGFMT_RGB15LE (IMGFMT_RGB15|64) +#define IMGFMT_RGB16BE IMGFMT_RGB16 +#define IMGFMT_RGB16LE (IMGFMT_RGB16|64) +#define IMGFMT_BGR15BE IMGFMT_BGR15 +#define IMGFMT_BGR15LE (IMGFMT_BGR15|64) +#define IMGFMT_BGR16BE IMGFMT_BGR16 +#define IMGFMT_BGR16LE (IMGFMT_BGR16|64) #else #define IMGFMT_ABGR (IMGFMT_BGR32|64) #define IMGFMT_BGRA IMGFMT_BGR32 #define IMGFMT_ARGB (IMGFMT_RGB32|64) #define IMGFMT_RGBA IMGFMT_RGB32 #define IMGFMT_RGB48NE IMGFMT_RGB48LE +#define IMGFMT_RGB15BE (IMGFMT_RGB15|64) +#define IMGFMT_RGB15LE IMGFMT_RGB15 +#define IMGFMT_RGB16BE (IMGFMT_RGB16|64) +#define IMGFMT_RGB16LE IMGFMT_RGB16 +#define IMGFMT_BGR15BE (IMGFMT_BGR15|64) +#define IMGFMT_BGR15LE IMGFMT_BGR15 +#define IMGFMT_BGR16BE (IMGFMT_BGR16|64) +#define IMGFMT_BGR16LE IMGFMT_BGR16 #endif /* old names for compatibility */ -- cgit v1.2.3 From ed03545c3c0c5be509365e695f32e83a446c6cf8 Mon Sep 17 00:00:00 2001 From: reimar Date: Sun, 17 Jan 2010 14:58:44 +0000 Subject: Reuse the fmt-conversion code instead of duplicating the functionality. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30354 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/ve_lavc.c | 28 ++++------------------------ 1 file changed, 4 insertions(+), 24 deletions(-) (limited to 'libmpcodecs') diff --git a/libmpcodecs/ve_lavc.c b/libmpcodecs/ve_lavc.c index e2ad55d0e0..dc295f72a1 100644 --- a/libmpcodecs/ve_lavc.c +++ b/libmpcodecs/ve_lavc.c @@ -24,6 +24,7 @@ #include "libmpdemux/muxer.h" #include "img_format.h" +#include "fmt-conversion.h" #include "mp_image.h" #include "vf.h" @@ -593,30 +594,9 @@ static int config(struct vf_instance_s* vf, } mux_v->imgfmt = lavc_param_format; - switch(lavc_param_format) - { - case IMGFMT_YV12: - lavc_venc_context->pix_fmt = PIX_FMT_YUV420P; - break; - case IMGFMT_422P: - lavc_venc_context->pix_fmt = PIX_FMT_YUV422P; - break; - case IMGFMT_444P: - lavc_venc_context->pix_fmt = PIX_FMT_YUV444P; - break; - case IMGFMT_411P: - lavc_venc_context->pix_fmt = PIX_FMT_YUV411P; - break; - case IMGFMT_YVU9: - lavc_venc_context->pix_fmt = PIX_FMT_YUV410P; - break; - case IMGFMT_BGR32: - lavc_venc_context->pix_fmt = PIX_FMT_RGB32; - break; - default: - mp_msg(MSGT_MENCODER,MSGL_ERR,"%s is not a supported format\n", vo_format_name(lavc_param_format)); - return 0; - } + lavc_venc_context->pix_fmt = imgfmt2pixfmt(lavc_param_format); + if (lavc_venc_context->pix_fmt == PIX_FMT_NONE) + return 0; if(!stats_file) { /* lavc internal 2pass bitrate control */ -- cgit v1.2.3 From 1a5841fbbb632323057d79e329d0736e349704eb Mon Sep 17 00:00:00 2001 From: reimar Date: Sun, 17 Jan 2010 15:08:31 +0000 Subject: Add a proper header for our strsep implementation so strsep will not be used without a declaration, causing issues on 64 bit systems. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30355 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/ve_lavc.c | 1 + 1 file changed, 1 insertion(+) (limited to 'libmpcodecs') diff --git a/libmpcodecs/ve_lavc.c b/libmpcodecs/ve_lavc.c index dc295f72a1..4f7c4ef310 100644 --- a/libmpcodecs/ve_lavc.c +++ b/libmpcodecs/ve_lavc.c @@ -15,6 +15,7 @@ #include "mp_msg.h" #include "help_mp.h" #include "av_opts.h" +#include "osdep/strsep.h" #include "codec-cfg.h" #include "stream/stream.h" -- cgit v1.2.3