Commit 402a4114 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit 'a7d0e7ea'

* commit 'a7d0e7ea':
  lavfi: add framepack filter

Conflicts:
	Changelog
	doc/filters.texi
	libavfilter/allfilters.c
	libavfilter/version.h
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 3b8299c1 a7d0e7ea
......@@ -18,6 +18,7 @@ version <next>
- ATRAC3+ decoder
- VP8 in Ogg demuxing
- side & metadata support in NUT
- framepack filter
version 2.1:
......
......@@ -4521,6 +4521,51 @@ fps=fps=film:round=near
@end example
@end itemize
@section framepack
Pack two different video streams into a stereoscopic video, setting proper
metadata on supported codecs. The two views should have the same size and
framerate and processing will stop when the shorter video ends. Please note
that you may conveniently adjust view properties with the @ref{scale} and
@ref{fps} filters.
This filter accepts the following named parameters:
@table @option
@item format
Desired packing format. Supported values are:
@table @option
@item sbs
Views are next to each other (default).
@item tab
Views are on top of each other.
@item lines
Views are packed by line.
@item columns
Views are eacked by column.
@item frameseq
Views are temporally interleaved.
@end table
@end table
Some examples follow:
@example
# Convert left and right views into a frame sequential video.
ffmpeg -i LEFT -i RIGHT -filter_complex framepack=frameseq OUTPUT
# Convert views into a side-by-side video with the same output resolution as the input.
ffmpeg -i LEFT -i RIGHT -filter_complex [0:v]scale=w=iw/2[left],[1:v]scale=w=iw/2[right],[left][right]framepack=sbs OUTPUT
@end example
@section framestep
Select one frame every N-th frame.
......
......@@ -140,6 +140,7 @@ OBJS-$(CONFIG_FIELDORDER_FILTER) += vf_fieldorder.o
OBJS-$(CONFIG_FORMAT_FILTER) += vf_format.o
OBJS-$(CONFIG_FRAMESTEP_FILTER) += vf_framestep.o
OBJS-$(CONFIG_FPS_FILTER) += vf_fps.o
OBJS-$(CONFIG_FRAMEPACK_FILTER) += vf_framepack.o
OBJS-$(CONFIG_FREI0R_FILTER) += vf_frei0r.o
OBJS-$(CONFIG_GEQ_FILTER) += vf_geq.o
OBJS-$(CONFIG_GRADFUN_FILTER) += vf_gradfun.o
......
......@@ -136,6 +136,7 @@ void avfilter_register_all(void)
REGISTER_FILTER(FIELDORDER, fieldorder, vf);
REGISTER_FILTER(FORMAT, format, vf);
REGISTER_FILTER(FPS, fps, vf);
REGISTER_FILTER(FRAMEPACK, framepack, vf);
REGISTER_FILTER(FRAMESTEP, framestep, vf);
REGISTER_FILTER(FREI0R, frei0r, vf);
REGISTER_FILTER(GEQ, geq, vf);
......
......@@ -30,8 +30,8 @@
#include "libavutil/version.h"
#define LIBAVFILTER_VERSION_MAJOR 4
#define LIBAVFILTER_VERSION_MINOR 0
#define LIBAVFILTER_VERSION_MICRO 103
#define LIBAVFILTER_VERSION_MINOR 1
#define LIBAVFILTER_VERSION_MICRO 100
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
LIBAVFILTER_VERSION_MINOR, \
......
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