1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-02 03:06:28 +02:00
Commit Graph

3263 Commits

Author SHA1 Message Date
Anton Khirnov
b439c992c2 lavfi: switch to an AVOptions-based system. 2013-04-09 18:45:37 +02:00
Michael Niedermayer
5fbf9c12aa avfilter/vf_noise: fix build without mmx*inline
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-09 04:44:32 +02:00
Paul B Mahol
9dc88ac367 lavfi: remove noise libmpcodecs wrapper
Native filter have reached similar performance.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-08 20:57:59 +00:00
Paul B Mahol
6934244414 lavfi/noise: copy inline asm from mp=noise
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-08 20:28:57 +00:00
Paul B Mahol
ed8373e7db lavfi: always check return value of ff_get_{audio,video}_buffer()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-08 19:24:09 +00:00
Clément Bœsch
e82f562fa5 lavfi/mandelbrot: reindent after 51bcd5cd. 2013-04-08 20:40:54 +02:00
Clément Bœsch
51bcd5cd65 lavfi/mandelbrot: fix speedloss with default config after morphing introduction.
Morphing was introduced in 0d6e5a171 and forced cos/sin computations
with some mult all the time. This commit makes sure these are computed
only when morphing is enabled.
2013-04-08 20:35:18 +02:00
Paul B Mahol
9fce2b8854 lavfi/il: use standard option parsing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-08 12:10:37 +00:00
Paul B Mahol
018cc6f026 lavfi/histogram: use standard options parsing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-08 09:04:02 +00:00
Paul B Mahol
1f97dfb77f lavfi/blend,noise: remove unedeed av_opt_free() call
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-08 09:02:03 +00:00
Michael Niedermayer
28943c4d31 vf_noise: Fix av_lfg_get() maximum value
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 19:58:30 +02:00
Michael Niedermayer
62447248f3 vf_noise: remove low quality mode
It produces vissible correlation between lines

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 19:54:36 +02:00
Michael Niedermayer
21f4fc2e40 avfilter/vf_mp: fix x86 cpu caps
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 18:23:59 +02:00
Paul B Mahol
2b26077c95 lavfi/blend: use standard options parsing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-05 00:14:55 +00:00
Paul B Mahol
a95e683867 lavfi/noise: use standard options parsing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-05 00:14:55 +00:00
Paul B Mahol
659672f3ee lavfi/afade: use standard options parsing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-05 00:14:55 +00:00
Paul B Mahol
bd252ff6fa lavfi/smptebars: fix invalid writes
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-04 22:10:42 +00:00
Paul B Mahol
b1dea2c0d8 lavfi/blend: add N variable
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-04 15:30:06 +00:00
Paul B Mahol
6a08ccd61d lavfi/smptebars: fix output for subsampled yuv
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-04 14:32:49 +00:00
Michael Niedermayer
ab2989378f Merge commit 'dbb1425811a672eddf4acf0513237cdf20f83756'
* commit 'dbb1425811a672eddf4acf0513237cdf20f83756':
  lavf: make sure stream probe data gets freed.
  avfiltergraph: set deprecated filter_count.

Conflicts:
	libavformat/utils.c

See: 44a7a6300d

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-04 13:24:33 +02:00
Anton Khirnov
6d0546bbaf avfiltergraph: set deprecated filter_count. 2013-04-04 07:52:32 +02:00
Nicolas George
d38c173dfb lavfi/af_atempo: simplify request_frame loop. 2013-04-03 17:44:10 +02:00
Nicolas George
b570f24d76 lavfi/af_asetnsamples: simplify request_frame loop. 2013-04-03 17:44:10 +02:00
Nicolas George
9566ba91ab lavfi/f_ebur128: remove request_frame hack. 2013-04-03 17:44:10 +02:00
Nicolas George
77fa554b6e lavfi/vf_tile: simplify request_frame loop. 2013-04-03 17:44:10 +02:00
Nicolas George
69d67fb622 lavfi: reindent after last commit. 2013-04-03 17:44:10 +02:00
Nicolas George
79d8cfacf0 lavfi: loop on request_frame if necessary.
Some filters need several input frames before producing output.
For these filter, it becomes simpler to return 0 in
request_frame() and let the framework call it again until
output has been produced.
2013-04-03 17:33:27 +02:00
Michael Niedermayer
c208576cef Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
  Fix make checkheaders without opencl headers.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-03 15:35:23 +02:00
Carl Eugen Hoyos
c484b3af15 Fix make checkheaders without opencl headers. 2013-04-03 15:28:29 +02:00
Michael Niedermayer
d3fc2db47e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avfiltergraph: check for sws opts being non-NULL before using them.

Conflicts:
	libavfilter/avfiltergraph.c
	libavfilter/graphparser.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-03 15:20:05 +02:00
Paul B Mahol
6fcb4ae1d8 lavfi/afade * biquads: call av_frame_copy_props()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-03 11:10:00 +00:00
Paul B Mahol
0ab10f69ef lavfi/earwax: clip sample, this is what sox does
Fixes #1884.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-03 10:55:13 +00:00
Carl Eugen Hoyos
6e90d9e206 vf_deshake: Reorder constant arguments in an if() statement.
Fixes compilation with clang on netbsd with --disable-optimizations.

Tested-by: Paul B Mahol
2013-04-03 12:52:38 +02:00
Paul B Mahol
bf65752848 aphaser filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-03 08:33:59 +00:00
Anton Khirnov
6e3c13a559 avfiltergraph: check for sws opts being non-NULL before using them.
Avoid snprintfing a NULL pointer.

CC: libav-stable@libav.org
2013-04-03 09:29:55 +02:00
Clément Bœsch
e7692a9bac lavfi/edgedetect: reindent after previous commit. 2013-04-03 00:31:19 +02:00
Clément Bœsch
e366aec030 lavfi/edgedetect: add direct path. 2013-04-03 00:30:48 +02:00
highgod0401
9079359141 deshake opencl based on comments on 20130402 3rd
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-02 15:57:44 +02:00
Clément Bœsch
6278bc8a6c lavfi/curves: make use of options to store the preset names. 2013-04-01 20:37:45 +02:00
Nicolas George
52853077ee lavfi/af_asetnsamples: fix EOF handling.
Only filter one buffered frame.
Correctly return EOF if there is none.
2013-04-01 10:38:52 +02:00
Nicolas George
f810ca63f8 lavfi: detect merge failure for unknown layouts.
Detect when filtering known layouts from an explicit list
results in an empty list.

Fix erratic behavior.
2013-04-01 10:37:48 +02:00
Stefano Sabatini
39aad43465 lavfi/overlay: fix debug PTS output in try_filter_frame()
The PTS of the input frames must be interpreted according to the input
timebase, which is not the same as the output timebase.
2013-03-31 18:00:44 +02:00
Clément Bœsch
01b2d1288a lavfi/volume: use designated initializers for the sample_fmts declaration. 2013-03-31 11:58:20 +02:00
Clément Bœsch
4dae804d3c lavfi/volume: use copy props helper instead of incomplete manual code. 2013-03-31 11:58:20 +02:00
Clément Bœsch
29667a2c20 decimate: check for avctx ptr before closing.
Fixes a crash init failed before setting avctx.
2013-03-31 10:00:32 +02:00
Michael Niedermayer
e0dd8cadcc af_join: fix channel count and format
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 15:29:14 +01:00
Michael Niedermayer
acaee26008 af_channelsplit: set output channels, fix assertion failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 14:29:11 +01:00
Paul B Mahol
705b607db8 lavfi/biquads: fix min allowed option value
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-28 11:52:11 +00:00
Clément Bœsch
1ae44c87c9 lavfi/gradfun: remove rounding to match C and SSE code.
There is no noticable benefit for such precision.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-28 07:59:29 +01:00
Clément Bœsch
38a2f88d39 lavfi/gradfun: fix dithering in MMX code.
Current dithering only uses the first 4 instead of the whole 8 random values.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-28 07:59:18 +01:00
Clément Bœsch
2d66fc543b lavfi/gradfun: fix rounding in MMX code.
Current code divides before increasing precision.

Also reduce upper bound for strength from 255 to 64.  This will prevent
an overflow in the SSSE3 and MMX filter_line code: delta is expressed as
an u16 being shifted by 2 to the left. If it overflows, having a
strength not above 64 will make sure that m is set to 0 (making the
m*m*delta >> 14 expression void).

A value above 64 should not make any sense unless gradfun is used as
a blur filter.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-28 07:59:04 +01:00
Clément Bœsch
8b9a153ef3 lavfi/gradfun: do not increment DC pointer for odd values.
First DC is only used once otherwise. This also makes the code
consistent with ASM versions.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-28 07:58:55 +01:00
Michael Niedermayer
0d6e5a1712 vsrc_mandelbrot: Mandel morphing support
Example: ffplay -f lavfi "mandelbrot=outer=outz:morphamp=1:end_scale=2:maxiter=100"

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 19:27:37 +01:00
Michael Niedermayer
79938a4e97 mandelbrot: add outer coloring method showing bailouted z
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 16:21:44 +01:00
Michael Niedermayer
a2b5825649 vsrc_mandelbrot: support coloring the outside white
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 16:00:18 +01:00
Paul B Mahol
62d36abef4 lavfi/mptestsrc: make use of AV_OPT_TYPE_VIDEO_RATE
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-26 13:23:42 +00:00
Paul B Mahol
401f9c95e9 lavfi/cellauto: make use of AV_OPT_TYPE_VIDEO_RATE
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-26 13:23:42 +00:00
Paul B Mahol
8c5b37b402 lavfi/life: make use of AV_OPT_TYPE_VIDEO_RATE
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-26 13:23:42 +00:00
Paul B Mahol
975efc8864 lavfi/mandelbrot: make use of AV_OPT_TYPE_VIDEO_RATE
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-26 13:23:42 +00:00
Paul B Mahol
54056c6655 lavfi/testsrc: make use of AV_OPT_TYPE_VIDEO_RATE
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-26 13:23:41 +00:00
Paul B Mahol
7606f4a1af lavfi/fps: make use of AV_OPT_TYPE_VIDEO_RATE
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-26 13:23:41 +00:00
Clément Bœsch
e32cbd0f54 lavfi/perms: add myself to the copyright header. 2013-03-26 02:41:05 +01:00
Clément Bœsch
9371467d9d lavfi/perms: add seed option. 2013-03-26 02:39:55 +01:00
Clément Bœsch
e600d0628e lavfi/perms: remove unecessary indirection after f7324c06. 2013-03-26 02:24:03 +01:00
Clément Bœsch
133035c40d lavfi/curves: add forgotten strong_contrast preset. 2013-03-26 01:05:26 +01:00
Clément Bœsch
183f3450fd lavfi/curves: support preset shorthand. 2013-03-26 00:04:06 +01:00
Clément Bœsch
dc65d784df lavfi/curves: add presets support.
Except for the vintage preset, the values are defined by Lou Logan based
on the ones found in Adobe Photoshop CS6.

Signed-off-by: Clément Bœsch <ubitux@gmail.com>
Signed-off-by: Lou Logan <lou@lrcd.com>
2013-03-25 23:48:51 +01:00
Björn S
f248b8a902 blend: Adding yuvj pixelformats to the blend effect
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 13:14:38 +01:00
Michael Niedermayer
ae65327e5e vsrc_testsrc: avoid floats and non bit exactness
The round to zero behavior is maintained, possibly this should
be changed to round to nearest.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 03:11:43 +01:00
Nicolas George
125acd2152 lavfi: support multiple rounds of format negotiation.
Remove the temporary hack for amerge and replace it with a
generic solution.
2013-03-24 23:17:47 +01:00
Nicolas George
00da527b44 lavfi/af_amerge: return EAGAIN if the input layouts are not known.
Also downgrade the error to a warning.
2013-03-24 23:17:47 +01:00
Clément Bœsch
386dc9a3a8 lavfi/thumbnail: add support for named options. 2013-03-24 20:38:12 +01:00
Stefano Sabatini
3b811bcf67 lavfi/colormatrix: reword error message in init
Change:
"source and destination color space are identical"

which is a true fact, but doesn't tell nothing about what's wrong, to:
"Source and destination color space must not be identical"

which tells more explicitly what the problem is.
2013-03-24 20:21:35 +01:00
Stefano Sabatini
1b140835b6 lavfi/colormatrix: add support for named options 2013-03-24 20:21:20 +01:00
Clément Bœsch
cbf224b631 lavfi/tinterlace: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
9e21c89841 lavfi/subtitles: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
06784b737a lavfi/smartblur: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
15878b2b5b lavfi/setfield: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
e62587bc5e lavfi/overlay: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
5dc074d321 lavfi/kerndeint: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
ab228f9163 lavfi/idet: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
552c02f20f lavfi/histeq: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
b27a8ba13c lavfi/gradfun: use standard options parsing. 2013-03-24 12:26:25 +01:00
Clément Bœsch
b595819cde lavfi/geq: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
cb0fb4d04d lavfi/fieldorder: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
a733481d0a lavfi/field: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
7edda1a935 lavfi/deshake: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
1341dd2dd0 lavfi/cropdetect: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
a36d903601 lavfi/boxblur: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
3f8072886b lavfi/blackframe: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
67ad9fd098 lavfi/settb: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
8b994c8c1c lavfi/select: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
f7324c068f lavfi/perms: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
07b7c2a217 lavfi/sine: use standard options parsing. 2013-03-24 12:26:24 +01:00
Clément Bœsch
3ac77f67af lavfi/apad: use standard options parsing. 2013-03-24 12:26:24 +01:00
Michael Niedermayer
62f56fd7ea buffersink/uninit: use av_frame_free() not unref
Fixes memleak

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-23 23:49:33 +01:00
Stefano Sabatini
a42d15a3a0 lavfi/anullsrc: add missing checks 2013-03-23 16:53:25 +01:00
Stefano Sabatini
4e8062c2d7 lavfi/anullsrc: remove extra parentheses 2013-03-23 16:53:19 +01:00
Stefano Sabatini
fe2cfd50f0 lavfi/anullsrc: simplify logging code in config_props 2013-03-23 16:53:13 +01:00
Stefano Sabatini
5373a2a221 lavfi/anullsrc: fix format negotiation
Samplerate and channel layouts must be set in query_formats.
2013-03-23 16:53:08 +01:00
Michael Niedermayer
9bb6504e3b Merge commit '20a8ee3061e6d777600c13db731bee3c25878991'
* commit '20a8ee3061e6d777600c13db731bee3c25878991':
  af_asyncts: fix compensation and PTS monotonicity

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-23 12:16:32 +01:00
Clément Bœsch
89b4e758d3 lavfi/blend: always peek the first frame of each queue.
Before the change, filter_frame() always waited for 2 samples in the
bottom frames queue. This notably fixes commands such as
./ffplay tests/lena.pnm -vf split,blend=c0_mode=addition
2013-03-22 23:09:08 +01:00
Jindřich Makovička
20a8ee3061 af_asyncts: fix compensation and PTS monotonicity
This patch improves af_asyncts behavior on streams with bogus PTS, which
are either non-monotonic, or contain PTS jitter, and trigger the
non-monotonicity error. With this patch, af_asyncts is able to correct
these streams and avoid the error.

Firstly, it fixes resample compensation calculation by supplying proper
units to avresample_set_compensation (sample count per second instead
of sample count per some arbitrary frame size). Also, the calculation of
the compensation itself is fixed - delta is proportional to an adjustment
of the compensation, not the compensation itself. Ideally, the compensation
should converge to a value that keeps delta at zero.

To be able to deal with sources with PTS jitter even without resampling,
small PTS errors are adjusted, so the output frames do not overlap.

Finally, one more monotonicity check is added.

The FATE reference changes because now there is 8 less samples of
silence because of the pts jitter.

Signed-off-by: Jindřich Makovička <makovick@gmail.com>
2013-03-22 20:09:34 +01:00
Paul B Mahol
c5b484e616 lavfi/vf_stereo3d: use standard options parsing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-21 09:17:32 +00:00
Michael Niedermayer
76fdced109 asrc_sine: avoid use of INFINITY as it might be a non constant
This should fix compilation on openbsd

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-21 00:53:57 +01:00
Nicolas George
2753d4ebf0 lavfi/vf_yadif: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
8d4d11cd89 lavfi/vf_unsharp: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
769cc30072 lavfi/vf_transpose: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
392ec7ec1c lavfi/vf_pad: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
b201c167d0 lavfi/vf_fps: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
4e2bcec95f lavfi/vf_fade: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
80580b405a lavi/vf_drawbox: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
37438d0a72 lavfi/vf_delogo: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
40ecd44f00 lavfi/vf_decimate: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
6202cf5dd8 lavfi/vf_crop: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
e9ca55aedd lavfi/af_volume: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
e9f45a833d lavfi/vf_tile: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
8c6c811b21 lavfi/avf_concat: use standard options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
befbcc374d lavfi: add common code to handle options parsing. 2013-03-20 21:13:56 +01:00
Nicolas George
21b092de7c lavfi: add sine audio source. 2013-03-20 21:04:28 +01:00
Nicolas George
68fb7e260b lavfi/concat: fix silence duration computation.
Inside send_silence(), delta_ts was used inconsistently:
sometimes as the new value, sometimes as the old value.

Consistently use it as the new value, and add an argument
to know the last segment duration.
2013-03-20 20:59:45 +01:00
Nicolas George
5eb273b2e7 lavfi/buffersink: check av_frame_ref() failure. 2013-03-20 13:35:24 +01:00
Paul B Mahol
ac44e52f50 lavfi/showwaves: make use of AV_OPT_TYPE_VIDEO_RATE
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-20 12:29:54 +00:00
Michael Niedermayer
df804041bd Merge commit '6599b087de62a5f9f2a8d61a1952d777d1bff804'
* commit '6599b087de62a5f9f2a8d61a1952d777d1bff804':
  buffersrc: fix a typo.
  lavc, lavfi: fix counting number of planes in AVBufferRef wrappers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-20 11:30:56 +01:00
Paul B Mahol
17c1881d58 lavfi: remove harddup libmpcodecs wrapper
It is supposed to be used with mencoder only and does
nothing when used with ffmpeg.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-19 17:15:53 +00:00
Anton Khirnov
6599b087de buffersrc: fix a typo.
Vertical shift is log2_chroma_h, not log2_chroma_w.
2013-03-19 11:12:17 +01:00
Anton Khirnov
c977039e58 lavc, lavfi: fix counting number of planes in AVBufferRef wrappers
Number of planes is not always equal to the number of components even
for formats marked with PIX_FMT_PLANAR -- e.g. NV12 has three components
in two planes.
2013-03-19 11:12:17 +01:00
Clément Bœsch
c10b57973d lavfi/pad: fix horizontal/vertical shift confusion. 2013-03-18 08:51:55 +01:00
Clément Bœsch
76d1c07c89 lavfi/ebur128: add metadata injection. 2013-03-18 03:21:08 +01:00
Michael Niedermayer
8152451b56 buffersrc: fix w/h error
Found-by: nevcairiel
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-18 02:00:57 +01:00
Michael Niedermayer
975fbd43ad Merge remote-tracking branch 'cigaes/master'
* cigaes/master:
  lavfi/buffersink: fix header.
  lavfi/buffersrc: disable deprecated warnings.
  lavfi/buffersrc: check channel count changes.
  lavfi/buffersrc: set channel layout if it is known.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-17 14:30:33 +01:00
Stefano Sabatini
5787a71637 lavfi/swapuv: remove deprecated base field use 2013-03-17 13:06:01 +01:00
Michael Niedermayer
171bd38eda Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc,lavfi: fix calculating the plane size in the AVBufferRef wrappers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-17 12:59:04 +01:00
Nicolas George
7e6c67dd24 lavfi/buffersink: fix header.
Move non-obsolete functions, structures and constants outside
the scope of "#if FF_API_AVFILTERBUFFER".

Add attribute_deprecated to av_buffersink_get_buffer_ref()
and av_buffersink_poll_frame().

Add doxygen for av_buffersink_get_frame_flags().
2013-03-17 12:31:25 +01:00
Nicolas George
a5149607df lavfi/buffersrc: disable deprecated warnings. 2013-03-17 12:31:24 +01:00
Nicolas George
f29c28a884 lavfi/buffersrc: check channel count changes. 2013-03-17 12:31:24 +01:00
Nicolas George
3cd342636f lavfi/buffersrc: set channel layout if it is known.
Introduced in 01649c7, lost in the API change.
2013-03-17 11:59:51 +01:00
Anton Khirnov
6552808014 lavc,lavfi: fix calculating the plane size in the AVBufferRef wrappers
It is supposed to be height * linesize, not width * linesize.
Thanks to Hendrik Leppkes for pointing out the bug.
2013-03-17 09:10:04 +01:00
Clément Bœsch
286153ea48 lavfi/alphaextract: fix frame memleak. 2013-03-17 03:12:44 +01:00
Clément Bœsch
2b27f7fb04 lavfi/thumbnail: replace frame unref with free.
Fixes memleak spotted by FATE.
2013-03-17 01:46:22 +01:00
Stefano Sabatini
db36ea5b5e lavfi/settb: add support for named options 2013-03-17 00:27:33 +01:00
Stefano Sabatini
0407a79e41 lavfi/blackframe: add support for named options 2013-03-17 00:27:08 +01:00
Hendrik Leppkes
d8dccf69ff lavfi: let gcc realign the stack on public graph driving functions
The functions which actually drive the filter graph by pushing
frames through it need to ensure an aligned stack for SIMD functions.

This fixes a crash in YADIF filter when using a mingw build in a MSVC application.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 23:52:35 +01:00
Clément Bœsch
8d84e90c9b lavfi/delogo: 10l forgotten trailing NULL in shorthand.
Regression since de3e0ab3.
2013-03-16 23:37:58 +01:00
James Darnley
c9a51c29fc yadif: remove an 'm' from the LOAD macro definition
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:33:49 +01:00
James Darnley
1d3b14cac2 yadif: remove repeated check on width
The filter already checks that width (and height) are greater than 3.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:33:30 +01:00
James Darnley
7976d92dac yadif: cosmetic indentation from previous commits
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:33:06 +01:00
James Darnley
0a5814c9ba yadif: x86 assembly for 9 to 14-bit samples
These smaller samples do not need to be unpacked to double words
allowing the code to process more pixels every iteration (still 2 in MMX
but 6 in SSE2).  It also avoids emulating the missing double word
instructions on older instruction sets.

Like with the previous code for 16-bit samples this has been tested on
an Athlon64 and a Core2Quad.

Athlon64:
1809275 decicycles in C,    32718 runs, 50 skips
 911675 decicycles in mmx,  32727 runs, 41 skips, 2.0x faster
 495284 decicycles in sse2, 32747 runs, 21 skips, 3.7x faster

Core2Quad:
 921363 decicycles in C,     32756 runs, 12 skips
 486537 decicycles in mmx,   32764 runs,  4 skips, 1.9x faster
 293296 decicycles in sse2,  32759 runs,  9 skips, 3.1x faster
 284910 decicycles in ssse3, 32759 runs,  9 skips, 3.2x faster

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:32:54 +01:00
James Darnley
17e7b49501 yadif: x86 assembly for 16-bit samples
This is a fairly dumb copy of the assembly for 8-bit samples but it
works and produces identical output to the C version.  The options have
been tested on an Athlon64 and a Core2Quad.

Athlon64:
1810385 decicycles in C,    32726 runs, 42 skips
1080744 decicycles in mmx,  32744 runs, 24 skips, 1.7x faster
 818315 decicycles in sse2, 32735 runs, 33 skips, 2.2x faster

Core2Quad:
 924025 decicycles in C,     32750 runs, 18 skips
 623995 decicycles in mmx,   32767 runs,  1 skips, 1.5x faster
 406223 decicycles in sse2,  32764 runs,  4 skips, 2.3x faster
 387842 decicycles in ssse3, 32767 runs,  1 skips, 2.4x faster
 307726 decicycles in sse4,  32763 runs,  5 skips, 3.0x faster

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:32:34 +01:00
Hendrik Leppkes
a77f453703 lavfi/avcodec: deprecate remainders of the avcodec glue code
Since lavfi works natively with AVFrame now, these functions are no longer
necessary and can be removed in a future bump.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 17:04:36 +01:00
Michael Niedermayer
946cbf04ee Merge remote-tracking branch 'qatar/master'
* qatar/master:
  af_join: do not leak input frames.
  asrc_anullsrc: return EOF, not -1

Conflicts:
	libavfilter/asrc_anullsrc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:58:41 +01:00
Michael Niedermayer
7fff5781b6 Merge commit 'e4a7b2177d14678ae240edcabaacfe2b14619b7b'
* commit 'e4a7b2177d14678ae240edcabaacfe2b14619b7b':
  vf_showinfo: remove its useless init function
  AVOptions: fix using named constants with child contexts.

Conflicts:
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:38:11 +01:00
Michael Niedermayer
b64077bebe Merge commit '9676b9a2cdc4a90611188fc48d8d388e427997c5'
* commit '9676b9a2cdc4a90611188fc48d8d388e427997c5':
  AVOption: remove an unused function parameter.
  filters.texi: restore mistakenly removed section name for noformat
  avfiltergraph: use sizeof(var) instead of sizeof(type)

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:28:27 +01:00
Michael Niedermayer
ecade984ac Merge commit '42c7c61ab25809620b8c8809b3da73e25f5bbaaf'
* commit '42c7c61ab25809620b8c8809b3da73e25f5bbaaf':
  avfiltergraph: replace AVFilterGraph.filter_count with nb_filters

Conflicts:
	doc/APIchanges
	libavfilter/avfiltergraph.c
	libavfilter/avfiltergraph.h
	libavfilter/graphparser.c
	libavfilter/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:09:37 +01:00
Clément Bœsch
3b2b636a2a lavfi: add perms and aperms filters. 2013-03-16 16:04:59 +01:00
Anton Khirnov
4750b05d67 af_join: do not leak input frames. 2013-03-16 05:37:01 +01:00
Anton Khirnov
c2b9bd97f5 asrc_anullsrc: return EOF, not -1 2013-03-16 05:36:46 +01:00
Anton Khirnov
f4281f4571 asrc_anullsrc: do not set samplerate and channel layout explicitly
They are auto-negotiated.
2013-03-16 05:36:35 +01:00
Anton Khirnov
e4a7b2177d vf_showinfo: remove its useless init function
Filter private data is memset to 0 so there is no point in explicitly
initing anything to 0.
2013-03-16 05:36:14 +01:00
Anton Khirnov
dd74e3ef33 avfiltergraph: use sizeof(var) instead of sizeof(type) 2013-03-16 05:34:20 +01:00
Anton Khirnov
42c7c61ab2 avfiltergraph: replace AVFilterGraph.filter_count with nb_filters
This is more consistent with the naming in the rest of Libav.
2013-03-16 05:33:23 +01:00
Anton Khirnov
556aab8f11 lavfi: use designated initializers in avfilter_class 2013-03-16 05:33:06 +01:00
James Darnley
3d751b1ef6 yadif: correct strides in filter_edges_16bit
The C code treats the data as arrays of uint16_t so strides must not
be in bytes but in pixels.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 19:10:55 +01:00
Michael Niedermayer
cd5f50a255 avfilter: avoid direct access to AVFrame.channels
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 16:13:53 +01:00
Michael Niedermayer
0bcea7b575 vf_pp: use new API to access qp table
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 03:02:27 +01:00
Clément Bœsch
1edbeb3532 lavfi/ebur128: check histogram allocations. 2013-03-15 02:58:29 +01:00
Clément Bœsch
db670e5366 lavfi/ebur128: add framelog option. 2013-03-15 02:35:26 +01:00
Nicolas George
7a71544f9d lavfi/graphdump: fix output for unknown layouts. 2013-03-14 20:52:50 +01:00
Clément Bœsch
9ace0dbe41 lavfi/ebur128: use same ref for inputs and outputs.
Fixes Ticket2342.
2013-03-14 18:43:53 +01:00
Clément Bœsch
fe898a037d Revert "lavfi/ebur128: fix format negociation for output."
This reverts commit 9efcfbed9d.

All the shame on me; this commit is actually causing more problems
(broken outputs but also crashes) than it was solving.
2013-03-14 06:25:20 +01:00
Clément Bœsch
9efcfbed9d lavfi/ebur128: fix format negociation for output.
Before this change, the audio input and output formats are set
independently, so the lavfi negociation could pick different settings
for the input and output. This is particularly true for the channel
layout settings, where multiple choices were available.

Fixes Ticket2342.
2013-03-14 01:24:42 +01:00
Clément Bœsch
a95a38793c lavfi/thumbnail: support flushing.
This makes possible the raise of one picture if the input has less than
the number of frames to analyze.

Fixes Ticket1992.
2013-03-14 00:14:19 +01:00
Hendrik Leppkes
ed69c69a01 lavfi/avcodec: fix API version checks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 22:18:02 +01:00
Hendrik Leppkes
3c7f669972 lavfi/avcodec: cleanup includes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 22:14:58 +01:00
James Darnley
0735b50880 yadif: restore speed of the C filtering code
Always use the special filter for the first and last 3 columns (only).

Changes made in 64ed397 slowed the filter to just under 3/4 of what it
was.  This commit restores the speed while maintaining identical output.

For reference, on my Athlon64:
1733222 decicycles in old
2358563 decicycles in new
1727558 decicycles in this

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 22:07:25 +01:00
Stefano Sabatini
ae732640ab lavfi/cropdetect: add support for named options 2013-03-13 20:38:54 +01:00
Clément Bœsch
de3e0ab35f lavfi/delogo: remove sscanf and rely on av_opt_set_from_string() only. 2013-03-13 19:00:10 +01:00
Clément Bœsch
e7279638e8 lavfi/thumbnail: remove unecessary poll_frame() callback. 2013-03-13 19:00:10 +01:00
Clément Bœsch
bce2e97a16 lavfi/mptestsrc: raise filter_frame() error. 2013-03-13 19:00:10 +01:00
Clément Bœsch
afa0b90803 lavfi/mandelbrot: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
227a4b63f5 lavfi/life: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
fe6077d902 lavfi/cellauto: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
f32fee570a lavfi/alphamerge: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
05854f5505 lavfi/movie: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
bdbdadbaff lavfi/buffersrc: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
27ce858c98 lavfi/showspectrum: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
df5be5e275 lavfi/avfilter: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
60bd8c11b6 lavfi/concat: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
00a13a9cdb lavfi/anullsrc: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
44f3d21799 lavfi/aevalsrc: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
1b0d0e6b72 lavfi/atempo: raise filter_frame() error. 2013-03-13 19:00:09 +01:00
Clément Bœsch
dda59d9adc lavfi/asetnsamples: raise filter_frame() error. 2013-03-13 19:00:08 +01:00
Clément Bœsch
c82bb2815b lavfi/aresample: raise filter_frame() error. 2013-03-13 19:00:08 +01:00
Michael Niedermayer
c31f07574d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  hqdn3d: Fix out of array read in LOWPASS
  cabac: remove unused argument of ff_init_cabac_states()
  rawdec: fix a typo -- || instead of |

Conflicts:
	libavcodec/cabac.c
	libavcodec/h264.c
	libavfilter/vf_hqdn3d.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 14:49:00 +01:00
Michael Niedermayer
8bcebf9e4a Merge commit '555000c7d5c1e13043a948ebc48d2939b0ba6536'
* commit '555000c7d5c1e13043a948ebc48d2939b0ba6536':
  h264: check that DPB is allocated before accessing it in flush_dpb()
  vf_hqdn3d: fix uninitialized variable use
  vf_gradfun: fix uninitialized variable use

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 13:34:06 +01:00
Loren Merritt
5b3c1aecb2 hqdn3d: Fix out of array read in LOWPASS
CC:libav-stable@libav.org
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-13 09:14:59 +01:00
Stefano Sabatini
aeac1dae29 lavfi/fieldorder: add support to named options 2013-03-13 00:37:13 +01:00
Stefano Sabatini
a3233e9d7a lavfi/fieldorder: remove unused headers and commented define 2013-03-13 00:34:51 +01:00
Nicolas George
c14a8c834c lavfi/buffersink: schedule removing the "ff" variants.
They are no longer needed since there is no incompatible
ABI version.
2013-03-12 23:31:07 +01:00
Nicolas George
9a2688826d lavfi/buffersink: rename filter structures.
Reduce the diff with the fork.
2013-03-12 23:31:07 +01:00