Commit Graph

1369 Commits

Author SHA1 Message Date
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