mirror of https://github.com/mpv-player/mpv
vf_delogo: reroute to vf_lavfi
The ``file`` suboption is unsupported on lavfi.
This commit is contained in:
parent
86ba9a7f24
commit
5064ef87c3
|
@ -713,7 +713,7 @@ Available filters are:
|
|||
``<lines>``
|
||||
number of lines to select from the middle of the image (default: 12)
|
||||
|
||||
``delogo[=x:y:w:h:t]``
|
||||
``delogo[=x:y:w:h:t:show]``
|
||||
Suppresses a TV station logo by a simple interpolation of the surrounding
|
||||
pixels. Just set a rectangle covering the logo and watch it disappear (and
|
||||
sometimes something even uglier appear - your mileage may vary).
|
||||
|
@ -730,11 +730,9 @@ Available filters are:
|
|||
You can specify a text file to load the coordinates from. Each line
|
||||
must have a timestamp (in seconds, and in ascending order) and the
|
||||
``x:y:w:h:t`` coordinates (``t`` can be omitted).
|
||||
|
||||
.. note::
|
||||
|
||||
Deprecated. Use libavfilter's ``delogo`` or ``removelogo`` filters
|
||||
through ``--vf=lavfi`` instead.
|
||||
(Not supported when using libavfilter.)
|
||||
``show``
|
||||
Draw a rectangle showing the area defined by x/y/w/h.
|
||||
|
||||
``screenshot``
|
||||
Optional filter for screenshot support. This is only needed if the video
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
#include "video/img_format.h"
|
||||
#include "video/mp_image.h"
|
||||
#include "vf.h"
|
||||
#include "vf_lavfi.h"
|
||||
#include "video/memcpy_pic.h"
|
||||
|
||||
#include "mpvcore/m_option.h"
|
||||
|
@ -48,9 +49,10 @@ static struct vf_priv_s {
|
|||
} *timed_rect;
|
||||
int n_timed_rect;
|
||||
int cur_timed_rect;
|
||||
struct vf_lw_opts *lw_opts;
|
||||
} const vf_priv_dflt = {
|
||||
0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
NULL, NULL, 0, 0,
|
||||
};
|
||||
|
||||
|
@ -63,7 +65,6 @@ static struct vf_priv_s {
|
|||
*/
|
||||
static void fix_band(struct vf_priv_s *p)
|
||||
{
|
||||
p->show = 0;
|
||||
if (p->band < 0) {
|
||||
p->band = 4;
|
||||
p->show = 1;
|
||||
|
@ -280,10 +281,25 @@ load_error:
|
|||
}
|
||||
|
||||
static int vf_open(vf_instance_t *vf, char *args){
|
||||
struct vf_priv_s *p = vf->priv;
|
||||
vf->config=config;
|
||||
vf->filter=filter;
|
||||
vf->query_format=query_format;
|
||||
|
||||
int band = p->band;
|
||||
int show = p->show;
|
||||
if (band < 0) {
|
||||
band = 4;
|
||||
show = 1;
|
||||
}
|
||||
if (vf_lw_set_graph(vf, p->lw_opts, "delogo", "%d:%d:%d:%d:%d:%d",
|
||||
p->xoff, p->yoff, p->lw, p->lh, band, show) >= 0)
|
||||
{
|
||||
if (p->file && p->file[0])
|
||||
mp_msg(MSGT_VFILTER, MSGL_WARN, "delogo: file argument ignored\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (vf->priv->file) {
|
||||
if (load_timed_rectangles(vf->priv))
|
||||
return 0;
|
||||
|
@ -312,6 +328,8 @@ static const m_option_t vf_opts_fields[] = {
|
|||
OPT_INT("t", band, 0),
|
||||
OPT_INT("band", band, 0), // alias
|
||||
OPT_STRING("file", file, 0),
|
||||
OPT_FLAG("show", show, 0),
|
||||
OPT_SUBSTRUCT("", lw_opts, vf_lw_conf, 0),
|
||||
{0}
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue