Commit Graph

224 Commits

Author SHA1 Message Date
Michael Niedermayer
c5f9a66f74 avfilter: allow freeing NULL.
this way avfilter_free() can be called without NULL checks.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-31 08:48:23 +02:00
Michael Niedermayer
c6baa4046a avfilter: add some asserts() to check refcounts.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 19:30:40 +01:00
Michael Niedermayer
f068ce570f avfilter: pool draining and self destruction support.
This should fix a memleak.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-12 16:32:54 +01:00
Stefano Sabatini
ae21776207 lavfi: add missing check in avfilter_filter_samples()
Avoid out-of-buffer data access when nb_channels is 8.
2011-12-27 15:21:00 +01:00
Stefano Sabatini
5764301df3 lavfi: don't try to indent words in trace messages
The traces end up not indented and ugly anyway, but with the additional
spaces are much more painful to grep/parse.
2011-12-27 12:58:26 +01:00
Michael Niedermayer
f810ab45e3 libavfilter: increase LIBAVFILTER_VERSION_MICRO to 100 like the other libs.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-23 06:03:11 +01:00
Michael Niedermayer
022f8d27dd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  swscale: Readd #define _SVID_SOURCE
  Fix av_get_channel_layout_string() for positions >31
  configure: Store vda lib flags in extralibs instead of ldflags
  Make channel layout masks unsigned
  dca: ARMv6 optimised decode_blockcode()
  nullenc: drop AVFMT_RAWPICTURE from the flags
  frame-mt: return consumed packet size in ff_thread_decode_frame
  aacdec: add more fate tests covering SBR and PS
  MK(BE)TAG: avoid undefined shifts

Conflicts:
	configure
	libavcodec/arm/dca.h
	libavcodec/dca.c
	libavcodec/mlp_parser.c
	libavcodec/version.h
	libavfilter/asrc_anullsrc.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/defaults.c
	libavutil/audioconvert.c
	libavutil/avutil.h
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-26 01:12:08 +01:00
Mans Rullgard
cc276c85d1 Make channel layout masks unsigned
It makes more sense for a bit mask to use an unsigned type.
The change should be source and binary compatible on all
supported systems, hence micro version bump.

Fixes a few invalid shifts.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-25 13:19:54 +00: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
Stefano Sabatini
dd91499b66 lavfi: add debug trace when processing events 2011-09-25 22:47:51 +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
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
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
1e5014c7c7 avfilter: Add command passing support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 20:16:01 +02:00
Mina Nagy Zaki
5f68a91be2 lavfi: remove default config_props() callback and refactor avfilter_config_links()
Link properties have to be checked after config_props() is called to
make sure everything is sane, so the default config_props() for output
links was redundant.

Also remove channel_layout check as it is now negotiated.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-06 12:13:18 +02:00
Mina Nagy Zaki
b57df29f95 lavfi: add audio channel packing negotiation fields
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-07-16 19:22:49 +02:00
Michael Niedermayer
90c6963dae avfilter picture pool: double free hotfix
This fix introduces a small memleak

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-21 04:24:03 +02:00
Mina Nagy Zaki
fd2c0a5db2 lavfi: add layout negotiation fields and helper functions. 2011-06-19 22:58:32 +02:00
Stefano Sabatini
c3819600e2 lavfi: implement avfilter_get_audio_buffer_ref_from_arrays() 2011-06-10 12:47:33 +02:00
Stefano Sabatini
95a0242642 lavfi: prefer nb_samples over size in AVFilterBufferRefAudioProps
Remove AVFilterBufferRefAudioProps.size, and use nb_samples in
avfilter_get_audio_buffer() and avfilter_default_get_audio_buffer() in
place of size.

This is required as the size in the audio buffer may be aligned, so it
may not contain a well defined number of samples.
2011-06-06 10:12:49 +02:00
Reimar Döffinger
612d0782fc Add const to avfilter_get_video_buffer_ref_from_arrays arguments.
Avoids warning about discarding qualifiers in avcodec.c

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-06-05 19:57:14 +02:00
Stefano Sabatini
e977ca2645 lavfi: add avfilter_link_free() function
Allow to free the buffers cached in each AVFilterLink pool.
Fix leak.
2011-06-03 00:41:32 +02:00
Stefano Sabatini
77b32b73ed lavfi: apply misc style fixes
Adopt K&R style for overall consistency/readability.
2011-06-02 18:24:49 +02:00
Diego Biurrun
d6e0729b24 avfilter: Surround function only used in debug mode by appropriate #ifdef.
This fixes the warning:
libavfilter/avfilter.c:219: warning: ‘ff_get_ref_perms_string’ defined but not used
2011-05-29 13:43:03 +02:00
Stefano Sabatini
5dc65a3d03 lavfi: print key-frame and picture type information in ff_dlog_ref()
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
(cherry picked from commit f7bdffb09d)
2011-05-16 14:13:03 -07:00
Michael Niedermayer
c34cb130b6 avfilter: dont use AVFilterLink as priv for pictures as its freed too early.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-07 01:02:38 +02:00
Michael Niedermayer
39f66edbea AVFilter: use picture pool to avoid malloc().
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-06 23:53:06 +02:00
Michael Niedermayer
fa3eddc011 avfilter_unref_buffer: favor av_freep()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-06 23:37:43 +02:00
Michael Niedermayer
b000b86e1d Merge remote branch 'qatar/master'
* qatar/master: (23 commits)
  doc: Check standalone compilation before submitting new components.
  Fix standalone compilation of pipe protocol.
  Fix standalone compilation of ac3_fixed encoder.
  Fix standalone compilation of binkaudio_dct / binkaudio_rdft decoders.
  Fix standalone compilation of IMC decoder.
  Fix standalone compilation of WTV demuxer.
  Fix standalone compilation of MXPEG decoder.
  flashsv: K&R cosmetics
  matroskaenc: fix memory leak
  vc1: make overlap filter for I-frames bit-exact.
  vc1dec: use s->start/end_mb_y instead of passing them as function args.
  Revert "VC1: merge idct8x8, coeff adjustments and put_pixels."
  Replace strncpy() with av_strlcpy().
  indeo3: Eliminate use of long.
  get_bits: make cache unsigned to eliminate undefined signed overflow.
  asfdec: fix assert failure on invalid files
  avfilter: check malloc return values.
Not pulled as reason for reindent is not pulled:  mpegvideo: reindent.
  nutenc: check malloc return values.
Not pulled due to much simpler solution in ffmpeg  *: don't av_malloc(0).
  ...

Conflicts:
	doc/developer.texi
	libavcodec/Makefile
	libavcodec/get_bits.h
	libavcodec/mpegvideo.c
	libavformat/Makefile
	libavutil/log.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 03:30:24 +02:00
Ronald S. Bultje
0699dbb847 avfilter: check malloc return values. 2011-05-03 22:35:23 -04:00
Ronald S. Bultje
f8af93ab99 avfilter: don't av_malloc(0). 2011-05-03 22:29:13 -04:00
Stefano Sabatini
35fe66abbc lavfi: rename AVFilterBufferRefVideoProps.pixel_aspect to sample_aspect_ratio
Improve consistency with libavcodec.

This breaks libavfilter API/ABI.

The non-sequential 2.1.0 -> 2.4.0 bump is due to the mess previously
done with the lavfi minor number.
2011-05-01 13:10:18 +02:00
Stefano Sabatini
f7bdffb09d lavfi: print key-frame and picture type information in ff_dlog_ref()
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-27 11:03:52 +02:00
Mans Rullgard
2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Michael Niedermayer
e528cdac8a Revert "replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION"
This reverts commit 29ba091136.
2011-03-17 17:26:45 +01:00
Michael Niedermayer
0cb88628fb Revert "use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_*"
This reverts commit a03be6e1ba.
2011-03-17 17:26:45 +01:00
Janne Grunau
a03be6e1ba use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_* 2011-03-16 21:54:39 +01:00
Janne Grunau
29ba091136 replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION
also update the multiple inclusion guards in config.h|mak
2011-03-16 21:54:39 +01:00
Reinhard Tartler
737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Stefano Sabatini
70c275f8c3 Make avfilter_config_links() propagate audio information of the source link if it is not explicitely set by the filter. 2011-02-14 21:00:25 +01:00
Michael Niedermayer
910b5b82e8 Add sample_aspect_ratio to AVFilterLink
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-14 13:07:21 +00:00
Stefano Sabatini
5fce60c3a9 Log debug information in filter_samples().
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-02 12:12:32 +00:00
Luca Barbato
dfd2a005eb Replace dprintf with av_dlog
dprintf clashes with POSIX.1-2008
2011-01-29 23:55:37 +01:00
Diego Elio Pettenò
eb7ccf8f33 Make the avfilter debug functions and macros static to avfilter.c
This removes ff_get_ref_perms_string, ff_dprintf_ref and ff_dprintf_link
fro the interface of libavfilter.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 15:33:12 +00:00