Commit Graph

3778 Commits

Author SHA1 Message Date
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
Stefano Sabatini dcc1b32361 lavfi/select: add support for dynamic number of outputs 2013-04-17 22:34:05 +02:00
Paul B Mahol f0a149e538 lavfi: remove bad inverse telecine filters
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-17 11:51:16 +00:00
Pavel Koshevoy e5644313c5 examples/filtering_audio: get rid of AVABufferSinkParams
AVABufferSinkParams are ignored by avfilter_graph_create_filter,
therefore the example is misleading.  Use av_opt_set_int_list to
configure abuffersink directly.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 11:11:57 +02:00
Michael Niedermayer f2619cbd61 examples/filtering_audio: enable ref counted frames
Fixes accessing freed memory

Signe-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 11:11:57 +02:00
Stefano Sabatini dc11acdf2d doc/filters: fix sentence in setsar/setdar docs 2013-04-16 22:15:40 +02:00
Stefano Sabatini 41985cb0ab doc/filters: merge asplit and split documentation
Also move them to multimedia filters section.
2013-04-15 23:40:05 +02:00
Stefano Sabatini 3453b0196f lavfi/split: fix minor documentation issues
Use verbal form to describe "outputs" options, and mention it in the
manual.
2013-04-15 23:35:49 +02:00
Clément Bœsch 34186832de doc/filters: add a curves example with psfile. 2013-04-15 21:18:17 +02:00
Paul B Mahol 9e6dd24fa1 doc/filters: move aphaser to right(audio) chapter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-15 16:23:08 +00:00
Clément Bœsch 1cb02d4fbc lavfi/curves: add support for Photoshop curves files (.acv). 2013-04-15 11:35:46 +02:00
Clément Bœsch 99dac39339 lavfi/curves: add support for master component. 2013-04-15 11:35:06 +02:00
Stefano Sabatini bc1847addf doc/filters: remove mention to telecine mp filter
It was removed in 32a7b858c9.
2013-04-14 21:11:31 +02:00
Stefano Sabatini fba3a3bbfb doc: document -opencl_options option in ff* tools manuals 2013-04-14 20:30:34 +02:00
Clément Bœsch 458d956b09 doc/filters: move mpdecimate doc to a more appropriate position. 2013-04-14 15:59:37 +02:00
Clément Bœsch 7a92ec93c6 lavfi: port IVTC filters from vapoursynth. 2013-04-14 15:59:37 +02:00
Clément Bœsch ab0ad6eccf lavfi: rename decimate to mpdecimate.
The next commit will introduce a proper decimation filter to be used
along with the field matching filter. To avoid confusion with this
filter which has currently a very limited usage (and will not work
properly with the fieldmatching filter), the new decimation filter will
take the decimate name, and this filter is renamed to mpdecimate.
2013-04-14 15:59:37 +02:00