CVS: main/libmpcodecs vf_flip.c,NONE,1.1 Makefile,1.30,1.31 vf.c,1.10,1.11
Update of /cvsroot/mplayer/main/libmpcodecs In directory mplayer:/var/tmp.root/cvs-serv27416 Modified Files: Makefile vf.c Added Files: vf_flip.c Log Message: new filter: flip --- NEW FILE --- #include <stdio.h> #include <stdlib.h> #include <string.h> #include "../config.h" #include "../mp_msg.h" #include "../mp_image.h" #include "vf.h" #include "../libvo/fastmemcpy.h" struct vf_priv_s { mp_image_t *dmpi; }; //===========================================================================// static void get_image(struct vf_instance_s* vf, mp_image_t *mpi){ if(mpi->flags&MP_IMGFLAG_ACCEPT_STRIDE){ // try full DR ! vf->priv->dmpi=vf_get_image(vf->next,mpi->imgfmt, mpi->type, mpi->flags, mpi->width, mpi->height); // set up mpi as a upside-down image of dmpi: mpi->planes[0]=vf->priv->dmpi->planes[0]+ vf->priv->dmpi->stride[0]*(vf->priv->dmpi->height-1); mpi->stride[0]=-vf->priv->dmpi->stride[0]; if(mpi->flags&MP_IMGFLAG_PLANAR){ mpi->planes[1]=vf->priv->dmpi->planes[1]+ vf->priv->dmpi->stride[1]*((vf->priv->dmpi->height>>1)-1); mpi->stride[1]=-vf->priv->dmpi->stride[1]; mpi->planes[2]=vf->priv->dmpi->planes[2]+ vf->priv->dmpi->stride[2]*((vf->priv->dmpi->height>>1)-1); mpi->stride[2]=-vf->priv->dmpi->stride[2]; } mpi->flags|=MP_IMGFLAG_DIRECT; } } static void put_image(struct vf_instance_s* vf, mp_image_t *mpi){ if(mpi->flags&MP_IMGFLAG_DIRECT){ vf_next_put_image(vf,vf->priv->dmpi); return; // we've used DR, so we're ready... } // hope we'll get DR buffer: vf->priv->dmpi=vf_get_image(vf->next,mpi->imgfmt, MP_IMGTYPE_TEMP, MP_IMGFLAG_ACCEPT_STRIDE, mpi->width, mpi->height); // set up mpi as a upside-down image of dmpi: vf->priv->dmpi->planes[0]=mpi->planes[0]+ mpi->stride[0]*(mpi->height-1); vf->priv->dmpi->stride[0]=-mpi->stride[0]; if(vf->priv->dmpi->flags&MP_IMGFLAG_PLANAR){ vf->priv->dmpi->planes[1]=mpi->planes[1]+ mpi->stride[1]*((mpi->height>>1)-1); vf->priv->dmpi->stride[1]=-mpi->stride[1]; vf->priv->dmpi->planes[2]=mpi->planes[2]+ mpi->stride[2]*((mpi->height>>1)-1); vf->priv->dmpi->stride[2]=-mpi->stride[2]; } vf_next_put_image(vf,vf->priv->dmpi); } //===========================================================================// static int open(vf_instance_t *vf, char* args){ vf->get_image=get_image; vf->put_image=put_image; vf->priv=malloc(sizeof(struct vf_priv_s)); return 1; } vf_info_t vf_info_flip = { "flip image upside-down", "flip", "A'rpi", "", open }; //===========================================================================// Index: Makefile =================================================================== RCS file: /cvsroot/mplayer/main/libmpcodecs/Makefile,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- Makefile 11 Apr 2002 02:51:02 -0000 1.30 +++ Makefile 11 Apr 2002 03:17:14 -0000 1.31 @@ -6,7 +6,7 @@ AUDIO_SRCS=dec_audio.c ad.c ad_a52.c ad_acm.c ad_alaw.c ad_dk3adpcm.c ad_dk4adpcm.c ad_dshow.c ad_dvdpcm.c ad_ffmpeg.c ad_hwac3.c ad_imaadpcm.c ad_mp3.c ad_msadpcm.c ad_pcm.c ad_roqaudio.c ad_msgsm.c ad_faad.c ad_vorbis.c ad_libmad.c VIDEO_SRCS=dec_video.c vd.c vd_null.c vd_cinepak.c vd_qtrpza.c vd_ffmpeg.c vd_dshow.c vd_vfw.c vd_odivx.c vd_divx4.c vd_raw.c vd_xanim.c vd_msvidc.c vd_fli.c vd_qtrle.c vd_qtsmc.c vd_roqvideo.c vd_cyuv.c vd_nuv.c vd_libmpeg2.c vd_msrle.c vd_huffyuv.c vd_zlib.c vd_mpegpes.c -VFILTER_SRCS=vf.c vf_vo.c vf_crop.c vf_expand.c vf_pp.c vf_scale.c vf_fame.c vf_format.c vf_yuy2.c +VFILTER_SRCS=vf.c vf_vo.c vf_crop.c vf_expand.c vf_pp.c vf_scale.c vf_fame.c vf_format.c vf_yuy2.c vf_flip.c ENCODER_SRCS=ve.c ve_divx4.c ve_lavc.c ve_vfw.c ve_rawrgb.c ifeq ($(PNG),yes) Index: vf.c =================================================================== RCS file: /cvsroot/mplayer/main/libmpcodecs/vf.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- vf.c 10 Apr 2002 23:23:36 -0000 1.10 +++ vf.c 11 Apr 2002 03:17:14 -0000 1.11 @@ -17,6 +17,7 @@ extern vf_info_t vf_info_fame; extern vf_info_t vf_info_format; extern vf_info_t vf_info_yuy2; +extern vf_info_t vf_info_flip; char** vo_plugin_args=(char**) NULL; @@ -31,6 +32,7 @@ &vf_info_fame, &vf_info_format, &vf_info_yuy2, + &vf_info_flip, NULL };
participants (1)
-
Arpi of Ize