Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
cc0dc50d
Commit
cc0dc50d
authored
Jul 17, 2011
by
Stefano Sabatini
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
vf_mp: remove blackframe filter wrapper
blackframe is integrated as a native filter.
parent
00a9ac42
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
1 addition
and
153 deletions
+1
-153
filters.texi
doc/filters.texi
+0
-1
Makefile
libavfilter/Makefile
+0
-1
avfilter.h
libavfilter/avfilter.h
+1
-1
vf_blackframe.c
libavfilter/libmpcodecs/vf_blackframe.c
+0
-148
vf_mp.c
libavfilter/vf_mp.c
+0
-2
No files found.
doc/filters.texi
View file @
cc0dc50d
...
...
@@ -895,7 +895,6 @@ the named filter.
The list of the currently supported filters follows:
@table @var
@item 2xsai
@item blackframe
@item decimate
@item delogo
@item denoise3d
...
...
libavfilter/Makefile
View file @
cc0dc50d
...
...
@@ -79,7 +79,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_2xsai.o
OBJS-$(CONFIG_MP_FILTER)
+=
libmpcodecs/vf_blackframe.o
OBJS-$(CONFIG_MP_FILTER)
+=
libmpcodecs/vf_decimate.o
OBJS-$(CONFIG_MP_FILTER)
+=
libmpcodecs/vf_delogo.o
OBJS-$(CONFIG_MP_FILTER)
+=
libmpcodecs/vf_denoise3d.o
...
...
libavfilter/avfilter.h
View file @
cc0dc50d
...
...
@@ -30,7 +30,7 @@
#define LIBAVFILTER_VERSION_MAJOR 2
#define LIBAVFILTER_VERSION_MINOR 27
#define LIBAVFILTER_VERSION_MICRO
2
#define LIBAVFILTER_VERSION_MICRO
3
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
LIBAVFILTER_VERSION_MINOR, \
...
...
libavfilter/libmpcodecs/vf_blackframe.c
deleted
100644 → 0
View file @
00a9ac42
/*
* detect frames that are (almost) black
* search for black frames to detect scene transitions
* (c) 2006 Julian Hall
*
* based on code designed for skipping commercials
* (c) 2002-2003 Brian J. Murrell
*
* cleanup, simplify, speedup (c) 2006 by Ivo van Poorten
*
* 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"
struct
vf_priv_s
{
unsigned
int
bamount
,
bthresh
,
frame
,
lastkeyframe
;
};
static
int
config
(
struct
vf_instance
*
vf
,
int
width
,
int
height
,
int
d_width
,
int
d_height
,
unsigned
int
flags
,
unsigned
int
outfmt
)
{
return
vf_next_config
(
vf
,
width
,
height
,
d_width
,
d_height
,
flags
,
outfmt
);
}
static
int
query_format
(
struct
vf_instance
*
vf
,
unsigned
fmt
)
{
switch
(
fmt
)
{
case
IMGFMT_YVU9
:
case
IMGFMT_IF09
:
case
IMGFMT_YV12
:
case
IMGFMT_I420
:
case
IMGFMT_IYUV
:
case
IMGFMT_CLPL
:
case
IMGFMT_Y800
:
case
IMGFMT_Y8
:
case
IMGFMT_NV12
:
case
IMGFMT_NV21
:
case
IMGFMT_444P
:
case
IMGFMT_422P
:
case
IMGFMT_411P
:
case
IMGFMT_HM12
:
return
vf_next_query_format
(
vf
,
fmt
);
}
return
0
;
}
static
int
put_image
(
struct
vf_instance
*
vf
,
mp_image_t
*
mpi
,
double
pts
){
mp_image_t
*
dmpi
;
int
x
,
y
;
int
nblack
=
0
,
pblack
=
0
;
unsigned
char
*
yplane
=
mpi
->
planes
[
0
];
unsigned
int
ystride
=
mpi
->
stride
[
0
];
int
pict_type
=
mpi
->
pict_type
;
int
w
=
mpi
->
w
,
h
=
mpi
->
h
;
int
bthresh
=
vf
->
priv
->
bthresh
;
int
bamount
=
vf
->
priv
->
bamount
;
static
const
char
*
const
picttypes
[
4
]
=
{
"unknown"
,
"I"
,
"P"
,
"B"
};
for
(
y
=
1
;
y
<=
h
;
y
++
)
{
for
(
x
=
0
;
x
<
w
;
x
++
)
nblack
+=
yplane
[
x
]
<
bthresh
;
pblack
=
nblack
*
100
/
(
w
*
y
);
if
(
pblack
<
bamount
)
break
;
yplane
+=
ystride
;
}
if
(
pict_type
>
3
||
pict_type
<
0
)
pict_type
=
0
;
if
(
pict_type
==
1
)
vf
->
priv
->
lastkeyframe
=
vf
->
priv
->
frame
;
if
(
pblack
>=
bamount
)
mp_msg
(
MSGT_VFILTER
,
MSGL_INFO
,
"vf_blackframe: %u, %i%%, %s (I:%u)
\n
"
,
vf
->
priv
->
frame
,
pblack
,
picttypes
[
pict_type
],
vf
->
priv
->
lastkeyframe
);
vf
->
priv
->
frame
++
;
dmpi
=
vf_get_image
(
vf
->
next
,
mpi
->
imgfmt
,
MP_IMGTYPE_EXPORT
,
0
,
mpi
->
width
,
mpi
->
height
);
dmpi
->
planes
[
0
]
=
mpi
->
planes
[
0
];
dmpi
->
stride
[
0
]
=
mpi
->
stride
[
0
];
dmpi
->
planes
[
1
]
=
mpi
->
planes
[
1
];
dmpi
->
stride
[
1
]
=
mpi
->
stride
[
1
];
dmpi
->
planes
[
2
]
=
mpi
->
planes
[
2
];
dmpi
->
stride
[
2
]
=
mpi
->
stride
[
2
];
vf_clone_mpi_attributes
(
dmpi
,
mpi
);
return
vf_next_put_image
(
vf
,
dmpi
,
pts
);
}
static
int
control
(
struct
vf_instance
*
vf
,
int
request
,
void
*
data
){
return
vf_next_control
(
vf
,
request
,
data
);
}
static
void
uninit
(
struct
vf_instance
*
vf
)
{
free
(
vf
->
priv
);
}
static
int
vf_open
(
vf_instance_t
*
vf
,
char
*
args
){
vf
->
priv
=
malloc
(
sizeof
(
struct
vf_priv_s
));
if
(
!
vf
->
priv
)
return
0
;
vf
->
config
=
config
;
vf
->
put_image
=
put_image
;
vf
->
control
=
control
;
vf
->
uninit
=
uninit
;
vf
->
query_format
=
query_format
;
vf
->
priv
->
bamount
=
98
;
vf
->
priv
->
bthresh
=
0x20
;
vf
->
priv
->
frame
=
0
;
vf
->
priv
->
lastkeyframe
=
0
;
if
(
args
)
sscanf
(
args
,
"%u:%u"
,
&
vf
->
priv
->
bamount
,
&
vf
->
priv
->
bthresh
);
return
1
;
}
const
vf_info_t
vf_info_blackframe
=
{
"detects black frames"
,
"blackframe"
,
"Brian J. Murrell, Julian Hall, Ivo van Poorten"
,
"Useful for detecting scene transitions"
,
vf_open
,
NULL
};
libavfilter/vf_mp.c
View file @
cc0dc50d
...
...
@@ -189,7 +189,6 @@ extern const vf_info_t vf_info_screenshot;
extern
const
vf_info_t
vf_info_ass
;
extern
const
vf_info_t
vf_info_mcdeint
;
extern
const
vf_info_t
vf_info_yadif
;
extern
const
vf_info_t
vf_info_blackframe
;
extern
const
vf_info_t
vf_info_geq
;
extern
const
vf_info_t
vf_info_ow
;
extern
const
vf_info_t
vf_info_fixpts
;
...
...
@@ -198,7 +197,6 @@ extern const vf_info_t vf_info_stereo3d;
static
const
vf_info_t
*
const
filters
[]
=
{
&
vf_info_2xsai
,
&
vf_info_blackframe
,
&
vf_info_decimate
,
&
vf_info_delogo
,
&
vf_info_denoise3d
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment