diff options
author | Paul B Mahol <onemda@gmail.com> | 2015-01-29 13:45:55 +0000 |
---|---|---|
committer | Paul B Mahol <onemda@gmail.com> | 2015-01-30 16:10:11 +0000 |
commit | 9fd925dee58d6af846f5ff4f63f5052ec4075581 (patch) | |
tree | 63b2b6ea6f4c282d203422e1052ab63ae7ea7535 | |
parent | d0f315ab6c7d5829f43ebbe18e1e8827dad4c46b (diff) | |
download | ffmpeg-streaming-9fd925dee58d6af846f5ff4f63f5052ec4075581.zip ffmpeg-streaming-9fd925dee58d6af846f5ff4f63f5052ec4075581.tar.gz |
lavfi: remove mp=softpulldown
It is supposed to work correctly with MEncoder only.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
-rw-r--r-- | doc/filters.texi | 1 | ||||
-rw-r--r-- | libavfilter/Makefile | 1 | ||||
-rw-r--r-- | libavfilter/libmpcodecs/vf_softpulldown.c | 163 | ||||
-rw-r--r-- | libavfilter/version.h | 2 | ||||
-rw-r--r-- | libavfilter/vf_mp.c | 3 |
5 files changed, 1 insertions, 169 deletions
diff --git a/doc/filters.texi b/doc/filters.texi index cba2697..26f8ff9 100644 --- a/doc/filters.texi +++ b/doc/filters.texi @@ -6284,7 +6284,6 @@ the named filter. The list of the currently supported filters follows: @table @var -@item softpulldown @end table The parameter syntax and behavior for the listed filters are the same diff --git a/libavfilter/Makefile b/libavfilter/Makefile index 7e0d456..69fbb60 100644 --- a/libavfilter/Makefile +++ b/libavfilter/Makefile @@ -228,7 +228,6 @@ OBJS-$(CONFIG_NULLSINK_FILTER) += vsink_nullsink.o OBJS-$(CONFIG_MP_FILTER) += libmpcodecs/mp_image.o OBJS-$(CONFIG_MP_FILTER) += libmpcodecs/img_format.o -OBJS-$(CONFIG_MP_FILTER) += libmpcodecs/vf_softpulldown.o # multimedia filters OBJS-$(CONFIG_AVECTORSCOPE_FILTER) += avf_avectorscope.o diff --git a/libavfilter/libmpcodecs/vf_softpulldown.c b/libavfilter/libmpcodecs/vf_softpulldown.c deleted file mode 100644 index 556374e..0000000 --- a/libavfilter/libmpcodecs/vf_softpulldown.c +++ /dev/null @@ -1,163 +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 <stdio.h> -#include <stdlib.h> -#include <string.h> - -#include "config.h" -#include "mp_msg.h" - -#include "img_format.h" -#include "mp_image.h" -#include "vf.h" - -#include "libvo/fastmemcpy.h" - -struct vf_priv_s { - int state; - long long in; - long long out; -}; - -static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts) -{ - mp_image_t *dmpi; - int ret = 0; - int flags = mpi->fields; - int state = vf->priv->state; - - dmpi = ff_vf_get_image(vf->next, mpi->imgfmt, - MP_IMGTYPE_STATIC, MP_IMGFLAG_ACCEPT_STRIDE | - MP_IMGFLAG_PRESERVE, mpi->width, mpi->height); - - vf->priv->in++; - - if ((state == 0 && - !(flags & MP_IMGFIELD_TOP_FIRST)) || - (state == 1 && - flags & MP_IMGFIELD_TOP_FIRST)) { - ff_mp_msg(MSGT_VFILTER, MSGL_WARN, - "softpulldown: Unexpected field flags: state=%d top_field_first=%d repeat_first_field=%d\n", - state, - (flags & MP_IMGFIELD_TOP_FIRST) != 0, - (flags & MP_IMGFIELD_REPEAT_FIRST) != 0); - state ^= 1; - } - - if (state == 0) { - ret = ff_vf_next_put_image(vf, mpi, MP_NOPTS_VALUE); - vf->priv->out++; - if (flags & MP_IMGFIELD_REPEAT_FIRST) { - my_memcpy_pic(dmpi->planes[0], - mpi->planes[0], mpi->w, mpi->h/2, - dmpi->stride[0]*2, mpi->stride[0]*2); - if (mpi->flags & MP_IMGFLAG_PLANAR) { - my_memcpy_pic(dmpi->planes[1], - mpi->planes[1], - mpi->chroma_width, - mpi->chroma_height/2, - dmpi->stride[1]*2, - mpi->stride[1]*2); - my_memcpy_pic(dmpi->planes[2], - mpi->planes[2], - mpi->chroma_width, - mpi->chroma_height/2, - dmpi->stride[2]*2, - mpi->stride[2]*2); - } - state=1; - } - } else { - my_memcpy_pic(dmpi->planes[0]+dmpi->stride[0], - mpi->planes[0]+mpi->stride[0], mpi->w, mpi->h/2, - dmpi->stride[0]*2, mpi->stride[0]*2); - if (mpi->flags & MP_IMGFLAG_PLANAR) { - my_memcpy_pic(dmpi->planes[1]+dmpi->stride[1], - mpi->planes[1]+mpi->stride[1], - mpi->chroma_width, mpi->chroma_height/2, - dmpi->stride[1]*2, mpi->stride[1]*2); - my_memcpy_pic(dmpi->planes[2]+dmpi->stride[2], - mpi->planes[2]+mpi->stride[2], - mpi->chroma_width, mpi->chroma_height/2, - dmpi->stride[2]*2, mpi->stride[2]*2); - } - ret = ff_vf_next_put_image(vf, dmpi, MP_NOPTS_VALUE); - vf->priv->out++; - if (flags & MP_IMGFIELD_REPEAT_FIRST) { - ret |= ff_vf_next_put_image(vf, mpi, MP_NOPTS_VALUE); - vf->priv->out++; - state=0; - } else { - my_memcpy_pic(dmpi->planes[0], - mpi->planes[0], mpi->w, mpi->h/2, - dmpi->stride[0]*2, mpi->stride[0]*2); - if (mpi->flags & MP_IMGFLAG_PLANAR) { - my_memcpy_pic(dmpi->planes[1], - mpi->planes[1], - mpi->chroma_width, - mpi->chroma_height/2, - dmpi->stride[1]*2, - mpi->stride[1]*2); - my_memcpy_pic(dmpi->planes[2], - mpi->planes[2], - mpi->chroma_width, - mpi->chroma_height/2, - dmpi->stride[2]*2, - mpi->stride[2]*2); - } - } - } - - vf->priv->state = state; - - return ret; -} - -static int config(struct vf_instance *vf, - int width, int height, int d_width, int d_height, - unsigned int flags, unsigned int outfmt) -{ - return ff_vf_next_config(vf,width,height,d_width,d_height,flags,outfmt); -} - -static void uninit(struct vf_instance *vf) -{ - ff_mp_msg(MSGT_VFILTER, MSGL_INFO, "softpulldown: %lld frames in, %lld frames out\n", vf->priv->in, vf->priv->out); - free(vf->priv); -} - -static int vf_open(vf_instance_t *vf, char *args) -{ - vf->config = config; - vf->put_image = put_image; - vf->uninit = uninit; - vf->default_reqs = VFCAP_ACCEPT_STRIDE; - vf->priv = calloc(1, sizeof(struct vf_priv_s)); - vf->priv->state = 0; - return 1; -} - -const vf_info_t ff_vf_info_softpulldown = { - "mpeg2 soft 3:2 pulldown", - "softpulldown", - "Tobias Diedrich <ranma+mplayer@tdiedrich.de>", - "", - vf_open, - NULL -}; diff --git a/libavfilter/version.h b/libavfilter/version.h index ce22f7b..9bc7e77 100644 --- a/libavfilter/version.h +++ b/libavfilter/version.h @@ -31,7 +31,7 @@ #define LIBAVFILTER_VERSION_MAJOR 5 #define LIBAVFILTER_VERSION_MINOR 9 -#define LIBAVFILTER_VERSION_MICRO 101 +#define LIBAVFILTER_VERSION_MICRO 102 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ LIBAVFILTER_VERSION_MINOR, \ diff --git a/libavfilter/vf_mp.c b/libavfilter/vf_mp.c index 63fdedd..59bd60d 100644 --- a/libavfilter/vf_mp.c +++ b/libavfilter/vf_mp.c @@ -124,10 +124,7 @@ static const struct { {0, AV_PIX_FMT_NONE} }; -extern const vf_info_t ff_vf_info_softpulldown; - static const vf_info_t* const filters[]={ - &ff_vf_info_softpulldown, NULL }; |