From 082b6f86d377f92040c9fb9252b3f935992181c9 Mon Sep 17 00:00:00 2001 From: siretart Date: Wed, 9 Jun 2010 07:26:54 +0000 Subject: [PATCH] vf_rgb2bgr: remove the filter Its functionality has been superseeded by sws by quite some time, and the "swap" functionality is now provided by vf_format. see http://comments.gmane.org/gmane.comp.video.mplayer.devel/55804 for a full discussion. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31350 b3059339-0415-0410-9bf9-f77b7e298cf2 --- Changelog | 1 + DOCS/man/en/mplayer.1 | 10 ---- DOCS/tech/libmpcodecs.txt | 2 +- Makefile | 3 +- libmpcodecs/vf.c | 4 -- libmpcodecs/vf_rgb2bgr.c | 121 ---------------------------------------------- 6 files changed, 3 insertions(+), 138 deletions(-) delete mode 100644 libmpcodecs/vf_rgb2bgr.c diff --git a/Changelog b/Changelog index 5b9be56af9..c1959586e9 100644 --- a/Changelog +++ b/Changelog @@ -27,6 +27,7 @@ MPlayer (1.0) Filters: * remove vf_yuy2, functionality is replaced by -vf format=yuv2 + * remove vf_rgb2bgr, functionality is replaced by sws and vf_format Drivers: * X11: Window manager choses Window position by default. diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1 index 647fe68164..f25d5de094 100644 --- a/DOCS/man/en/mplayer.1 +++ b/DOCS/man/en/mplayer.1 @@ -6097,16 +6097,6 @@ Deprecated in favor of the software scaler. Clamps YUV color values to the CCIR 601 range without doing real conversion. . .TP -.B rgb2bgr[=swap] -RGB 24/32 <\-> BGR 24/32 colorspace conversion. -.PD 0 -.RSs -.IPs "swap\ " -Also perform R <\-> B swapping. -.RE -.PD 1 -. -.TP .B palette RGB/BGR 8 \-> 15/16/24/32bpp colorspace conversion using palette. . diff --git a/DOCS/tech/libmpcodecs.txt b/DOCS/tech/libmpcodecs.txt index b7378e8f2c..b79df93d78 100644 --- a/DOCS/tech/libmpcodecs.txt +++ b/DOCS/tech/libmpcodecs.txt @@ -229,7 +229,7 @@ static int query_format(struct vf_instance *vf, unsigned int fmt) } For the more complex case, when you have an N -> M colorspace mapping matrix, -see vf_scale or vf_rgb2bgr for examples. +see vf_scale or vf_format for examples. int (*config)(struct vf_instance *vf, diff --git a/Makefile b/Makefile index 3eb01d2cbd..0ad5221143 100644 --- a/Makefile +++ b/Makefile @@ -170,7 +170,6 @@ SRCS_COMMON-$(LIBNUT) += libmpdemux/demux_nut.c SRCS_COMMON-$(LIBPOSTPROC) += libmpcodecs/vf_pp.c SRCS_COMMON-$(LIBSMBCLIENT) += stream/stream_smb.c SRCS_COMMON-$(LIBSWSCALE_INTERNALS) += libmpcodecs/vf_palette.c \ - libmpcodecs/vf_rgb2bgr.c \ SRCS_COMMON-$(LIBTHEORA) += libmpcodecs/vd_theora.c SRCS_COMMON-$(LIVE555) += libmpdemux/demux_rtp.cpp \ @@ -802,7 +801,7 @@ codec-cfg.d codec-cfg.o: codecs.conf.h $(call ADDSUFFIXES,.d .o,mpcommon vobsub stream/stream_cddb stream/network libmpdemux/muxer_avi osdep/mplayer.rc): version.h # Files that depend on libswscale internals -libvo/vo_mga.o libvo/vo_xmga.o libmpcodecs/vf_palette.o libmpcodecs/vf_rgb2bgr.o: CFLAGS := -I$(FFMPEG_SOURCE_PATH) $(CFLAGS) +libvo/vo_mga.o libvo/vo_xmga.o libmpcodecs/vf_palette.o: CFLAGS := -I$(FFMPEG_SOURCE_PATH) $(CFLAGS) # Files that depend on libavcodec internals libmpcodecs/vf_fspp.o libmpcodecs/vf_geq.o libmpcodecs/vf_mcdeint.o libmpcodecs/vf_qp.o libmpcodecs/vf_spp.o libvo/jpeg_enc.o: CFLAGS := -I$(FFMPEG_SOURCE_PATH) $(CFLAGS) diff --git a/libmpcodecs/vf.c b/libmpcodecs/vf.c index 217e802a84..7db177f353 100644 --- a/libmpcodecs/vf.c +++ b/libmpcodecs/vf.c @@ -51,7 +51,6 @@ extern const vf_info_t vf_info_scale; extern const vf_info_t vf_info_format; extern const vf_info_t vf_info_noformat; extern const vf_info_t vf_info_flip; -extern const vf_info_t vf_info_rgb2bgr; extern const vf_info_t vf_info_rotate; extern const vf_info_t vf_info_mirror; extern const vf_info_t vf_info_palette; @@ -136,9 +135,6 @@ static const vf_info_t* const filter_list[]={ &vf_info_format, &vf_info_noformat, &vf_info_flip, -#ifdef CONFIG_LIBSWSCALE_INTERNALS - &vf_info_rgb2bgr, -#endif &vf_info_rotate, &vf_info_mirror, #ifdef CONFIG_LIBSWSCALE_INTERNALS diff --git a/libmpcodecs/vf_rgb2bgr.c b/libmpcodecs/vf_rgb2bgr.c deleted file mode 100644 index 95b3fa3639..0000000000 --- a/libmpcodecs/vf_rgb2bgr.c +++ /dev/null @@ -1,121 +0,0 @@ -/* - * This file is part of MPlayer. - * - * MPlayer is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * MPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with MPlayer; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -#include -#include -#include -#include - -#include "config.h" -#include "mp_msg.h" - -#include "img_format.h" -#include "mp_image.h" -#include "vf.h" - -#include "libswscale/rgb2rgb.h" - -//===========================================================================// - -struct vf_priv_s { - unsigned int fmt; - int forced; -}; - -static unsigned int getfmt(unsigned int outfmt,int forced){ - if(forced) switch(outfmt){ - case IMGFMT_RGB24: - case IMGFMT_RGB32: - case IMGFMT_BGR24: - case IMGFMT_BGR32: - return outfmt; - } - switch(outfmt){ - case IMGFMT_RGB24: return IMGFMT_BGR24; - case IMGFMT_RGB32: return IMGFMT_BGR32; - case IMGFMT_BGR24: return IMGFMT_RGB24; - case IMGFMT_BGR32: return IMGFMT_RGB32; - } - return 0; -} - -static int config(struct vf_instance *vf, - int width, int height, int d_width, int d_height, - unsigned int flags, unsigned int outfmt){ - vf->priv->fmt=getfmt(outfmt,vf->priv->forced); - return vf_next_config(vf,width,height,d_width,d_height,flags,vf->priv->fmt); -} - -static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts){ - mp_image_t *dmpi; - - // hope we'll get DR buffer: - dmpi=vf_get_image(vf->next,vf->priv->fmt, - MP_IMGTYPE_TEMP, MP_IMGFLAG_ACCEPT_STRIDE, - mpi->w, mpi->h); - - if(mpi->stride[0]!=dmpi->stride[0] || mpi->stride[0]!=mpi->w*(mpi->bpp/8)){ - int y; - unsigned char* src=mpi->planes[0]; - unsigned char* dst=dmpi->planes[0]; - int srcsize=mpi->w*mpi->bpp/8; - for(y=0;yh;y++){ - if(mpi->bpp==32) - rgb32tobgr32(src,dst,srcsize); - else - rgb24tobgr24(src,dst,srcsize); - src+=mpi->stride[0]; - dst+=dmpi->stride[0]; - } - } else { - if(mpi->bpp==32) - rgb32tobgr32(mpi->planes[0],dmpi->planes[0],mpi->w*mpi->h*4); - else - rgb24tobgr24(mpi->planes[0],dmpi->planes[0],mpi->w*mpi->h*3); - } - - return vf_next_put_image(vf,dmpi, pts); -} - -//===========================================================================// - -static int query_format(struct vf_instance *vf, unsigned int outfmt){ - unsigned int fmt=getfmt(outfmt,vf->priv->forced); - if(!fmt) return 0; - return vf_next_query_format(vf,fmt) & (~VFCAP_CSP_SUPPORTED_BY_HW); -} - -static int vf_open(vf_instance_t *vf, char *args){ - vf->config=config; - vf->put_image=put_image; - vf->query_format=query_format; - vf->priv=malloc(sizeof(struct vf_priv_s)); - vf->priv->forced=args && !strcasecmp(args,"swap"); - return 1; -} - -const vf_info_t vf_info_rgb2bgr = { - "fast 24/32bpp RGB<->BGR conversion", - "rgb2bgr", - "A'rpi", - "", - vf_open, - NULL -}; - -//===========================================================================// -- 2.11.4.GIT