Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
F
ffmpeg
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
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
ffmpeg
Commits
47619e41
Commit
47619e41
authored
Feb 11, 2013
by
Paul B Mahol
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
blend filter
Signed-off-by:
Paul B Mahol
<
onemda@gmail.com
>
parent
8036ba29
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
113 additions
and
2 deletions
+113
-2
Changelog
Changelog
+1
-0
filters.texi
doc/filters.texi
+108
-0
Makefile
libavfilter/Makefile
+1
-0
allfilters.c
libavfilter/allfilters.c
+1
-0
version.h
libavfilter/version.h
+2
-2
vf_blend.c
libavfilter/vf_blend.c
+0
-0
No files found.
Changelog
View file @
47619e41
...
@@ -22,6 +22,7 @@ version <next>:
...
@@ -22,6 +22,7 @@ version <next>:
- RF64 support in WAV muxer
- RF64 support in WAV muxer
- noise filter ported from libmpcodecs
- noise filter ported from libmpcodecs
- Subtitles character encoding conversion
- Subtitles character encoding conversion
- blend filter
version 1.1:
version 1.1:
...
...
doc/filters.texi
View file @
47619e41
...
@@ -1778,6 +1778,114 @@ threshold, and defaults to 98.
...
@@ -1778,6 +1778,114 @@ threshold, and defaults to 98.
@var{threshold} is the threshold below which a pixel value is
@var{threshold} is the threshold below which a pixel value is
considered black, and defaults to 32.
considered black, and defaults to 32.
@section blend
Blend two video frames into each other.
It takes two input streams and outputs one stream, the first input is the
"top" layer and second input is "bottom" layer.
Output terminates when shortest input terminates.
This filter accepts a list of options in the form of @var{key}=@var{value}
pairs separated by ":". A description of the accepted options follows.
@table @option
@item c0_mode
@item c1_mode
@item c2_mode
@item c3_mode
@item all_mode
Set blend mode for specific pixel component or all pixel components in case
of @var{all_mode}. Default value is @code{normal}.
Available values for component modes are:
@table @samp
@item addition
@item and
@item average
@item burn
@item darken
@item difference
@item divide
@item dodge
@item exclusion
@item hardlight
@item lighten
@item multiply
@item negation
@item normal
@item or
@item overlay
@item phoenix
@item pinlight
@item reflect
@item screen
@item softlight
@item subtract
@item vividlight
@item xor
@end table
@item c0_opacity
@item c1_opacity
@item c2_opacity
@item c3_opacity
@item all_opacity
Set blend opacity for specific pixel component or all pixel components in case
of @var{all_expr}. Only used in combination with pixel component blend modes.
@item c0_expr
@item c1_expr
@item c2_expr
@item c3_expr
@item all_expr
Set blend expression for specific pixel component or all pixel components in case
of @var{all_expr}. Note that related mode options will be ignored if those are set.
The expressions can use the following variables:
@table @option
@item X
@item Y
the coordinates of the current sample
@item W
@item H
the width and height of currently filtered plane
@item SW
@item SH
Width and height scale depending on the currently filtered plane. It is the
ratio between the corresponding luma plane number of pixels and the current
plane ones. E.g. for YUV4:2:0 the values are @code{1,1} for the luma plane, and
@code{0.5,0.5} for chroma planes.
@item T
Time of the current frame, expressed in seconds.
@item TOP, A
Value of pixel component at current location for first video frame (top layer).
@item BOTTOM, B
Value of pixel component at current location for second video frame (bottom layer).
@end table
@end table
@itemize
@item
Apply transition from bottom layer to top layer in first 10 seconds:
@example
blend=all_expr='A*(if(gte(T,10),1,T/10))+B*(1-(if(gte(T,10),1,T/10)))'
@end example
@item
Apply 1x1 checkerboard effect:
@example
blend=all_expr='if(eq(mod(X,2),mod(Y,2)),A,B)'
@end example
@end itemize
@section boxblur
@section boxblur
Apply boxblur algorithm to the input video.
Apply boxblur algorithm to the input video.
...
...
libavfilter/Makefile
View file @
47619e41
...
@@ -100,6 +100,7 @@ OBJS-$(CONFIG_ALPHAMERGE_FILTER) += vf_alphamerge.o
...
@@ -100,6 +100,7 @@ OBJS-$(CONFIG_ALPHAMERGE_FILTER) += vf_alphamerge.o
OBJS-$(CONFIG_BBOX_FILTER)
+=
bbox.o
vf_bbox.o
OBJS-$(CONFIG_BBOX_FILTER)
+=
bbox.o
vf_bbox.o
OBJS-$(CONFIG_BLACKDETECT_FILTER)
+=
vf_blackdetect.o
OBJS-$(CONFIG_BLACKDETECT_FILTER)
+=
vf_blackdetect.o
OBJS-$(CONFIG_BLACKFRAME_FILTER)
+=
vf_blackframe.o
OBJS-$(CONFIG_BLACKFRAME_FILTER)
+=
vf_blackframe.o
OBJS-$(CONFIG_BLEND_FILTER)
+=
vf_blend.o
OBJS-$(CONFIG_BOXBLUR_FILTER)
+=
vf_boxblur.o
OBJS-$(CONFIG_BOXBLUR_FILTER)
+=
vf_boxblur.o
OBJS-$(CONFIG_COLORMATRIX_FILTER)
+=
vf_colormatrix.o
OBJS-$(CONFIG_COLORMATRIX_FILTER)
+=
vf_colormatrix.o
OBJS-$(CONFIG_COPY_FILTER)
+=
vf_copy.o
OBJS-$(CONFIG_COPY_FILTER)
+=
vf_copy.o
...
...
libavfilter/allfilters.c
View file @
47619e41
...
@@ -94,6 +94,7 @@ void avfilter_register_all(void)
...
@@ -94,6 +94,7 @@ void avfilter_register_all(void)
REGISTER_FILTER
(
BBOX
,
bbox
,
vf
);
REGISTER_FILTER
(
BBOX
,
bbox
,
vf
);
REGISTER_FILTER
(
BLACKDETECT
,
blackdetect
,
vf
);
REGISTER_FILTER
(
BLACKDETECT
,
blackdetect
,
vf
);
REGISTER_FILTER
(
BLACKFRAME
,
blackframe
,
vf
);
REGISTER_FILTER
(
BLACKFRAME
,
blackframe
,
vf
);
REGISTER_FILTER
(
BLEND
,
blend
,
vf
);
REGISTER_FILTER
(
BOXBLUR
,
boxblur
,
vf
);
REGISTER_FILTER
(
BOXBLUR
,
boxblur
,
vf
);
REGISTER_FILTER
(
COLORMATRIX
,
colormatrix
,
vf
);
REGISTER_FILTER
(
COLORMATRIX
,
colormatrix
,
vf
);
REGISTER_FILTER
(
COPY
,
copy
,
vf
);
REGISTER_FILTER
(
COPY
,
copy
,
vf
);
...
...
libavfilter/version.h
View file @
47619e41
...
@@ -29,8 +29,8 @@
...
@@ -29,8 +29,8 @@
#include "libavutil/avutil.h"
#include "libavutil/avutil.h"
#define LIBAVFILTER_VERSION_MAJOR 3
#define LIBAVFILTER_VERSION_MAJOR 3
#define LIBAVFILTER_VERSION_MINOR 3
8
#define LIBAVFILTER_VERSION_MINOR 3
9
#define LIBAVFILTER_VERSION_MICRO 10
6
#define LIBAVFILTER_VERSION_MICRO 10
0
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
LIBAVFILTER_VERSION_MINOR, \
LIBAVFILTER_VERSION_MINOR, \
...
...
libavfilter/vf_blend.c
0 → 100644
View file @
47619e41
This diff is collapsed.
Click to expand it.
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