Commit Graph

3794 Commits

Author SHA1 Message Date
Michael Niedermayer
3319679d0a Merge commit 'a1e05b0487a1939334c2920fc7f9936bc9efe876'
* commit 'a1e05b0487a1939334c2920fc7f9936bc9efe876':
  lavfi: add trim and atrim filters.

Conflicts:
	Changelog
	doc/filters.texi
	libavfilter/Makefile
	libavfilter/allfilters.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-01 11:34:34 +02:00
Michael Niedermayer
1cba7fa364 Merge commit 'b472938233b98178ed6c1353c37e0dc7ab585902'
* commit 'b472938233b98178ed6c1353c37e0dc7ab585902':
  lavfi: add an asetpts filter

Conflicts:
	Changelog
	doc/filters.texi
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/f_setpts.c
	libavfilter/setpts.c
	libavfilter/version.h
	libavfilter/vf_setpts.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-01 10:59:21 +02:00
Clément Bœsch
14f45bcbe7 doc/filters: fix scale example equivalence.
scale=w=200:h=100 and scale=w=200:h=100 are of course equivalent...
2013-05-01 04:46:14 +02:00
Clément Bœsch
e3e66568cc doc/filters: replace hqdn3d with smartblur in timeline section.
hqdn3d needs some adjustements before timeline support can be restored
(patch welcome).
2013-05-01 04:44:27 +02:00
Anton Khirnov
a1e05b0487 lavfi: add trim and atrim filters. 2013-04-30 11:24:57 +02:00
Anton Khirnov
b472938233 lavfi: add an asetpts filter 2013-04-30 11:17:57 +02:00
Paul B Mahol
2bdd434931 lavfi/stereo3d: add support for alternating frames input & output format
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-30 09:13:36 +00:00
Stefano Sabatini
0400176772 lavfi/mp: remove mp=tinterlace wrapper
From various tests, there is no evidence that the filter is faster than
the native tinterlace, and it has several more limitations and a few
bugs.

See thread:
Subject: [FFmpeg-devel] [NOPATCH] lavfi/mp: drop tinterlace wrapper
Date: Wed, 5 Sep 2012 00:26:01 +0200
2013-04-28 13:16:40 +02:00
Stefano Sabatini
dfb3de21d8 doc/filters: apply various general fixes to vidstabdetect docs
Adopt generally used conventions, extend and clarify explanations.
2013-04-28 13:16:40 +02:00
Stefano Sabatini
9f3d873f5f doc/filters: update/extend transpose filter documentation
In particular, deprecate numerical values for the dir option.
2013-04-27 20:34:02 +02:00
Stefano Sabatini
1e4f75debd doc/filters: readjust w/h option descriptions 2013-04-27 18:47:51 +02:00
Stefano Sabatini
efff09418d doc/filters: fix grammar for removelogo filter doc sentence 2013-04-27 18:47:45 +02:00
Paul B Mahol
cc5c155959 astats filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-27 12:40:34 +00:00
Paul B Mahol
7becddd5f3 doc/filters: remove non-existent ft_load_flags entry
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-26 23:37:37 +00:00
Paul B Mahol
e0a636fadf doc/filters: fix afade 2nd example
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-26 09:39:10 +00:00
highgod0401
cd134963e8 lavfi/unsharp: add opencl unsharp filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-26 03:05:26 +02:00
Stefano Sabatini
16cecf9c3d doc/filters: put vidstab filters documentation in a sensible order 2013-04-25 11:26:33 +02:00
Stefano Sabatini
cb23de1904 doc/filters: remove "q" constant docs for noise mode
It was removed in 62447248f3.
2013-04-25 11:19:53 +02:00
Stefano Sabatini
f40cf96ec0 doc: remove all-components.texi, include its content verbatim
Force re-generation of the manuals when an included file is modified.
The current dependency generation system is enable to track nested
inclusions.

The drawback is that the files will be generated even when there is no
strict need (for example if filters.texi is modified, ffmpeg.1 is
rebuilt), thus it trades a false negative with a false positive.
2013-04-25 11:19:53 +02:00
Michael Niedermayer
575399c7e1 Merge commit 'fc18cc44ebfae07da153dc782572e7ce2f6fe47d'
* commit 'fc18cc44ebfae07da153dc782572e7ce2f6fe47d':
  fate: add CVFC1_Sony_C to h264 conformance tests
  doc/APIchanges: add missing hashes and dates

Conflicts:
	doc/APIchanges
	tests/fate/h264.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-25 09:54:11 +02:00
Clément Bœsch
c857c21a8c doc/filters: reword vidstab options intro. 2013-04-24 18:30:42 +02:00
Georg Martius
4364e1f150 lavfi: add video stabilization plugins using vid.stab library
vidstabdetect and vidstabtransform common functions for interfacing
vid.stab are in libavfilter/vidstabutils.c

Signed-off-by: Georg Martius <martius@mis.mpg.de>
2013-04-24 18:30:42 +02:00
Stefano Sabatini
6f1716c4b6 doc/filters: amend documentation for the hue filter
Make clear that the options accept an expression.
2013-04-24 17:47:10 +02:00
Stefano Sabatini
18144950d4 doc/filters: introduce example in vflip filter 2013-04-24 17:47:03 +02:00
Stefano Sabatini
892af3eb47 doc/filters: split luma/chroma descriptions for unsharp option
Honour declaration order in filter implementation, for shorthand
consistency.
2013-04-24 17:46:56 +02:00
Anton Khirnov
35386fbf41 doc/APIchanges: add missing hashes and dates 2013-04-24 09:48:57 +02:00
Stefano Sabatini
dfdee6cab3 doc/filters: sort multimedia filters by name
Also favor the video filter name for indexing, in case there is an a*
audio filter variant.
2013-04-23 22:48:47 +02:00
Michael Niedermayer
488c760091 doc/filters: document geq rgb mode
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-23 16:13:53 +02:00
Michael Niedermayer
a9a537b154 avfilter/drawtext: add pict_type support
Fixes Ticket2470

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-23 03:35:28 +02:00
Clément Bœsch
15d2f26998 lavfi/overlay: support timeline through the new system. 2013-04-23 01:02:28 +02:00
Clément Bœsch
38853169ce lavfi: add 'enable' command injection to filters supporting timeline. 2013-04-23 01:02:28 +02:00
Clément Bœsch
fdd93eabfb lavfi: add timeline support.
Flag added in a few simple filters. A bunch of other filters can likely
use the feature as well.
2013-04-23 01:02:27 +02:00
Nicolas Bertrand
c81a706381 JPEG 2000 decoder for DCinema
Based on the 2007 GSoC project from Kamil Nowosad <k.nowosad@students.mimuw.edu.pl>
Updated to current programming standards, style and many more small
fixes by Diego Biurrun <diego@biurrun.de>.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-04-22 15:38:29 +02:00
Paul B Mahol
2f11aa141a lavfi: remove mp=down3dright
Same funcionality is provided by stereo3d=ab[2]{l,r}:sbs[2]{l,r}.
Additional "features" are barely useful and cause crash or artifacts.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-22 11:49:13 +00:00
Paul B Mahol
0327400ee3 doc/filters: add examples for stereo3d
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-22 11:49:13 +00:00
Andy Martin
4ac2da3793 lavfi/fade: Added ability to do video fade based on timestamp 2013-04-21 20:57:02 +02:00
Stefano Sabatini
3e40b85683 lavfi: add interleave filters 2013-04-21 18:24:04 +02:00
Nicolas George
b57c23f8c8 lavfi: add asetrate filter. 2013-04-21 15:20:50 +02:00
Clément Bœsch
5927ebab51 doc/general: animated GIF are now compressed. 2013-04-19 23:59:21 +02:00
Michael Niedermayer
f4b05cd841 Merge commit '5e83d9aced2fc2b2e1360452794c58aba55d497c'
* commit '5e83d9aced2fc2b2e1360452794c58aba55d497c':
  h264: fully support cropping.

Conflicts:
	doc/APIchanges
	libavcodec/h264.c
	libavcodec/h264_ps.c
	libavcodec/options_table.h
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-19 22:46:51 +02:00
Clément Bœsch
380cfce2b2 lavc: add AV_CODEC_PROP_TEXT_SUB.
CC are not marked. Also allow potential mixed types later.
2013-04-19 13:15:54 +02:00
Anton Khirnov
5e83d9aced h264: fully support cropping.
Based on a patch by Vittorio Giovara <vittorio.giovara@gmail.com>

Fixes Bug 378.
2013-04-19 09:28:08 +02:00
Paul B Mahol
b63f7b3ac7 lavfi/afade: use AV_OPT_TYPE_DURATION
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-19 00:56:55 +00:00
Michael Niedermayer
7254afdf1c Merge remote-tracking branch 'cigaes/master'
* cigaes/master:
  ffmpeg: make -aspect work with -vcodec copy.
  lavfi/vf_aspect: improve compatibility of parsing.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-19 01:02:21 +02:00
Clément Bœsch
7c1a002c78 subtitles: introduce ASS codec id and use it.
Currently, we have a AV_CODEC_ID_SSA, which matches the way the ASS/SSA
markup is muxed in a standalone .ass/.ssa file. This means the AVPacket
data starts with a "Dialogue:" string, followed by a timing information
(start and end of the event as string) and a trailing CRLF after each
line. One packet can contain several lines. We'll refer to this layout
as "SSA" or "SSA lines".

In matroska, this markup is not stored as such: it has no "Dialogue:"
prefix, it contains a ReadOrder field, the timing information is not in
the payload, and it doesn't contain the trailing CRLF. See [1] for more
info. We'll refer to this layout as "ASS".

Since we have only one common codec for both formats, the matroska
demuxer is constructing an AVPacket following the "SSA lines" format.
This causes several problems, so it was decided to change this into
clean ASS packets.

Some insight about what is changed or unchanged in this commit:

  CODECS
  ------

  - the decoding process still writes "SSA lines" markup inside the ass
    fields of the subtitles rectangles (sub->rects[n]->ass), which is
    still the current common way of representing decoded subtitles
    markup. It is meant to change later.

  - new ASS codec id: AV_CODEC_ID_ASS (which is different from the
    legacy AV_CODEC_ID_SSA)

  - lavc/assdec: the "ass" decoder is renamed into "ssa" (instead of
    "ass") for consistency with the codec id and allows to add a real
    ass decoder. This ass decoder receives clean ASS lines (so it starts
    with a ReadOrder, is followed by the Layer, etc). We make sure this
    is decoded properly in a new ass-line rectangle of the decoded
    subtitles (the ssa decoder OTOH is doing a simple straightforward
    copy). Using the packet timing instead of data string makes sure the
    ass-line now contains the appropriate timing.

  - lavc/assenc: just like the ass decoder, the "ssa" encoder is renamed
    into "ssa" (instead of "ass") for consistency with the codec id, and
    allows to add a real "ass" encoder.

    One important thing about this encoder is that it only supports one
    ass rectangle: we could have put several dialogue events in the
    AVPacket (separated by a \0 for instance) but this would have cause
    trouble for the muxer which needs not only the start time, but also
    the duration: typically, you have merged events with the same start
    time (stored in the AVPacket->pts) but a different duration. At the
    moment, only the matroska do the merge with the SSA-line codec.

    We will need to make sure all the decoders in the future can't add
    more than one rectangle (and only one Dialogue line in it
    obviously).

  FORMATS
  -------

  - lavf/assenc: the .ass/.ssa muxer can take both SSA and ASS packets.
    In the case of ASS packets as input, it adds the timing based on the
    AVPacket pts and duration, and mux it with "Dialogue:", trailing
    CRLF, etc.

  - lavf/assdec: unchanged; it currently still only outputs SSA-lines
    packets.

  - lavf/mkv: the demuxer can now output ASS packets without the need of
    any "SSA-lines" reconstruction hack. It will become the default at
    next libavformat bump, and the SSA support will be dropped from the
    demuxer. The muxer can take ASS packets since it's muxed normally,
    and still supports the old SSA packets. All the SSA support and
    hacks in Matroska code will be dropped at next lavf bump.

[1]: http://www.matroska.org/technical/specs/subtitles/ssa.html
2013-04-18 23:23:59 +02:00
Nicolas George
b1cc12d0e3 ffmpeg: make -aspect work with -vcodec copy. 2013-04-18 22:59:54 +02:00
Michael Niedermayer
5b9675b5ac Merge remote-tracking branch 'cigaes/master'
* cigaes/master:
  examples/filtering_audio: fix frame leak.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-18 20:15:47 +02:00
Paul B Mahol
212960eea4 colorchannelmixer filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-18 15:31:35 +00:00
Paul B Mahol
449cdd547b colorbalance filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-18 15:30:10 +00:00
Nicolas George
300ca0763b examples/filtering_audio: fix frame leak.
The frame is not used after being added to the filter
graph, there is no need to keep the reference.
2013-04-18 17:03:01 +02:00