Commit Graph

1530 Commits

Author SHA1 Message Date
Michael Niedermayer
649d3932db vsrc_mandelbrot: check bailout only once every 8 iterations, this is around 10% faster.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 14:15:56 +01:00
Michael Niedermayer
fe2efc5264 vsrc_mandelbrot: factorize periodicity checking too.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 13:55:51 +01:00
Michael Niedermayer
cf670fbc96 vsrc_mandelbrot: factorize main calculation out into a macro.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 13:51:44 +01:00
Clément Bœsch
1fbf7165d5 lavfi: reimplement MPlayer's af_pan filter for libavfilter.
Original code by Clément Bœsch.
Parameters parsing and misc enhancements by Nicolas George.
2011-11-18 19:39:26 +01:00
Michael Niedermayer
32aa9590ac vf_scale: Fix slice position assert to take vertical subsampling into account.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-17 22:39:46 +01:00
Michael Niedermayer
974d25e2db mandelbrot: make mincol description and code match.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-16 15:13:01 +01:00
Clément Bœsch
16b809ce8e lavfi: fix misc typo in avfilter.h header. 2011-11-16 09:53:58 +01:00
Clément Bœsch
4da45aff28 cleanup: remove various double end ';' all over the code. 2011-11-16 07:48:23 +01:00
Michael Niedermayer
04bb26e3ee mandelbrot: add dither to convergence & mincol colorings.
This avoids banding artifacts.
Note, low end TFTs still show some banding.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 21:33:11 +01:00
Michael Niedermayer
7575980ba4 mandelbrot: make mincol the default.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 20:04:25 +01:00
Michael Niedermayer
8d51cb4fb8 mandelbrot: add mincol inner coloring method.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 20:04:25 +01:00
Michael Niedermayer
5a68b1ac3b mandelbrot: add inner drawing method to show converence time
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 17:26:51 +01:00
Michael Niedermayer
5582e557e6 mandelbrot: add "fractal" to the description
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 17:26:46 +01:00
Michael Niedermayer
4c52adad69 mandelbrot: Fix "warning: passing argument 2 of ‘draw_mandelbrot’ from incompatible pointer type"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 17:26:41 +01:00
Stefano Sabatini
2b1a4c5b34 amovie: avoid crash in amovie_request_frame() if no samplesref is available
The crash occurrs when a frame is successfully decoded, but no decoded
data is immediately available (typically happens with ogg/vorbis).
2011-11-15 00:10:15 +01:00
Michael Niedermayer
73af8ea356 mandelbrot: add math.h for log2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-14 05:56:03 +01:00
Michael Niedermayer
70eb58cd92 mandelbrot: avoid INFINITY as openbsd seems not to like it.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-14 05:47:56 +01:00
Michael Niedermayer
b1b0fd2790 pad: fix format string length
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-14 05:42:10 +01:00
Stefano Sabatini
3a9f2f1d65 vsrc_mandelbrot: set options through the opt framework 2011-11-13 21:31:23 +01:00
Giorgio Vazzana
c15400afc5 mandelbrot: remove always-false condition in fill_from_cache
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 19:41:21 +01:00
Michael Niedermayer
08dadd331f mandelbrot: allow visualizing the period of converged points.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 19:28:24 +01:00
Michael Niedermayer
e8499ab171 mandelbrot: Add inner variable & enum for inner coloring schemes.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 19:26:22 +01:00
Michael Niedermayer
3cbe9afba5 mandelbrot: only check bailout once every 2 iterations.
Once we bailed out we calculate the exact iteration in which it would have happened if needed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 18:14:40 +01:00
Michael Niedermayer
41fd1b2d5a mandelbrot: add SQR() macro
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 18:14:10 +01:00
Giorgio Vazzana
e555119c73 mandelbrot: correct and simplify the formula used in NORMALIZED_ITERATION_COUNT
Use log(sqrt(mb->bailout)) instead of log(mb->bailout) because mb->bailout represent
the bailout radius squared, and then simplify the two sqrt().
This is also slightly faster.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:33:09 +01:00
Michael Niedermayer
88166fc579 mandelbrot: unroll the innermost loop once.
This allows us to remove a if() and a variable assignment.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:01:56 +01:00
Michael Niedermayer
1d06608732 mandelbrot: only check periodicity once for each period instead of twice.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:01:56 +01:00
Michael Niedermayer
2fee131b9e mandelbrot: use period detection depening on left pixel and not the
previous calculated pixel, this is more accurate due to the last
calculated often being farther away.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:01:56 +01:00
Giorgio Vazzana
be97e7b9c2 mandelbrot: remove unused variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 01:27:30 +01:00
Giorgio Vazzana
459bba58d2 mandelbrot: add missing options to the parsing code
The following options were added: end_scale, end_pts, bailout, outer.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 01:27:30 +01:00
Giorgio Vazzana
6024bdb21a mandelbrot: fix sscanf format string
Replace ',' with ':'

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 21:00:12 +01:00
Michael Niedermayer
32dd67162a mandelbrot: Print a note if the cache is too small
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 17:05:11 +01:00
Michael Niedermayer
905202ef6e mandelbrot: increase cache size
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 17:04:50 +01:00
Michael Niedermayer
fd8d03457a mandelbrot: increase resolution, and decrease zoom speed to maintain the cpu requirement.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 17:04:08 +01:00
Michael Niedermayer
40d6e30c55 mandelbrot: increase default maxiter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:46:41 +01:00
Michael Niedermayer
6c5dd858b4 mandelbrot: Only use cycle detection if previous pixel was an interior pixel
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:46:21 +01:00
Michael Niedermayer
50b8f9388a mandelbrot: detect cycles to speed up interior rendering.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:46:16 +01:00
Michael Niedermayer
3de934c873 mandelbrot: increase default maxiter to 1024
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:44:53 +01:00
Michael Niedermayer
07f272bdbb mandelbrot: use cache to avoid recalculating points.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:44:53 +01:00
Michael Niedermayer
8ca891fc1a mandelbrot: more interresting zoom coordinates borrowed from wikipedia.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:44:53 +01:00
Michael Niedermayer
ddeb194b14 mandelbrot: add a end_scale and pts so we can zoom in.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:16 +01:00
Michael Niedermayer
dece017280 mandelbrot: center coordinate reference on the images center
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:15 +01:00
Michael Niedermayer
aa198ad679 mandelbrot: make 2 variables const
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:15 +01:00
Michael Niedermayer
0e5b05134b mandelbrot: fix typo that led to hardcoded max iteration count.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:15 +01:00
Michael Niedermayer
4ccd898af2 mandelbrot: support different outer coloring methods.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-11 23:22:04 +01:00
Michael Niedermayer
75e309160b mandelbrot: make bailout a variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-11 23:21:42 +01:00
Michael Niedermayer
847e61de4a avfilter: bump minor for mandelbrot
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-11 23:20:25 +01:00
Michael Niedermayer
658d166da0 avfilter: add mandelbrot fraktal source
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-11 22:47:06 +01:00
Michael Niedermayer
393b234fa1 yadif, its 2011
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-11 17:06:47 +01:00
Michael Niedermayer
825481e87b yadif: reject reuse2 buffers as we cant use frames that change under our
fingers.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-11 17:06:07 +01:00
Stefano Sabatini
dec354ba1d vf_fade: reindent after previous commit 2011-11-10 01:31:28 +01:00
Mark Himsley
8c1fb50d07 vf_fade: add alpha option and alpha fading support
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2011-11-10 01:31:13 +01:00
Mark Himsley
0d602615ab vf_fade: add support to options parsing
Extend fade syntax, required by a pending patch.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2011-11-10 01:28:31 +01:00
Nicolas George
68b531fe6a src_movie: set the channel layout to default if the codec did not set it.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-06 01:19:56 +01:00
Reimar Döffinger
5af7daabc4 Mark AVFilterPad[] compound literals as const.
GCC 4.6.2 at least still seems to fail to put them in .rodata though,
see also http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37303

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-11-06 00:05:14 +01:00
Reimar Döffinger
b052601b95 Make another static array const.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-11-05 15:37:02 +01:00
Reimar Döffinger
6f6ab1d9f3 Make another PixelFormat list const.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-11-05 15:37:02 +01:00
Reimar Döffinger
d7e95ccd9f Make PIX_FMT format list arrays const.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-11-05 15:37:02 +01:00
Reimar Döffinger
d78473334e Add const to static arrays where it was forgotten.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-11-05 15:37:01 +01:00
Ronald S. Bultje
43317fd52c libavfilter: reindent. 2011-11-05 07:01:39 -07:00
Ronald S. Bultje
23a8b4ddfc avfilter: don't abort() on zero-size allocations. 2011-11-05 06:59:27 -07:00
Michael Niedermayer
c28ea94cd7 af_volume: exp10() is a GNU extension.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-05 05:39:42 +01:00
Stefano Sabatini
3a1045dfda af_earwax: copy input buffer properties to output
In particular, fix timestamps, partially address trac ticket #375.
2011-11-05 02:45:08 +01:00
Mina Nagy Zaki
fa4f06ab5e lavfi: add earwax audio filter, ported from Sox
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2011-11-05 02:16:45 +01:00
Stefano Sabatini
618ac71354 lavfi: add volume filter 2011-11-05 02:13:37 +01:00
Stefano Sabatini
1fc7077115 lavfi: increase number of maximum registered filters from 64 to 128 2011-11-05 02:13:37 +01:00
Stefano Sabatini
217790871e lavfi: issue error if maximum number of filters is reached
Issue an error and return a more meaningful error code in case the
maximum number of registered filters has been reached.
This is better than silently ignore the error, improve feedback.
2011-11-05 02:13:37 +01:00
Michael Niedermayer
259a960f1b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vp6: Fix illegal read.
  avfilter: Don't copy garbage from the stack when setting up video pictures.
  avcodec: Make sure codec_type is set by avcodec_get_context_defaults2
  avcodec: Remove a misplaced and useless attribute_deprecated
  avconv: add -dump_attachment option.
  avconv: add -attach option.
  avconv: make negative mappings disable only streams from the specified file
  fmtconvert: fix int32_to_float_fmul_scalar() for windows x86_64

Conflicts:
	libavcodec/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-04 01:44:06 +01:00
Alex Converse
0d7a16a946 avfilter: Don't copy garbage from the stack when setting up video pictures. 2011-11-03 15:54:04 -07:00
Reimar Döffinger
96949dafcc Replace all strcasecmp/strncasecmp usages.
All current usages of it are incompatible with localization.
For example strcasecmp("i", "I") != 0 is possible, but would
break many of the places where it is used.
Instead use our own implementations that always treat the data
as ASCII.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-11-03 19:25:26 +01:00
Michael Niedermayer
988f585fcb Merge remote-tracking branch 'qatar/master'
* qatar/master: (44 commits)
  replacement Indeo 3 decoder
  gsm demuxer: do not allocate packet twice.
  flvenc: use first packet delay as global delay.
  ac3enc: doxygen update.
  imc: return error codes instead of 0 for error conditions.
  imc: return meaningful error codes instead of -1
  imc: do not set channel layout for stereo
  imc: validate channel count
  imc: check for ff_fft_init() failure
  imc: check output buffer size before decoding
  imc: use DSPContext.bswap16_buf() to byte-swap packet data
  rtsp: add allowed_media_types option
  libgsm: add flush function to reset the decoder state when seeking
  libgsm: simplify decoding by using a loop
  gsm: log error message when packet is too small
  libgsmdec: do not needlessly set *data_size to 0
  gsmdec: do not needlessly set *data_size to 0
  gsmdec: add flush function to reset the decoder state when seeking
  libgsmdec: check output buffer size before decoding
  gsmdec: log error message when output buffer is too small.
  ...

Conflicts:
	Changelog
	ffplay.c
	libavcodec/indeo3.c
	libavcodec/mjpeg_parser.c
	libavcodec/vp3.c
	libavformat/cutils.c
	libavformat/id3v2.c
	libavutil/parseutils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-03 02:16:26 +01:00
Stefano Sabatini
0b3e9d5dc6 vf_overlay: adopts FAST_DIV255 macro for calculating destination alpha
Ease readability, improve exactness.
2011-11-02 21:44:13 +01:00
Mark Himsley
91dfb73852 vf_fade: fade to correct CCIR601/709 black level
Current implementation fades to 0. This implementation fades to 16 for
YUV formats that contain CCIR601/709 video levels. RGB and YUVJ
formats are not altered.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2011-11-02 21:44:13 +01:00
Diego Biurrun
959cfbf3f4 vsrc_testsrc: fix mailing list reference URL 2011-11-02 10:42:55 +01:00
Diego Biurrun
124e28847b Remove some stray unnecessary ffmpeg references. 2011-11-02 10:42:54 +01:00
Michael Niedermayer
3fd0f6ed25 vf_transpose: remove pix_fmts which can currently not be supported.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-01 23:45:28 +01:00
Stefano Sabatini
30647fb45a lavfi: bump micro after recent changes in the overlay filter 2011-10-31 11:19:53 +01:00
Stefano Sabatini
2f7c8aefa8 vf_overlay: add support to alpha pre-multiplication in the RGBA path
Based on the work of Mark Himsley <mark@mdsh.com>.

See thread:
Subject: [FFmpeg-devel] libavfilter: extending overlay filter
Date: Sun, 13 Mar 2011 14:18:42 +0000
2011-10-31 11:06:31 +01:00
Stefano Sabatini
3013bfa81e vf_overlay: enable RGB path
Add option rgb which forces the RGB path.
2011-10-31 11:06:19 +01:00
Stefano Sabatini
b54c0a552d vf_overlay: use opt.h API for setting options
Extend syntax, allow to easily add more options later.
2011-10-30 21:10:54 +01:00
Stefano Sabatini
8dc90371b1 lavfi: add internal function ff_fill_rgba_map() 2011-10-28 02:06:50 +02:00
Clément Bœsch
9bd23f6815 ashowinfo: fix typo in description. 2011-10-27 22:16:24 +02:00
Clément Bœsch
a0b7853f7a vf_showinfo: print checksums in hexadecimal. 2011-10-27 22:14:57 +02:00
Michael Niedermayer
3e4375833d vf_scale: Request an aligned buffer.
Fixes Ticket594

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 03:46:50 +02:00
Michael Niedermayer
d7dcd96a23 vf_pad: Fix alignment of get_video_buffer()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 03:46:09 +02:00
Michael Niedermayer
d18fd13f30 avfilter: add named constamt to indicate the amount of alignment that AV_PERM_ALIGN means.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 03:45:02 +02:00
Michael Niedermayer
4d34b6c1a1 avfilter: add flag to indicate that alignment is needed
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 03:44:41 +02:00
Mark Himsley
9f9b2ab1b1 vsrc_testsrc: fix off-by-one logic when detecting the EOF time in request_frame()
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2011-10-25 23:38:56 +02:00
Mark Himsley
1ca1336067 testsrc seconds display is out-by-one frame
Without this patch each displayed second is incremented 1 frame early,
second 0 is only 24 frames long where as every other second is 25 frames
long.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-25 18:24:25 +02:00
Stefano Sabatini
d9d492513d vsrc_testsrc: increase log level from DEBUG to INFO for message in init() 2011-10-24 17:47:59 +02:00
Stefano Sabatini
1f4652068e lavfi: rewrite nullsrc using the code in vsrc_testsrc.c
Factorize code, extend the functionality of the filter, and make it
return empty buffers. This is useful for filters which ignore the input
frames content.

This is also changing the syntax of the nullsrc source, and dropping the
framerate expression evaluation, which does not look particularly useful.
2011-10-24 17:46:48 +02:00
Stefano Sabatini
42d44ec306 vsrc_testsrc: do not assume non-padded lines in test_fill_picture()
In particular, fix sliding color bar with padded data, for example with
testsrc,pad=iw+200:ih.
2011-10-23 23:54:37 +02:00
Stefano Sabatini
1679a40b74 vf_boxblur: fix slice-drawing
This filter does not support slice-drawing, the whole blurred image needs
to be written in end_frame().
2011-10-23 23:54:37 +02:00
Stefano Sabatini
43fce2214b lavfi: add missing header mulitple-inclusion guard in transform.h 2011-10-20 15:59:20 +02:00
Stefano Sabatini
99d48b07d1 lavfi/transform.h: apply misc doxy cosmetical changes 2011-10-20 15:59:12 +02:00
Michael Niedermayer
d0492578c8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  presets: rename presets directory
  lavc: make avcodec_get_context_defaults3 "officially" public
  lavf: replace av_new_stream->avformat_new_stream part II.
  lavf,lavd: replace av_new_stream->avformat_new_stream part I.
  lavf: add avformat_new_stream as a replacement for av_new_stream.
  Use correct scaling table for bwd-pred MVs in second B-field
  Ut Video decoder
  Makefile: change presets extension to .avpreset
  lavfi: add rgbtestsrc source, ported from MPlayer libmpcodecs
  lavfi: add testsrc source
  AVOptions: add documentation.
  presets: update libx264 ffpresets

Conflicts:
	Changelog
	doc/APIchanges
	doc/ffmpeg.texi
	ffpresets/libx264-ipod320.ffpreset
	ffpresets/libx264-ipod640.ffpreset
	ffserver.c
	libavcodec/avcodec.h
	libavcodec/options.c
	libavcodec/version.h
	libavdevice/libdc1394.c
	libavfilter/avfilter.h
	libavfilter/vsrc_testsrc.c
	libavformat/flvdec.c
	libavformat/riff.c
	libavformat/version.h
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-20 02:34:51 +02:00
Paul Flinders
9ef714328c deshake: limit deshake to specific area to search for motion vectors. 2011-10-20 00:39:34 +02:00
Stefano Sabatini
ec2ac9271c lavfi: add rgbtestsrc source, ported from MPlayer libmpcodecs
The licence was changed from GPL to LGPL with explicit approval from
the original author.

See thread:
Subject: [FFmpeg-devel] [PATCH] lavfi: add rgbtestsrc source,
        ported from MPlayer libmpcodecs
Date: Mon, 11 Jul 2011 16:32:41 +0200

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-19 07:09:08 +02:00
Stefano Sabatini
0244879f30 lavfi: add testsrc source
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-19 07:08:42 +02:00
Michael Niedermayer
35674a29b7 vf_mp: Fix several incompatible pointer type warnings.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 00:05:30 +02:00
Michael Niedermayer
cb3034e0d1 vf_unsharp: Fix false ‘src2’ may be used uninitialized in this function warning.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 00:04:33 +02:00
Michael Niedermayer
e73cc2819e src_movie: Fix incompatible pointer type warning.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 00:03:56 +02:00
Michael Niedermayer
5ed20cfeaf vf_deshake: Fix cast discards qualifiers from pointer target type warning.
And simplify the code in the process.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 00:03:13 +02:00
Michael Niedermayer
e96aa8d1a0 vf_pixdesctest: Fix incompatible pointer type warning.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 23:59:59 +02:00
Michael Niedermayer
abe9c54f14 yadif: Fix assignment from incompatible pointer type warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 23:59:20 +02:00
Michael Niedermayer
2982b02b79 vsrc_buffer: FIx incompatible pointer type warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 23:58:41 +02:00
Stefano Sabatini
2b72067406 asrc_aevalsrc: apply misc cleanup in the options array
Prefer AV_OPT_* over FF_OPT, vertically align fields.
2011-10-18 18:52:50 +02:00
Stefano Sabatini
3f20eada80 asrc_aevalsrc: prefer av_strtok() over strtok_r() 2011-10-18 18:46:58 +02:00
Stefano Sabatini
eae3a86e57 lavfi: update minor number and add Changelog entry after aevalsrc addition 2011-10-18 18:46:58 +02:00
Stefano Sabatini
36c06b0913 lavfi: add audio eval signal source 2011-10-18 18:21:04 +02:00
Stefano Sabatini
b35e9e19e9 lavu: add av_strtok()
The function strtok_r() is part of the POSIX.1 specification, but is not
available on some platforms. We provide an internal implementation, so we
do not need to rely on a platform implementation.
2011-10-18 18:21:03 +02:00
Michael Niedermayer
fae714a9fb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: add presets
  rtsp: Expose the flag options via private AVOptions for sdp and rtp, too
  rtsp: Make the rtsp flags avoptions set via a define
  rtpenc: Set a default video codec
  avoptions: Fix av_opt_flag_is_set
  rtp: Fix ff_rtp_get_payload_type
  doc: Update the documentation on setting options for RTSP
  rtsp: Remove the separate filter_source variable
  rtsp: Accept options via private avoptions instead of URL options
  rtsp: Simplify AVOption definitions
  rtsp: Merge the AVOption lists
  lavfi: port libmpcodecs delogo filter
  lavfi: port boxblur filter from libmpcodecs
  lavfi: add negate filter
  lavfi: add LUT (LookUp Table) generic filters
  AVOptions: don't segfault on NULL parameter in av_set_options_string()
  avio: Check for invalid buffer length.
  mpegenc/mpegtsenc: add muxrate private options.
  lavf: deprecate AVFormatContext.file_size
  mov: add support for TV metadata atoms tves, tvsn and stik

Conflicts:
	Changelog
	doc/filters.texi
	doc/protocols.texi
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/avfilter.h
	libavfilter/formats.c
	libavfilter/internal.h
	libavfilter/vf_boxblur.c
	libavfilter/vf_delogo.c
	libavfilter/vf_lut.c
	libavformat/mpegtsenc.c
	libavformat/utils.c
	libavformat/version.h
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 01:54:40 +02:00
Stefano Sabatini
b157be1f38 lavfi: port libmpcodecs delogo filter
The ported filter supports named option parsing and more YUV formats.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-17 18:05:41 +02:00
Stefano Sabatini
ce6b6ef645 lavfi: port boxblur filter from libmpcodecs
With the following additions:
* support to gray format
* support to yuva420p format
* parametric luma/chroma/alpha radius
* consistency check on the radius values, avoid crashes with invalid values

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-17 18:05:41 +02:00
Stefano Sabatini
171868e25a lavfi: add negate filter
This filter is a simple wrapper around the LUT filter.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-17 18:05:41 +02:00
Stefano Sabatini
8fe0c527f3 lavfi: add LUT (LookUp Table) generic filters
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-17 18:05:38 +02:00
Clément Bœsch
539399d4d1 AVOptions: rename remaining FF_OPT_TYPE_* to AV_OPT_TYPE_*. 2011-10-17 07:33:10 +02:00
Stefano Sabatini
bca8bd99d0 af_ashowinfo: fix plane size computation for planar layout formats
+10l.
2011-10-16 01:58:31 +02:00
Stefano Sabatini
22137bb5c2 af_aresample: fix properties setting in the output buffer
In particular: set output timebase to 1/output_sample_rate, fix output
PTS computation, and do not forget to copy properties values from the
input buffer.
2011-10-16 00:52:23 +02:00
Stefano Sabatini
cc6b8c4b61 af_ashowinfo: adopt used plane size when computing the plane checksum
Fix checksum computation when the used plane size is different from the
allocated plane size, as it was wrongly assumed.
2011-10-16 00:51:36 +02:00
Nicolas George
7d60b43e90 vsrc_nullsrc: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:51 +02:00
Nicolas George
21e888bd11 vf_crop: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:51 +02:00
Nicolas George
94b345855f vf_settb: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Nicolas George
db820c3c13 vf_setpts: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Nicolas George
1a3fa3ab2c vf_select: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Nicolas George
3b316f9f22 vf_scale: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Nicolas George
e2abe90ed7 vf_pad: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Nicolas George
8c88d734a5 vf_overlay: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Nicolas George
157ff97e3b vf_lut: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Nicolas George
a2af901295 vf_drawtext: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:08:50 +02:00
Michael Niedermayer
f884ef00de Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  tiffenc: initialize forgotten avctx.
  avplay: free the active audio packet at exit.
  avplay: free rdft data used for spectrogram analysis.
  log.h: make AVClass a named struct
  fix ac3 encoder documentation
  vc1: more prettyprinting cosmetics
  vc1: prettyprint some tables
  vc1: K&R formatting cosmetics
  AVOptions: bump minor and add APIchanges entry.
  cmdutils/avtools: simplify show_help() by using av_opt_child_class_next()
  AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_*
  Remove all uses of deprecated AVOptions API.
  AVOptions: add av_opt_next, deprecate av_next_option.
  AVOptions: add functions for evaluating option strings.
  AVOptions: split get_number().
  AVOptions: add av_opt_get*, deprecate av_get*.
  AVOptions: add av_opt_set*().
  AVOptions: add new API for enumerating children.
  rv34: move inverse transform functions to DSP context
  flvenc: Write the right metadata entry count
  ...

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	ffplay.c
	ffprobe.c
	libavcodec/ac3dec.c
	libavcodec/h264.c
	libavcodec/libvpxenc.c
	libavcodec/libx264.c
	libavcodec/mpeg12enc.c
	libavcodec/options.c
	libavdevice/libdc1394.c
	libavdevice/v4l2.c
	libavfilter/vf_drawtext.c
	libavformat/flvdec.c
	libavformat/mpegtsenc.c
	libavformat/options.c
	libavutil/avutil.h
	libavutil/opt.c
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 06:00:03 +02:00
Anton Khirnov
145f741e11 AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_* 2011-10-12 16:51:16 +02:00
Clément Bœsch
073effb6e4 deshake: simplify filename check. 2011-10-04 21:36:54 +02:00
Clément Bœsch
d4005e22c3 deshake: misc style fixes. 2011-10-04 21:36:54 +02:00
Michael Niedermayer
b0f270fdef deshake: move angles from stack to heap.
Fixes Ticket530

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 18:32:36 +02:00
Michael Niedermayer
1e4da6031c deshake: Allow specifying the filename for statistics and disable them by default.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 17:20:42 +02:00
Michael Niedermayer
171a5b5d36 deshake: remove non const static
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 08:31:40 +02:00
Clément Bœsch
1912c215e0 doxygen: remove a few @file parameters.
It is not mandatory and prevents breakage on rename.
2011-10-04 08:04:17 +02:00
Clément Bœsch
65d5edcd2c lavfi: remove align tabs in Makefile. 2011-10-04 07:56:56 +02:00
Clément Bœsch
136093236f deshake: fix doxygen comments. 2011-10-04 07:48:55 +02:00
Michael Niedermayer
2cdb5e1986 deshake: nicer looking defaults
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 02:15:18 +02:00
danielgtaylor
0cc2ed4a20 libavfilter: add deshake filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 02:14:21 +02:00
danielgtaylor
7985381e23 libavfilter: image transform code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 02:10:18 +02:00
Stefano Sabatini
91492bd1c4 lavfi: remove usage of deprecated av_opt_set_defaults2() function
Prefer av_opt_set_defaults() instead.
2011-10-02 15:16:36 +02:00
Michael Niedermayer
8447703c16 vf_scale.c: propagate error code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 03:16:32 +02:00
Stefano Sabatini
1ee2014190 vf_unsharp: set default chroma size value to 5x5
The previous default value 0x0 was not good, since it is not even
valid.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-29 07:20:05 +02:00
Stefano Sabatini
998e8519ef vf_unsharp: fix out-of-buffer read
In apply_unsharp(), when y is >= height, prevent out-of-buffer reading
from src, read from the last buffer line in src2 instead.

The check was implemented in the original unsharp libmpcodecs code and
lost in the port.

This also fixes output discrepancy between the two filters.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-29 07:19:30 +02:00
Michael Niedermayer
f9a2d0c3fe Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  avconv: Reformat s16 volume adjustment.
  ARM: NEON optimised vector_fmac_scalar()
  dca: use vector_fmac_scalar from dsputil
  dsputil: add vector_fmac_scalar()
  latmenc: Fix private options
  vf_unsharp: store hsub/vsub in the filter context
  vf_unsharp: adopt a more natural order of params in apply_unsharp()
  vf_unsharp: rename method "unsharpen" to "apply_unsharp"
  vf_scale: apply the same transform to the aspect during init that is applied per frame
  vf_pad: fix "vsub" variable value computation
  vf_scale: add a "sar" variable
  lavfi: fix realloc size computation in avfilter_add_format()
  vsrc_color: use internal timebase
  lavfi: fix signature for avfilter_graph_parse() and avfilter_graph_config()
  graphparser: prefer void * over AVClass * for log contexts
  avfiltergraph: use meaningful error codes
  avconv: Initialize return value for codec copy path.
  fate: use 'run' helper for seek-test
  fate: remove seek-mpeg2reuse test
  Fix memory (re)allocation in matroskadec.c, related to MSVR-11-0080.
  ...

Conflicts:
	doc/filters.texi
	libavfilter/avfilter.h
	libavfilter/avfiltergraph.c
	libavfilter/avfiltergraph.h
	libavfilter/graphparser.c
	libavfilter/vf_scale.c
	libavfilter/vsrc_color.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 01:11:01 +02:00
Michael Niedermayer
514c44c4fa sink_buffer: fix typo
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 22:28:47 +02:00
Stefano Sabatini
f63ec3eee9 lavfi: fix FF_API_* definition macros
Fix ABI break occurred after their use.

Bug reported and patch provided by chinsou, fix trac issue #516,
+80cola for me.
2011-09-28 17:24:52 +02:00
Nicolas George
fb35f7d7e1 vf_boxblur: remove useless code.
This block was probably leftovers from code refactoring.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 16:11:01 +02:00
Stefano Sabatini
1c257dc32d vf_unsharp: store hsub/vsub in the filter context
Also drop obfuscating CHROMA_WIDTH/HEIGHT macros.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:09:18 +02:00
Stefano Sabatini
e6d17ba426 vf_unsharp: adopt a more natural order of params in apply_unsharp()
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:09:03 +02:00
Stefano Sabatini
de7b58da3e vf_unsharp: rename method "unsharpen" to "apply_unsharp"
More consistent with the original libmpcodecs code, and the name
"unsharpen" was confusing.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:08:56 +02:00
Michael Niedermayer
d33e0c6bc8 vf_scale: apply the same transform to the aspect during init that is applied per frame
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:08:30 +02:00
Stefano Sabatini
80de930a78 vf_pad: fix "vsub" variable value computation
It was shifting 2 rather than 1, +10l.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:03:30 +02:00
Stefano Sabatini
46b29397a6 vf_scale: add a "sar" variable
Also create a "dar" alias for the "a" variable, for avoiding possible
confusion between dar/sar.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:03:24 +02:00
Stefano Sabatini
0ec56d1144 lavfi: fix realloc size computation in avfilter_add_format()
Replace sizeof((*avff)->formats)
with    sizeof(*(*avff)->formats)

as the size of the array element is given by the pointed element
rather than by its pointer.

In particular fix computation with the pending patch when
sizeof(int64_t) != sizeof(int64_t *).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:03:18 +02:00
Stefano Sabatini
e63e4c99c9 vsrc_color: use internal timebase
Avoid timescale conversion, simplify.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:03:11 +02:00
Stefano Sabatini
57fa314090 lavfi: fix signature for avfilter_graph_parse() and avfilter_graph_config()
Require "void *" rather than "AVClass *" for the log context type.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:02:53 +02:00
Stefano Sabatini
64abd375ec graphparser: prefer void * over AVClass * for log contexts
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:02:42 +02:00
Stefano Sabatini
59cef18c24 avfiltergraph: use meaningful error codes
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-28 08:02:32 +02:00
Stefano Sabatini
9921613e82 vf_drawtext: apply misc style fixes 2011-09-25 22:47:51 +02:00
Stefano Sabatini
80daa247d8 vf_drawtext: do not reset "n" variable to 0 in case the filter is reinited 2011-09-25 22:47:51 +02:00
Stefano Sabatini
dd91499b66 lavfi: add debug trace when processing events 2011-09-25 22:47:51 +02:00
Stefano Sabatini
e64de2ad1a lavfi: document AVFilterCommand fields 2011-09-25 22:47:51 +02:00
Stefano Sabatini
87f5e79732 vf_drawtext: use ctx for expressing outlink and dtext in end_frame
(Very) slighly improve readability.
2011-09-24 12:37:12 +02:00
Stefano Sabatini
3de684206e vf_drawtext: perform misc cosmetics changes to uninit
In particular:
* lexically sort strings freeing commands
* logically group freeing instructions
* prefer NULL over 0 when setting dtext->glyphs
2011-09-24 12:37:03 +02:00
Stefano Sabatini
275516f87c vf_drawtext: set string defaults in the options array
Simplify.
2011-09-24 12:36:55 +02:00
Stefano Sabatini
482ce0ce4e vf_drawtext: make x and y options parametric
Address trac issue #378.
2011-09-24 12:36:48 +02:00
Stefano Sabatini
163854bca0 vf_drawtext: drop text wrapping feature
Or in other word, do not go to the next line when the text cannot be
rendered within the frame.

The rationale is that wrapping is hard to manage, as it depends on the
position of the text, thus making hard/impossible to compute the size
occupied by the rendered text, and makes the filter behavior
unpredictible with moving text (implemented in a pending patch).

Also the current wrapping code is very limited (for example it splits
words in the middle), and correctly handling wrapping requires much
more complexity (alignment, gravity, word parsing etc.), while
drawtext is meant to be only a thin wrapper around libfreetype, so
such advanced features don't belong here.
2011-09-24 12:36:39 +02:00
Stefano Sabatini
b87d4c2b9f vf_drawtext: do not set limitations on fontsize
It may be needed to use values greater than 72, and in general greater
than an arbitrary big value. Let the user choose what's too big for
her.
2011-09-23 01:35:38 +02:00
Stefano Sabatini
3a87dce6bf vf_drawtext: remove useless and misnamed intermediary "baseline" variable in draw_text() 2011-09-22 00:45:59 +02:00
Stefano Sabatini
500b3210da vf_drawtext: fix background box coloring with RGB formats != RGBA
drawbox() expects a color specified in RGBA format, while the code was
providing a color with the components specified in the same order of
the input pixel format.

In particular, fix box coloring with AXXX RGB formats.
2011-09-22 00:45:59 +02:00
Stefano Sabatini
db56a7507e vf_drawtext: prefer int over unsigned int
This avoids overflow errors when the considered x and y values are
negative, as required by the incoming patches.
2011-09-22 00:45:59 +02:00
Stefano Sabatini
be4e8908d2 vf_yadif: add support to yuva420p
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 09:00:24 +02:00
Stefano Sabatini
4703a7b50b vf_yadif: correct documentation on the parity parameter
0 is top-field-first, 1 is bottom-field-first, not the other way
around.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 08:59:58 +02:00
Joakim Plate
5feb67f8a1 vf_yadif: copy buffer properties like aspect for second frame as well
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 08:59:36 +02:00
Michael Niedermayer
7491816010 libavfilter/libmpcodecs: add vf_stereo3d support
(code from mplayer see their svn for detailed authorship)
parameters must be integers as we do not have mplayers parser
also the stuff passed to it through non constant globals is not supported
this should be fixed in mplayer first.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-20 05:49:42 +02:00
Michael Niedermayer
5aa18fed84 libmpcodecs: some hunks from mplayer HEAD
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-20 05:14:52 +02:00
Joakim Plate
ab09df9dea vf_yadif: add an option to enable/disable deinterlacing based on src frame "interlaced" flag
Signed-off-by: Joakim Plate <elupus@ecce.se>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-19 12:44:22 +02:00
Stefano Sabatini
91aff2665d vsrc_color: set output pos values to -1
-1 is more correct than 0, as the position in the file is undefined.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-19 12:44:02 +02:00
Stefano Sabatini
753890d0db vsrc_color: add @file doxy
Also remove outdated reference to color in vf_pad.c.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-19 12:43:25 +02:00
Stefano Sabatini
deb58ab447 vsrc_buffer: remove duplicated file description
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-19 12:43:10 +02:00
Clément Bœsch
46c9ddf83c lavfi: fix avfilter_get_audio_buffer() doxy to match reality. 2011-09-18 17:32:03 +02:00
Stefano Sabatini
9535929897 asrc_anullsrc: amend description to reflect the recent changes 2011-09-18 14:26:37 +02:00
Stefano Sabatini
1d8d987ba8 asrc_anullsrc: globally prefer "null" over "priv" for indicating the filter context
More locally and globally consistent.
2011-09-18 12:38:39 +02:00
Stefano Sabatini
17d2fee789 asrc_anullsrc: do not show the int64_t value for channel_layout
That was clumsy and confusing, only show the descriptive channel
layout string.
2011-09-18 12:38:39 +02:00
Stefano Sabatini
e72aa524d8 asrc_anullsrc: implement a request_frame callback for returning frames
This is mainly useful for filters (like the sox synth), which
overwrite the content of the passed data.
2011-09-18 12:38:33 +02:00
Stefano Sabatini
44ab77db9e asrc_anullsrc: extend syntax to make it accept a non positional list of arguments
The new syntax is more extensible and more user-friendly.

This breaks the previous syntax, should not be an issue as possibly
no-one is already using anullsrc.
2011-09-18 12:30:01 +02:00
Michael Niedermayer
9a9ceb8776 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavfi: add select filter
  oggdec: fix out of bound write in the ogg demuxer
  movenc: create an alternate group for each media type
  lavd: add libcdio-paranoia input device for audio CD grabbing
  rawdec: refactor private option for raw video demuxers
  pcmdec: use unique classes for all pcm demuxers.
  rawdec: g722 is always 1 channel/16kHz

Conflicts:
	Changelog
	configure
	doc/filters.texi
	libavdevice/avdevice.h
	libavfilter/avfilter.h
	libavfilter/vf_select.c
	tests/ref/lavf/mov

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-17 22:36:43 +02:00
Stefano Sabatini
d763fb7d47 lavfi: add select filter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-17 19:08:30 +02:00
Stefano Sabatini
db79d04173 af_aresample: do not request a buffer with AV_PERM_REUSE2 permissions in filter_samples()
That was pointless. Simplify.
2011-09-17 01:36:00 +02:00
Mina Nagy Zaki
3ee0bedcc0 lavfi: refactor query_formats and auto-insert audio conversion filters
Behaviour has been changed to fail negotiation if fields have been
left empty.

Patch was originally based on a patch by Hemanth.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2011-09-16 20:44:27 +02:00
Stefano Sabatini
37cc443c83 lavfi: add audio convert filter
Add aconvert filter to perform sample format, channel layout, and
packing format conversion.

The aconvert code depends on audio conversion code in libavcodec, so
this requires a dependency on libavcodec.

Based on previous work by S.N. Hemanth Meenakshisundaram and Mina Nagy
Zaki, performed for the GSoC 2010 and 2011.
2011-09-16 20:44:27 +02:00
Stefano Sabatini
553c5e9f23 lavfi: add and use an inlink variable in avfilter_config_links()
Simplify expressions, improve readability.
2011-09-16 20:44:27 +02:00
Stefano Sabatini
71c644ceda lavfi: set link audio time_base if not set in avfilter_config_links()
The set value depends on the input link, or on the sample_rate value.
Avoids the need to explicitely set the time_base value.
2011-09-16 20:44:26 +02:00
Michael Niedermayer
41215fdeb3 libavfilter/formats.c: fix compile of test
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-16 06:07:07 +02:00
Stefano Sabatini
ea8de109af lavfi: add avfilter_all_channel_layouts public symbol
This list is mainly useful to be directly used as a parameter by the
audio sink buffer, when there is no need to force a specific channel
layout.

The list of formats is generated programmatically, and avoids channel
layouts not supported by libavfilter (with more than 8 channels).

We preferred to avoid compile-time generation in order to avoid some
unnecessary complexity (build hacks, generating code maintainance
etc.).

A more compact way to express this list through the use of macros
should be possible when libavfilter will support more than 8 channels,
as there will be no need to filter out channel layouts with more than
8 channels.

See thread:
Subject: [FFmpeg-devel] [PATCH] lavfi: add ff_all_channel_layouts internal symbol
Date: Sat, 20 Aug 2011 15:33:16 +0200
2011-09-16 00:46:41 +02:00
Stefano Sabatini
9899037dc6 lavfi: rename avfilter_all_* function names to avfilter_make_all_*
A function name should tell what the function does rather than what
the function returns. This also avoids possible conflicts
(e.g. between a function and a public list of all supported formats),
and clarifies the code.

Breaks audio API/ABI, add a backward compatibility layer for video
API/ABI.
2011-09-16 00:42:47 +02:00
Michael Niedermayer
39e0accb7a vf_remove_logo: domt access vf->next->query_format() directly but use the API.
This fixes a crash

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-13 03:52:30 +02:00
Stefano Sabatini
9efae6a161 lavfi: bump minor and update APIchanges after recent updates
These changes were forgotten in commits:
  lavfi: simplify signature for avfilter_get_audio_buffer() and friends
  (commit 2c0317419b)
and
  lavfi: consistently use int for sample_rate in AVFilterLink and AVFilterBufferRefAudioProps
  (commit 4381bddc9f)
2011-09-12 22:08:53 +02:00
Michael Niedermayer
9765caec1b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  adpcm: split ADPCM encoders and decoders into separate files.
  doc/avconv: fix typo.
  rv34: check that subsequent slices have the same type as first one.
  smacker demuxer: handle possible av_realloc() failure.
  lavfi: add split filter from soc.
  lavfi: add showinfo filter
  libxavs: add private options corresponding to deprecated global options

Conflicts:
	Changelog
	libavcodec/adpcm.c
	libavfilter/avfilter.h
	libavfilter/vf_showinfo.c
	libavfilter/vf_split.c
	libavformat/smacker.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 21:01:12 +02:00
Stefano Sabatini
4381bddc9f lavfi: consistently use int for sample_rate in AVFilterLink and AVFilterBufferRefAudioProps
Also consistent with AVCodecContext.sample_rate. Simplify/avoid
pointless type checks and conversions.

Breaks audio API/ABI.
2011-09-12 18:51:46 +02:00
Stefano Sabatini
2c0317419b lavfi: simplify signature for avfilter_get_audio_buffer() and friends
The additional parameters were never used and are complicating the
function interface. Also, they were inconsistent with the way the
video API works.

So this assumes that a requested samples buffer will have *always* the
format specified in the requested link.

This breaks audio filtering API and ABI.
2011-09-12 18:51:18 +02:00
Bobby Bingham
615baa13e4 lavfi: add split filter from soc.
Some fixes by Stefano.
For detailed authorship see SOC repo

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-12 08:48:16 +02:00
Stefano Sabatini
ee42716b07 lavfi: add showinfo filter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-12 08:48:14 +02:00
Michael Niedermayer
f1b5693027 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add LATM muxer
  v210enc: clip values according to specifications
  v210enc: switch to PIX_FMT_422P10
  v210dec: switch to PIX_FMT_422P10
  AVOptions: remove AVOption.offset <= 0 checks
  AVOptions: deprecate av_opt_set_defaults2
  AVOptions: move doxy for av_opt_set_defaults() from opt.c to opt.h
  libx264: fix setting some more parameters
  libx264: fix setting the H.264 level
  libx264: add 'direct-pred' private option
  libx264: add 'partitions' private option

Conflicts:
	Changelog
	libavcodec/Makefile
	libavcodec/libx264.c
	libavcodec/v210enc.c
	libavfilter/src_movie.c
	libavformat/version.h
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 22:58:39 +02:00
Anton Khirnov
79eff91325 AVOptions: deprecate av_opt_set_defaults2
It's a hack which was created to allow for multiple options with
different defaults to refer to same field (e.g. 'b' vs 'ab'). There is
no need for it anymore.
2011-09-07 11:19:43 +02:00
Michael Niedermayer
c0323b9c9b avfilter: dont crash on filters with NULL instance names.
Found-by: Rolf Siegrist
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-06 22:23:15 +02:00
Stefano Sabatini
4f7dfe12ea lavfi: rename vsink_buffer.c to sink_buffer.c, and vsink_buffer.h to buffersink.h
This is done in order to clarify the non-video-specific nature of the
buffersink code, as the result of the video/audio API unification of
the previous commit, and for improving overall consistency.
2011-09-06 18:51:09 +02:00
Stefano Sabatini
c4415f6ec9 lavfi: unify asink_buffer and vsink_buffer API
The new API is more generic (no distinction between audio/video for
pulling frames), and avoids code duplication.

A backward compatibility layer is kept for avoiding tools ABI breaks
(only for the video binary interface, audio interface was never used
in the tools).
2011-09-06 18:47:04 +02:00
Michael Niedermayer
845383c358 vf_drawtext: always use expanded_text as we always support strftime() now and dont depend on localtime_r() anymore
Found-by: Rolf Siegrist
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-05 23:13:59 +02:00
Michael Niedermayer
038a465efc vf_drawtext: make strftime work without localtime_r()
modern OS should have localtime_r() or return thread locals on localtime() hopefully

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-05 05:16:44 +02:00
Michael Niedermayer
b881a2e254 vf_drawtext: Fix reinit to allow color changes.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-04 20:58:13 +02:00
Stefano Sabatini
a9c69362ea vsink_buffer: fix void pointer dereference in av_vsink_buffer_get_video_buffer_ref() 2011-08-31 16:27:33 +02:00
Stefano Sabatini
22ee131e85 vf_yadif: add support to yuva420p 2011-08-31 16:11:26 +02:00
Michael Niedermayer
595cfdef97 vf_drawtext: add basetime argument to allow specifying the wall clock time of PTS=0
the basetime argument also enables useage of pts instead of time()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-30 23:37:49 +02:00
Michael Niedermayer
cc2b4e889d libavfilter/graphparser: Avoid spaces in filter instance names.
This makes it easier to refer to filters where things are seperated by spaces.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-30 22:02:38 +02:00
Michael Niedermayer
3016c7f543 vf_drawtext: fix segfault on reinit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-30 20:25:58 +02:00
Stefano Sabatini
c70e8523af vsrc_testsrc: set more properties in the output frames 2011-08-30 10:03:19 +02:00
Michael Niedermayer
ea36c44e84 avfilter_graph_queue_command: Allow queueing commands out of order
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 20:55:22 +02:00
Michael Niedermayer
37f9de59d1 avfilter: fix processing multiple commands per frame and filter
Found-by: Nicolas George
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 20:39:34 +02:00
Michael Niedermayer
3d8176d2f5 avfilter: Add avfilter_graph_que_command()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 20:16:10 +02:00
Michael Niedermayer
f782ce3b4d drawtext: Support changing parameters through reinit command at runtime.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 20:16:08 +02:00
Michael Niedermayer
1e5014c7c7 avfilter: Add command passing support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 20:16:01 +02:00
Michael Niedermayer
52982dbe47 vf_scale: don't leak SWS context.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-27 17:23:45 +02:00
Stefano Sabatini
24ddfb2bdb lavfi: add amovie source - audio movie source 2011-08-27 12:46:55 +02:00
Michael Niedermayer
c8868f28e3 vf_scale: apply the same transform to the aspect during init that is applied per frame
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-27 02:04:37 +02:00
Michael Niedermayer
094a496818 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fifo: add FIFO API test program, and fate test
  fifo: add av_fifo_peek2(), and deprecate av_fifo_peek()
  postprocess.c: filter name needs to be double 0 terminated
  doxygen: fix wrong comment syntax, //< vs. ///<
  doxygen: drop pointless star from pointer variable names
  Replace deprecated av_find_stream_info() by avformat_find_stream_info().
  xmv: eliminate superfluous zeroing of zero data
  configure: fix typo in avconv dependency list

Conflicts:
	configure
	doc/APIchanges
	libavutil/Makefile
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-26 23:18:54 +02:00
Diego Biurrun
0249478756 doxygen: fix wrong comment syntax, //< vs. ///< 2011-08-26 18:34:28 +02:00
Stefano Sabatini
276f43be68 lavfi: rename vsrc_movie.c to src_movie.c
The file is going to contain the amovie source, so give it a less
specific name.
2011-08-23 15:45:53 +02:00
Stefano Sabatini
e26782a9b4 lavfi: add ff_parse_pixel_format() internal function, and use it
Reduce code duplication.
2011-08-23 15:45:44 +02:00
Stefano Sabatini
e0ddc2e953 vsrc_movie: rename video movie specific callbacks, prefix them with "movie" 2011-08-22 10:40:50 +02:00
Stefano Sabatini
df4c7ae9db asink_abuffer: extend ABufferSinkContext to make it accept lists of formats in input
This is required for the pending lavfi indev extension, also
consistent with the video buffer sink.
2011-08-22 10:34:43 +02:00
Stefano Sabatini
3e4666f34c vsrc_movie: create media agnostic movie init and uninit routines
Allow factorization for the pending work on the audio movie source.
2011-08-22 10:34:43 +02:00
Stefano Sabatini
8aa62bb950 af_aformat: use evil ADD_FORMATS macro for cutting out duplicated code 2011-08-22 10:34:43 +02:00
Stefano Sabatini
34c997599e vsrc_testsrc: allow to set the sample aspect ratio
Add the sar option. Useful for debugging/testing purposes.
2011-08-21 15:27:09 +02:00
Stefano Sabatini
c5d9bd1938 asrc_abuffer: pass non-const string to strtok_r in init()
Fix GCC warning:
asrc_abuffer.c: In function ‘init’:
asrc_abuffer.c:258: warning: passing argument 1 of ‘strtok_r’ discards qualifiers from pointer target type
2011-08-21 11:38:30 +02:00
Mina Nagy Zaki
587c8ab912 lavfi: add asrc_abuffer - audio buffer source
Originally based on code by Stefano Sabatini and S. N. Hemanth.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-21 11:37:57 +02:00
Stefano Sabatini
e30a0b1b3b lavfi: add ashowinfo filter
Useful for debugging.
2011-08-20 15:00:23 +02:00
Mina Nagy Zaki
3a9e227fb1 lavfi: add aresample filter
Based on a patch by Stefano.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-17 13:12:40 +02:00
Stefano Sabatini
86ca51acb0 af_format: prefer strtok_r() over strsep()
strsep() is not POSIX compliant, and thus not supported on some platform.
Fix compilation on Solaris.
2011-08-16 17:00:57 +02:00
Stefano Sabatini
a719679561 lavfi: complain and exit for invalid named values in ff_parse_packing_format() 2011-08-16 17:00:49 +02:00
Michael Niedermayer
abf6b0d1ea af_aformat: hotfix compile due to strsep()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-15 03:35:25 +02:00
Stefano Sabatini
b854c2a709 vf_unsharp: set default chroma size value to 5x5
The previous default value 0x0 was not good, since it is not even
valid.
2011-08-14 16:29:44 +02:00
Stefano Sabatini
63b61d55f9 vf_unsharp: fix out-of-buffer read
In apply_unsharp(), when y is >= height, prevent out-of-buffer reading
from src, read from the last buffer line in src2 instead.

The check was implemented in the original unsharp libmpcodecs code and
lost in the port.

This also fixes output discrepancy between the two filters.
2011-08-14 16:28:54 +02:00
Stefano Sabatini
6e89bdfecf lavfi: remove delogo mp wrapper
The delogo filter has been natively integrated into libavfilter,
simplify.
2011-08-14 12:26:44 +02:00
Stefano Sabatini
2701f6cc6a lavfi: port libmpcodecs delogo filter
The ported filter supports named option parsing and more YUV formats.
2011-08-14 12:17:10 +02:00
Mina Nagy Zaki
0a2295815d lavfi: add aformat filter
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-14 10:31:23 +02:00