Commit 3f35f36a authored by Paul B Mahol's avatar Paul B Mahol

lavfi: port MP stereo3d filter

Signed-off-by: 's avatarPaul B Mahol <onemda@gmail.com>
parent c31458c3
...@@ -23,6 +23,7 @@ version <next>: ...@@ -23,6 +23,7 @@ version <next>:
- noise filter ported from libmpcodecs - noise filter ported from libmpcodecs
- Subtitles character encoding conversion - Subtitles character encoding conversion
- blend filter - blend filter
- stereo3d filter ported from libmpcodecs
version 1.1: version 1.1:
......
...@@ -39,6 +39,7 @@ Specifically, the GPL parts of FFmpeg are ...@@ -39,6 +39,7 @@ Specifically, the GPL parts of FFmpeg are
- vf_noise.c - vf_noise.c
- vf_pp.c - vf_pp.c
- vf_smartblur.c - vf_smartblur.c
- vf_stereo3d.c
- vf_super2xsai.c - vf_super2xsai.c
- vf_tinterlace.c - vf_tinterlace.c
- vf_yadif.c - vf_yadif.c
......
...@@ -2081,6 +2081,7 @@ removelogo_filter_deps="avcodec avformat swscale" ...@@ -2081,6 +2081,7 @@ removelogo_filter_deps="avcodec avformat swscale"
scale_filter_deps="swscale" scale_filter_deps="swscale"
smartblur_filter_deps="gpl swscale" smartblur_filter_deps="gpl swscale"
showspectrum_filter_deps="avcodec rdft" showspectrum_filter_deps="avcodec rdft"
stereo3d_filter_deps="gpl"
subtitles_filter_deps="avformat avcodec libass" subtitles_filter_deps="avformat avcodec libass"
super2xsai_filter_deps="gpl" super2xsai_filter_deps="gpl"
tinterlace_filter_deps="gpl" tinterlace_filter_deps="gpl"
......
...@@ -4832,6 +4832,127 @@ a pixel should be blurred or not. A value of 0 will filter all the ...@@ -4832,6 +4832,127 @@ a pixel should be blurred or not. A value of 0 will filter all the
image, a value included in [0,30] will filter flat areas and a value image, a value included in [0,30] will filter flat areas and a value
included in [-30,0] will filter edges. included in [-30,0] will filter edges.
@section stereo3d
Convert between different stereoscopic image formats.
This filter accepts the following named options, expressed as a
sequence of @var{key}=@var{value} pairs, separated by ":".
@table @option
@item in
Set stereoscopic image format of input.
Available values for input image formats are:
@table @samp
@item sbsl
side by side parallel (left eye left, right eye right)
@item sbsr
side by side crosseye (right eye left, left eye right)
@item sbs2l
side by side parallel with half width resolution
(left eye left, right eye right)
@item sbs2r
side by side crosseye with half width resolution
(right eye left, left eye right)
@item abl
above-below (left eye above, right eye below)
@item abr
above-below (right eye above, left eye below)
@item ab2l
above-below with half height resolution
(left eye above, right eye below)
@item ab2r
above-below with half height resolution
(right eye above, left eye below)
Default value is @samp{sbsl}.
@end table
@item out
Set stereoscopic image format of output.
Available values for output image formats are all the input formats as well as:
@table @samp
@item arbg
anaglyph red/blue gray
(red filter on left eye, blue filter on right eye)
@item argg
anaglyph red/green gray
(red filter on left eye, green filter on right eye)
@item arcg
anaglyph red/cyan gray
(red filter on left eye, cyan filter on right eye)
@item arch
anaglyph red/cyan half colored
(red filter on left eye, cyan filter on right eye)
@item arcc
anaglyph red/cyan color
(red filter on left eye, cyan filter on right eye)
@item arcd
anaglyph red/cyan color optimized with the least squares projection of dubois
(red filter on left eye, cyan filter on right eye)
@item agmg
anaglyph green/magenta gray
(green filter on left eye, magenta filter on right eye)
@item agmh
anaglyph green/magenta half colored
(green filter on left eye, magenta filter on right eye)
@item agmc
anaglyph green/magenta colored
(green filter on left eye, magenta filter on right eye)
@item agmd
anaglyph green/magenta color optimized with the least squares projection of dubois
(green filter on left eye, magenta filter on right eye)
@item aybg
anaglyph yellow/blue gray
(yellow filter on left eye, blue filter on right eye)
@item aybh
anaglyph yellow/blue half colored
(yellow filter on left eye, blue filter on right eye)
@item aybc
anaglyph yellow/blue colored
(yellow filter on left eye, blue filter on right eye)
@item aybd
anaglyph yellow/blue color optimized with the least squares projection of dubois
(yellow filter on left eye, blue filter on right eye)
@item irl
interleaved rows (left eye has top row, right eye starts on next row)
@item irr
interleaved rows (right eye has top row, left eye starts on next row)
@item ml
mono output (left eye only)
@item mr
mono output (right eye only)
@end table
Default value is @samp{arcd}.
@end table
@anchor{subtitles} @anchor{subtitles}
@section subtitles @section subtitles
......
...@@ -154,6 +154,7 @@ OBJS-$(CONFIG_SETTB_FILTER) += f_settb.o ...@@ -154,6 +154,7 @@ OBJS-$(CONFIG_SETTB_FILTER) += f_settb.o
OBJS-$(CONFIG_SHOWINFO_FILTER) += vf_showinfo.o OBJS-$(CONFIG_SHOWINFO_FILTER) += vf_showinfo.o
OBJS-$(CONFIG_SMARTBLUR_FILTER) += vf_smartblur.o OBJS-$(CONFIG_SMARTBLUR_FILTER) += vf_smartblur.o
OBJS-$(CONFIG_SPLIT_FILTER) += split.o OBJS-$(CONFIG_SPLIT_FILTER) += split.o
OBJS-$(CONFIG_STEREO3D_FILTER) += vf_stereo3d.o
OBJS-$(CONFIG_SUBTITLES_FILTER) += vf_subtitles.o OBJS-$(CONFIG_SUBTITLES_FILTER) += vf_subtitles.o
OBJS-$(CONFIG_SUPER2XSAI_FILTER) += vf_super2xsai.o OBJS-$(CONFIG_SUPER2XSAI_FILTER) += vf_super2xsai.o
OBJS-$(CONFIG_SWAPUV_FILTER) += vf_swapuv.o OBJS-$(CONFIG_SWAPUV_FILTER) += vf_swapuv.o
......
...@@ -148,6 +148,7 @@ void avfilter_register_all(void) ...@@ -148,6 +148,7 @@ void avfilter_register_all(void)
REGISTER_FILTER(SHOWINFO, showinfo, vf); REGISTER_FILTER(SHOWINFO, showinfo, vf);
REGISTER_FILTER(SMARTBLUR, smartblur, vf); REGISTER_FILTER(SMARTBLUR, smartblur, vf);
REGISTER_FILTER(SPLIT, split, vf); REGISTER_FILTER(SPLIT, split, vf);
REGISTER_FILTER(STEREO3D, stereo3d, vf);
REGISTER_FILTER(SUBTITLES, subtitles, vf); REGISTER_FILTER(SUBTITLES, subtitles, vf);
REGISTER_FILTER(SUPER2XSAI, super2xsai, vf); REGISTER_FILTER(SUPER2XSAI, super2xsai, vf);
REGISTER_FILTER(SWAPUV, swapuv, vf); REGISTER_FILTER(SWAPUV, swapuv, vf);
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
#include "libavutil/avutil.h" #include "libavutil/avutil.h"
#define LIBAVFILTER_VERSION_MAJOR 3 #define LIBAVFILTER_VERSION_MAJOR 3
#define LIBAVFILTER_VERSION_MINOR 41 #define LIBAVFILTER_VERSION_MINOR 42
#define LIBAVFILTER_VERSION_MICRO 100 #define LIBAVFILTER_VERSION_MICRO 100
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment