Commit Graph

1148 Commits

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