Commit Graph

2443 Commits

Author SHA1 Message Date
Stefano Sabatini e1a8df70a2 lavfi/aevalsrc: add option channel_layout
Allow to explicitly specify the channel layout to select.
2012-05-18 00:58:41 +02:00
Stefano Sabatini 4d4098da00 lavfi: drop planar/packed negotiation support
The planar/packed switch and the packing_formats list is no longer
required, since the planar/packed information is now stored in the sample
format enum.

This is technically a major API break, possibly it should be not too
painful as we marked the audio filtering API as unstable.
2012-05-16 13:16:05 +02:00
Michael Niedermayer 1cbf7fb434 Merge remote-tracking branch 'qatar/master'
* qatar/master: (26 commits)
  fate: use diff -b in oneline comparison
  Add missing version bumps and APIchanges/Changelog entries.
  lavfi: move buffer management function to a separate file.
  lavfi: move formats-related functions from default.c to formats.c
  lavfi: move video-related functions to a separate file.
  fate: make smjpeg a demux test
  fate: separate sierra-vmd audio and video tests
  fate: separate smacker audio and video tests
  libmp3lame: set supported channel layouts.
  avconv: automatically insert asyncts when -async is used.
  avconv: add support for audio filters.
  lavfi: add asyncts filter.
  lavfi: add aformat filter
  lavfi: add an audio buffer sink.
  lavfi: add an audio buffer source.
  buffersrc: add av_buffersrc_write_frame().
  buffersrc: fix invalid read in uninit if the fifo hasn't been allocated
  lavfi: rename vsrc_buffer.c to buffersrc.c
  avfiltergraph: reindent
  lavfi: add channel layout/sample rate negotiation.
  ...

Conflicts:
	Changelog
	doc/APIchanges
	doc/filters.texi
	ffmpeg.c
	ffprobe.c
	libavcodec/libmp3lame.c
	libavfilter/Makefile
	libavfilter/af_aformat.c
	libavfilter/allfilters.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/avfiltergraph.c
	libavfilter/buffersrc.c
	libavfilter/defaults.c
	libavfilter/formats.c
	libavfilter/src_buffer.c
	libavfilter/version.h
	libavfilter/vf_yadif.c
	libavfilter/vsrc_buffer.c
	libavfilter/vsrc_buffer.h
	libavutil/avutil.h
	tests/fate/audio.mak
	tests/fate/demux.mak
	tests/fate/video.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-16 02:27:31 +02:00
Clément Bœsch a48abf5e26 doc/filter_design: fix a few other typo. 2012-05-16 00:39:39 +02:00
Stefano Sabatini a28aa76ac8 doc/filtering_design: fix typo negociation -> negotiation 2012-05-16 00:41:39 +02:00
Anton Khirnov d89eca507c Add missing version bumps and APIchanges/Changelog entries. 2012-05-15 06:57:31 +02:00
Marton Balint 94a9ac1277 lavf: add av_guess_frame_sample_aspect_ratio function
Guesses the sample aspect ratio of a frame, based on both the stream and the
frame aspect ratio.

Since the frame aspect ratio is set by the codec but the stream aspect ratio
is set by the demuxer, these two may not be equal. This function tries to
return the value that you should use if you would like to display the frame.

Basic logic is to use the stream aspect ratio if it is set to something sane
otherwise use the frame aspect ratio. This way a container setting, which is
usually easy to modify can override the coded value in the frames.

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-14 23:40:46 +02:00
Anton Khirnov 6eeb9a0433 avconv: automatically insert asyncts when -async is used.
Deprecate -async.
2012-05-14 21:36:11 +02:00
Anton Khirnov 369cb092ec avconv: add support for audio filters.
The FATE changes are all off-by-one due to different rounding being used
(lrintf vs av_rescale_q).
2012-05-14 21:36:11 +02:00
Anton Khirnov 9f26421b0b lavfi: add asyncts filter. 2012-05-14 21:36:11 +02:00
Anton Khirnov fb604ae850 lavfi: add aformat filter
Based on a patch by Mina Nagy Zaki <mnzaki@gmail.com>
2012-05-14 21:36:11 +02:00
Anton Khirnov a2cd9be212 lavfi: add an audio buffer sink. 2012-05-14 21:36:11 +02:00
Anton Khirnov 4c66c40718 lavfi: add an audio buffer source. 2012-05-14 21:36:11 +02:00
Nicolas George 9cf5bcded0 ffmpeg: accept + prefix to -pix_fmt option to disable automatic conversions. 2012-05-14 21:29:58 +02:00
Michael Niedermayer 7e944159c6 Merge remote-tracking branch 'qatar/master'
* qatar/master: (25 commits)
  vcr1: Add vcr1_ prefixes to all static functions with generic names.
  vcr1: Fix return type of common_init to match the function pointer signature.
  vcr1enc: Replace obsolete get_bit_count by put_bits_count/flush_put_bits.
  motion-test: remove disabled code
  gxfenc: remove disabled half-implemented MJPEG tag
  x86: use more standard construct for setting ASM functions in FFT code
  fate: westwood-aud: disable decoding
  fate: caf: disable decoding
  fate: film-cvid: drop pcm audio and rename test
  fate: d-cinema-demux: drop unnecessary flags
  fate: split off dpcm-interplay from interplay-mve tests
  fate: rename funcom-iss to adpcm-ima-iss
  fate: rename cryo-apc to adpcm-ima-apc
  fate: rename adpcm-psx-str-v3 to adpcm-xa
  fate: split off adpcm-ms-mono test from dxa-feeble
  fate: split off adpcm-ima-ws test from vqa-cc
  fate: add adpcm-ima-smjpeg test
  fate: split off adpcm-ima-amv from amv test
  fate: separate bmv audio and video tests
  fate: separate delphine-cin audio and video tests
  ...

Conflicts:
	doc/platform.texi
	libavcodec/vcr1.c
	tests/fate/audio.mak
	tests/fate/demux.mak
	tests/fate/video.mak
	tests/ref/fate/ea-mad-pcm-planar
	tests/ref/fate/interplay-mve-16bit
	tests/ref/fate/interplay-mve-8bit
	tests/ref/fate/mtv
	tests/ref/fate/qtrle-1bit
	tests/ref/fate/qtrle-2bit
	tests/ref/fate/truemotion1-15
	tests/ref/fate/truemotion1-24
	tests/ref/fate/vqa-cc

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-14 20:17:24 +02:00
Nicolas George 7a44223319 lavfi: document filter design subtleties.
The details on reference ownership and permissions are missing.
2012-05-14 18:56:52 +02:00
Diego Biurrun d19f3e9a2a doc: misc improvements for the Windows section
Fix some orthography, wording and grammar issues; update the SDL section
with more current instructions; simplify lib.exe example command line;
drop outdated comments about libnut.
2012-05-14 13:05:39 +02:00
Stefano Sabatini e73241ba89 doc/ffprobe: fix rendering of the timecode chapter in the man page 2012-05-14 12:59:51 +02:00
Stefano Sabatini 3946187d60 ffprobe: add "nokey" option to default writer
Help simplifying parsing in certain cases.
2012-05-14 12:59:51 +02:00
Stefano Sabatini f48f03a400 ffprobe: add "noprint_wrappers" option to default writer
The option is useful for simplifying parsing.

Also use the new option in fate, in order to fix the regression
introduced by the previous commit.
2012-05-14 12:59:51 +02:00
Diego Elio Pettenò 7b089b79e6 doc: fix link to fate.libav.org
Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-05-13 00:17:51 -07:00
Michael Niedermayer 1caf614bec Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavfi: autoinsert resample filter when necessary.
  lavfi: add lavr-based audio resampling filter.
  x86: vc1: drop MMX loop filter implementation, which uses MMX2 instructions.

Conflicts:
	configure
	doc/filters.texi
	libavcodec/x86/vc1dsp_mmx.c
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/avfiltergraph.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-13 00:13:49 +02:00
Clément Bœsch be062de9d4 doc/examples: add libswresample in the libraries.
It is required for audio filtering.
2012-05-12 19:58:44 +02:00
Clément Bœsch 55e5f105d3 doc/examples: use buffersrc.h instead of deprecated asrc_abuffer.h. 2012-05-12 19:58:36 +02:00
Anton Khirnov d371e7b988 lavfi: add lavr-based audio resampling filter. 2012-05-12 18:09:28 +02:00
Clément Bœsch 9188294d30 doc/examples: fix typo. 2012-05-12 18:08:26 +02:00
Clément Bœsch 5b55c7f4e9 doc/examples: add -O2 in CFLAGS. 2012-05-12 17:59:41 +02:00
Clément Bœsch 072c2c08bf doc/examples: add missing math.h include in decoding/encoding example.
The header is required for the sin() function.
2012-05-12 17:59:41 +02:00
Clément Bœsch 2f197a20cf doc/examples: link decoding_encoding and muxing with math lib.
These two examples use the sin() function.
2012-05-12 17:59:41 +02:00
Clément Bœsch 9a19341e6e doc/examples: rename LDFLAGS to LDLIBS. 2012-05-12 17:59:41 +02:00
Michael Niedermayer 61930bd0d7 Merge remote-tracking branch 'qatar/master'
* qatar/master: (27 commits)
  libxvid: Give more suitable names to libxvid-related files.
  libxvid: Separate libxvid encoder from libxvid rate control code.
  jpeglsdec: Remove write-only variable in ff_jpegls_decode_lse().
  fate: cosmetics: lowercase some comments
  fate: Give more consistent names to some RealVideo/RealAudio tests.
  lavfi: add avfilter_get_audio_buffer_ref_from_arrays().
  lavfi: add extended_data to AVFilterBuffer.
  lavc: check that extended_data is properly set in avcodec_encode_audio2().
  lavc: pad last audio frame with silence when needed.
  samplefmt: add a function for filling a buffer with silence.
  samplefmt: add a function for copying audio samples.
  lavr: do not try to copy to uninitialized output audio data.
  lavr: make avresample_read() with NULL output discard samples.
  fate: split idroq audio and video into separate tests
  fate: improve dependencies
  fate: add convenient shorthands for ea-vp6, libavcodec, libavutil tests
  fate: split some combined tests into separate audio and video tests
  fate: fix dependencies for probe tests
  mips: intreadwrite: fix inline asm for gcc 4.8
  mips: intreadwrite: remove unnecessary inline asm
  ...

Conflicts:
	cmdutils.h
	configure
	doc/APIchanges
	doc/filters.texi
	ffmpeg.c
	ffplay.c
	libavcodec/internal.h
	libavcodec/jpeglsdec.c
	libavcodec/libschroedingerdec.c
	libavcodec/libxvid.c
	libavcodec/libxvid_rc.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/buffersink.h
	tests/Makefile
	tests/fate/aac.mak
	tests/fate/audio.mak
	tests/fate/demux.mak
	tests/fate/ea.mak
	tests/fate/image.mak
	tests/fate/libavutil.mak
	tests/fate/lossless-audio.mak
	tests/fate/lossless-video.mak
	tests/fate/microsoft.mak
	tests/fate/qt.mak
	tests/fate/real.mak
	tests/fate/screen.mak
	tests/fate/video.mak
	tests/fate/voice.mak
	tests/fate/vqf.mak
	tests/ref/fate/ea-mad
	tests/ref/fate/ea-tqi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 02:25:41 +02:00
Anton Khirnov a5117a2444 lavc: pad last audio frame with silence when needed. 2012-05-09 17:46:54 +02:00
Anton Khirnov ac71230902 lavfi: add video buffer sink, and use it in avtools
Also add the public interface libavfilter/buffersink.h.

Based on a commit by Stefano Sabatini.
2012-05-09 08:59:37 +02:00
Michael Niedermayer 0261902dac doc/examples/Makefile: split lines up to make diffs that change them clearer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 20:18:53 +02:00
Alex Converse 3607dc2b1a doc: Replace a stray reference to the old '-intra' flag. 2012-05-08 10:58:35 -07:00
Michael Niedermayer 653d117c29 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libschroedinger: Switch to function names more in line with Libav style.
  Move code shared between libdirac and libschroedinger to libschroedinger.
  lavfi: uninline avfilter_copy_buffer_ref_props().
  lavf: add missing '*' in a doxy.
  h264: Remove a commented-out function pointer typedef.
  txd: Remove write-only variable in txd_decode_frame().
  mmvideo.c: Remove unused variable in mm_decode_pal().
  build: cosmetics: Add missing end-of-line backslashes to item lists.
  build: cosmetics: Split HEADERS/OBJS/PROGS lists into one entry per line.
  libschroedinger: Move a function to avoid a forward declaration.
  pthread: warn on high thread counts
  vf_yadif: fix missing error handling for avfilter_poll_frame()
  avprobe: allow showing only one container/stream property.
  lavfi: support audio in avfilter_copy_frame_props().
  lavfi: avfilter_merge_formats: handle case where inputs are same
  lavc: add sample rate and channel layout to AVFrame.
  zerocodec: check if the previous frame is missing
  doc: clarify check for NULL pointer style

Conflicts:
	doc/APIchanges
	doc/developer.texi
	ffprobe.c
	libavcodec/Makefile
	libavcodec/avcodec.h
	libavcodec/libdirac_libschro.c
	libavcodec/libdirac_libschro.h
	libavcodec/mmvideo.c
	libavcodec/txd.c
	libavcodec/version.h
	libavcodec/zerocodec.c
	libavfilter/Makefile
	libavfilter/avfilter.c
	libavfilter/version.h
	libavformat/Makefile
	libavutil/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-07 22:51:34 +02:00
Ronald S. Bultje 08354bf458 avprobe: allow showing only one container/stream property.
This is useful for writing unit tests.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-05-07 08:08:46 +02:00
Anton Khirnov 828bd088f3 lavc: add sample rate and channel layout to AVFrame.
Rationale is the same as for video width/height etc.
2012-05-07 07:08:03 +02:00
Luca Barbato e004bc16a1 doc: clarify check for NULL pointer style
Our code should be terse and clear.
2012-05-06 15:47:10 -07:00
Michael Niedermayer 715c8a5a50 Merge remote-tracking branch 'qatar/master'
* qatar/master: (28 commits)
  dfa: use more meaningful return codes
  eatgv: check vector_bits
  eatgv: check motion vectors
  Mark a number of variables only used in av_dlog() calls as av_unused.
  dvdec: drop const qualifier from variable to eliminate a warning
  avcodec: Improve comment for thread_safe_callbacks to avoid misinterpretation.
  tests/utils: don't ignore the return value of fwrite()
  lavfi/formats: use sizeof(var) instead of sizeof(type).
  lavfi: remove avfilter_default_config_input_link() declaration
  lavfi: always enable the scale filter and depend on sws.
  vf_split: support user-specifiable number of outputs.
  avconv: remove stray useless comment.
  mpegmux: add stuffing to avoid incomplete PCM frames
  rtsp: avoid const warnings from strtol() call
  avserver: check return value of ftruncate()
  lagarith: make offset array type unsigned
  dfa: add some checks to ensure that decoder won't write past frame end
  aacps: NEON optimisations
  aacps: align some arrays
  aacps: move some loops to function pointers
  ...

Conflicts:
	configure
	doc/filters.texi
	libavcodec/dfa.c
	libavcodec/eatgv.c
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/avfilter.h
	libavfilter/formats.c
	libavfilter/vf_split.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-06 21:53:19 +02:00
Anton Khirnov fd18ee0ff6 vf_split: support user-specifiable number of outputs. 2012-05-06 16:21:00 +02:00
Nicolas George 9f357e2bcd examples/filtering_audio: use av_buffersrc_add_frame. 2012-05-04 23:26:41 +02:00
Clément Bœsch 77c0b361b0 doc: fix API examples references. 2012-05-03 19:53:38 +02:00
Clément Bœsch 9ae570fb5f JACOsub demuxer, decoder and muxer. 2012-05-03 19:37:14 +02:00
Michael Niedermayer 28d37f7160 examples/decoding_encoding: fix encoding when all frames got buffered.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-03 12:25:17 +02:00
Stefano Sabatini 20f47eb574 doc/filters: consistently use '"' for quoting the drawtext arguments in examples 2012-05-03 10:35:24 +02:00
Stefano Sabatini 126ba1626e lavfi/drawtext: give a new alias "timecode_rate" to the the r/rate option
The option is related to the timecode, the new name clearly specifies the
context. Also it allows to list the option close to the other timecode
options.
2012-05-03 10:29:08 +02:00
Stefano Sabatini 4f19e50c23 doc/filters: document drawtext draw expression 2012-05-03 10:26:42 +02:00
Stefano Sabatini 56b39bd55d doc/filters: document rand() drawtext expression function 2012-05-03 10:26:41 +02:00
Stefano Sabatini f4a6c3b099 doc/filters: document x and y drawtext expression parameters 2012-05-03 10:26:34 +02:00