Commit Graph

2206 Commits

Author SHA1 Message Date
Stefano Sabatini
fa35d880aa lavfi: port MP swapuv filter 2012-03-10 00:10:37 +01:00
Nicolas George
b50767c31d vf_pad: keep a reference to the output buffer.
Once fixed, the end_frame function does exactly what
avfilter_default_end_frame does; therefore, end_frame
can be removed to let avfilter_default_end_frame work.

Fixes ticket #1038.
2012-03-08 17:00:12 +01:00
Nicolas George
1ea3b657d6 vf_yadif: accept input with several frames available.
Fixes ticket #1040.
2012-03-07 17:36:04 +01:00
Michael Niedermayer
776c89f019 vsrx_mptestsrc: remove duplicate config_props init.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-07 00:20:23 +01:00
Nicolas George
14aa1ba802 libmpcodecs/vf_pp: import memleak fix from MPlayer. 2012-03-04 19:36:24 +01:00
Nicolas George
7f06ca6e2b vf_mp: uninit filter chain.
Most of the code was taken from MPlayer's vf_uninit_filter_chain.
2012-03-04 19:36:24 +01:00
Stefano Sabatini
409a3bda07 lavfi: add blackdetect filter
Address trac ticket #901.
2012-03-04 12:31:06 +01:00
Nicolas George
07fb7682d1 vsrc_testsrc: free option values. 2012-03-03 13:17:39 +01:00
Nicolas George
eb6b6d7f8a vsrc_life: free option values. 2012-03-03 12:33:54 +01:00
Nicolas George
f8210f892e vf_fade: free type when overwriting it. 2012-03-03 12:33:54 +01:00
Michael Niedermayer
f54e06feb3 vf_deshake: try to fix memleak
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-29 02:33:32 +01:00
Michael Niedermayer
02670762d2 libavfilter/libmpcodecs: add vf_pp from current mplayer svn
This will allow us to do regression tests on libpostproc.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-26 20:39:32 +01:00
Nicolas George
42655b24c2 avfiltergraph: avoid harmful auto audio conversions.
With the current code, an automatically inserted aconvert necessary
for format change would usually convert to mono for no good reason.

The new code will not avoid all conversions, but at least will keep
them among the layouts common to both filters.
2012-02-23 09:37:11 +01:00
Nicolas George
4217dfe87b af_pan: remove dual double/int storage of gain.
libswresample takes care of that now.
2012-02-22 10:50:58 +01:00
Michael Niedermayer
184fc600e1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpegvideo_enc: only allocate output packet when we know there will be output
  Add names for more channel layouts to the channel layout map.
  sunrast: Add a sample request for RMP_RAW colormap.
  avcodec: do not override pts or duration from the audio encoder
  Add prores regression test.
  Enable already existing rso regression test.
  Add regression test for "sox" format muxer/demuxer.
  Add dpx encoding regression test.
  swscale: K&R formatting cosmetics for PowerPC code (part I/II)
  img2: Use ff_guess_image2_codec(filename) shorthand where appropriate.
  Clarify licensing information about files borrowed from libjpeg.
  Mark mutable static data const where appropriate.
  avplay: fix -threads option
  dvbsubdec: avoid undefined signed left shift in RGBA macro
  mlpdec: use av_log_ask_for_sample()
  gif: K&R formatting cosmetics
  png: make .long_name more descriptive
  movdec: Adjust keyframe flagging in fragmented files
  rv34: change most "int stride" into "ptrdiff_t stride".

Conflicts:
	avprobe.c
	ffplay.c
	libavcodec/mlpdec.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pngenc.c
	libavcodec/x86/v210-init.c
	libavfilter/vf_boxblur.c
	libavfilter/vf_crop.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_lut.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/vf_select.c
	libavfilter/vf_setpts.c
	libavfilter/vf_settb.c
	libavformat/img2.c
	libavutil/audioconvert.c
	tests/codec-regression.sh
	tests/lavf-regression.sh
	tests/ref/lavf/dpx
	tests/ref/vsynth1/prores
	tests/ref/vsynth2/prores

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-22 02:24:18 +01:00
Alex Converse
b0f29db5c2 Mark mutable static data const where appropriate. 2012-02-21 09:47:07 -08:00
Clément Bœsch
241f8465d0 lavfi/abuffer: init the data planes with NULL pointers.
Samples buffer ref is allocated and loaded with the uninitialized data
pointers:
     av_asrc_buffer_add_buffer()
  -> av_asrc_buffer_add_samples()
  -> avfilter_get_audio_buffer_ref_from_arrays(data, ...)

...which leads to a crash with at least lavfi/ashowinfo in case of !NULL
(see the for loop while samplesref->data[plane]).
2012-02-21 16:45:34 +01:00
Nicolas George
a923b6b8f4 af_pan: move query_format before config_props.
That is the logical order in which the functions are called,
and there is no longer any need of forward declarations.
2012-02-20 23:36:03 +01:00
Nicolas George
eb9ba527e7 af_pan: remove the indirect function call.
libswresample is used in all cases.
2012-02-20 23:36:03 +01:00
Nicolas George
a297856b8c af_pan: reindent after last commit. 2012-02-20 20:46:35 +01:00
Nicolas George
a44b510d56 af_pan: use libswr for rematrixing. 2012-02-20 20:46:35 +01:00
Stefano Sabatini
4538d66010 lavfi/aspect: set default value to 0:1, as stated in the docs
Fix regression introduced in commit 70ffda3217.
2012-02-18 11:41:53 +01:00
Stefano Sabatini
80715c3b23 lavfi/aspect: remove confusing comments 2012-02-18 11:37:34 +01:00
Stefano Sabatini
360218713f lavfi/aspect: show log info even in case no argument is provided to setdar/setsar 2012-02-18 11:31:28 +01:00
Stefano Sabatini
7bdefc0f12 lavfi/overlay: add logic for avoiding overlaying frames with PTS > main frame PTS
Also add debug logging messages for helping tracking down similar
issues.

Fix trac ticket #467.
2012-02-17 00:28:35 +01:00
Nicolas George
bd5080b1b0 af_pan: comment a tricky piece of code. 2012-02-15 20:04:05 +01:00
Clément Bœsch
cba4e2cbbc pan: fix uninitialized channel_id variable.
Fix broken parsing with pan=2:FL=FR:FR=FL and similar.
2012-02-15 10:26:30 +01:00
Clément Bœsch
d3b06399ff lavfi/silencedetect: use av_ts2timestr() macro. 2012-02-15 00:22:47 +01:00
Stefano Sabatini
f89f9bdadd lavfi/ashowinfo: only print checksum for the existing planes
Make the output a bit nicer.
2012-02-14 18:01:57 +01:00
Stefano Sabatini
1e6408a18e lavfi/showinfo: only print checksum for the existing planes
Make the output a bit nicer.
2012-02-14 18:01:50 +01:00
Stefano Sabatini
175ab5f9a9 lavfi/*showinfo: use av_ts2* macros in showinfo and ashowinfo 2012-02-14 18:01:43 +01:00
Michael Niedermayer
04b53746ad Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtpdec: Use 4 byte startcodes for H.264
  matroskadec: Mark variable as av_unused.
  Move some conditionally used variables into the block where they are used.
  Drop some completely unnecessary av_unused attributes.
  swscale: Remove unused variable alpMmxFilter.
  Drop unnecessary av_uninit attributes from some variable declarations.
  movenc: Support muxing wmapro in ismv/isma
  mpegtsenc: Add an AVOption for forcing a new PAT/PMT/SDT to be written
  swscale: move YUV2PACKED16WRAPPER() macro down to where it is used.
  swscale: handle gray16 as a "planar" YUV format (Y-only, of course).
  swscale: use yuv2packed1() functions for unscaled chroma also.
  swscale: fix incorrect chroma bias in yuv2rgb48_1_c().
  swscale: fix invalid memory accesses in yuvpacked1() functions.
  Move PS2 MMI code below the mips subdirectory, where it belongs.
  mips: Move MMI function declarations to a header.
  build: Set correct dependencies for rtmp* protocols implemented by librtmp.

Conflicts:
	libavcodec/ac3enc_template.c
	libavformat/mpegtsenc.c
	libswscale/output.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-14 01:53:31 +01:00
Diego Biurrun
7331b6e718 Drop some completely unnecessary av_unused attributes. 2012-02-13 19:20:53 +01:00
Michael Niedermayer
8c6ebab747 Merge remote-tracking branch 'qatar/master'
* qatar/master: (26 commits)
  eac3dec: replace undefined 1<<31 with INT32_MIN in noise generation
  yadif: specify array size outside DECLARE_ALIGNED
  prores: specify array size outside DECLARE_ALIGNED brackets.
  WavPack demuxer: set packet duration
  tta: use skip_bits_long()
  mxfdec: Ignore the last entry in Avid's index table segments
  mxfdec: Sanity-check SampleRate
  mxfdec: Handle small EditUnitByteCount
  mxfdec: Consider OPAtom files that do not have exactly one EC to be OP1a
  mxfdec: Don't crash in mxf_packet_timestamps() if current_edit_unit overflows
  mxfdec: Zero nb_ptses in mxf_compute_ptses_fake_index()
  mxfdec: Sanity check PreviousPartition
  mxfdec: Never seek back in local sets and KLVs
  mxfdec: Move the current_partition check inside mxf_read_header()
  mxfdec: Fix infinite loop in mxf_packet_timestamps()
  mxfdec: Check eof_reached in mxf_read_local_tags()
  mxfdec: Check for NULL component
  mxfdec: Make sure mxf->nb_index_tables > 0 in mxf_packet_timestamps()
  mxfdec: Make sure x < index_table->nb_ptses
  build: Add missing directories to DIRS declarations.
  ...

Conflicts:
	doc/build_system.txt
	doc/fate.texi
	libavfilter/x86/yadif_template.c
	libavformat/mxfdec.c
	libavutil/Makefile
	tests/fate/audio.mak
	tests/fate/prores.mak
	tests/fate/screen.mak
	tests/fate/video.mak
	tests/ref/fate/bethsoft-vid
	tests/ref/fate/cscd
	tests/ref/fate/dfa4
	tests/ref/fate/nuv
	tests/ref/fate/vp8-sign-bias
	tests/ref/fate/wmv8-drm
	tests/ref/lavf/gxf

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-10 01:20:07 +01:00
Janne Grunau
456d3e4fb5 yadif: specify array size outside DECLARE_ALIGNED 2012-02-09 21:28:37 +01:00
Diego Biurrun
0bba26466f cosmetics: Delete empty lines at end of file. 2012-02-09 12:26:45 +01:00
Michael Niedermayer
f2b20b7a8b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  pixdesc: mark pseudopaletted formats with a special flag.
  avconv: switch to avcodec_encode_video2().
  libx264: implement encode2().
  libx264: split extradata writing out of encode_nals().
  lavc: add avcodec_encode_video2() that encodes from an AVFrame -> AVPacket
  cmdutils: update copyright year to 2012.
  swscale: sign-extend integer function argument to qword on x86-64.
  x86inc: support yasm -f win64 flag also.
  h264: manually save/restore XMM registers for functions using INIT_MMX.
  x86inc: allow manual use of WIN64_SPILL_XMM.
  aacdec: Use correct speaker order for 7.1.
  aacdec: Remove incorrect comment.
  aacdec: Simplify output configuration.
  Remove Sun medialib glue code.
  dsputil: set STRIDE_ALIGN to 16 for x86 also.
  pngdsp: swap argument inversion.

Conflicts:
	cmdutils.c
	configure
	doc/APIchanges
	ffmpeg.c
	libavcodec/aacdec.c
	libavcodec/dsputil.h
	libavcodec/libx264.c
	libavcodec/mlib/dsputil_mlib.c
	libavcodec/utils.c
	libavfilter/vf_scale.c
	libavutil/avutil.h
	libswscale/mlib/yuv2rgb_mlib.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-09 01:27:12 +01:00
Clément Bœsch
c84acc31b2 Revert "vf_fspp: use LOCAL_MANGLE instead of MANGLE."
This reverts commit 1aa8f5fcfb. It broke
the other x86_32 fate instances.
2012-02-08 23:16:32 +01:00
Anton Khirnov
38d5533228 pixdesc: mark pseudopaletted formats with a special flag.
This makes it possible to dintinguish them from PAL8.

Fixes an invalid write in avpicture_layout().
2012-02-08 21:01:31 +01:00
Clément Bœsch
1aa8f5fcfb vf_fspp: use LOCAL_MANGLE instead of MANGLE.
The symbols are locals, thus the EXTERN_PREFIX should be omitted. This
might fix the llvm-gcc fate instance.
2012-02-08 19:45:39 +01:00
Stefano Sabatini
0349d61eef lavfi/aspect: rename field aspect->aspect to aspect->ratio
The new name is more sensible.
2012-02-07 15:49:01 +01:00
Michael Niedermayer
b479e01612 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Revert "v210enc: use FFALIGN()"
  doxygen: Do not include license boilerplates in Doxygen comment blocks.
  avplay: reset decoder flush state when seeking
  ape: skip packets with invalid size
  ape: calculate final packet size instead of guessing
  ape: stop reading after the last frame has been read
  ape: return AVERROR_EOF instead of AVERROR(EIO) when demuxing is finished
  ape: return error if seeking to the current packet fails in ape_read_packet()
  avcodec: Clarify AVFrame member documentation.
  v210dec: check for coded_frame allocation failure
  v210enc: use stride as it is already calculated
  v210enc: use FFALIGN()
  v210enc: return proper AVERROR codes instead of -1
  v210enc: do not set coded_frame->key_frame
  v210enc: check for coded_frame allocation failure
  drawtext: add 'fix_bounds' option on coords fixing
  drawtext: fix text_{w, h} expression vars
  drawtext: add missing braces around an if() block.

Conflicts:
	libavcodec/arm/vp8.h
	libavcodec/arm/vp8dsp_init_arm.c
	libavcodec/v210dec.c
	libavfilter/vf_drawtext.c
	libavformat/ape.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-07 01:40:29 +01:00
Stefano Sabatini
b7d45d0b0f lavfi: add setfield filter 2012-02-06 20:46:58 +01:00
Stefano Sabatini
70ffda3217 lavu: introduce av_parse_ratio() and use it in ffmpeg and lavfi/aspect
Factorize code and provide ratio parsing consistency.
2012-02-06 11:30:54 +01:00
Andrey Utkin
e496c45d9b drawtext: add 'fix_bounds' option on coords fixing
Before, drawtext filter deliberately altered given text coordinates if
text didn't fully fit on the picture. This breaks the use case of
scrolling large text, e.g. movie closing credits.
Add 'fix_bounds', to make it usable in such cases (by setting its value to 0).
Default behavior is not changed, and non-fitting text coords are fixed.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-02-06 07:57:40 +01:00
Andrey Utkin
2b43dfce36 drawtext: fix text_{w, h} expression vars
Before, {text_,}{w,h} vars hadn't got initialized

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-02-06 07:52:05 +01:00
Andrey Utkin
e7f0bc8c0f drawtext: add missing braces around an if() block.
Prevents uninitialized read.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-02-05 08:07:55 +01:00
Clément Bœsch
174880f580 lavfi/thumbnail: rename @url to @see.
@url isn't a valid Doxygen directive.
2012-02-03 00:55:37 +01:00
Clément Bœsch
d50a4c4a5b lavfi/amerge: copy ref props after filtering samples.
This fixes various issues with ffmpeg -ss and -t.
2012-02-02 14:31:18 +01:00
Clément Bœsch
85c66793d7 lavfi/pan: copy ref props after filtering samples.
At least PTS needs to be copied to avoid breaking options such as -t in
ffmpeg.
2012-02-02 14:31:18 +01:00
Clément Bœsch
c79eddaff1 lavfi/aconvert: use libswresample.
This commit also drops the planar parameter; you now need to use the 'p'
suffix in order to request a planar sample format.
2012-02-02 14:31:18 +01:00
Clément Bœsch
e96be8409f lavfi/aresample: use libswresample. 2012-02-02 14:31:17 +01:00
Clément Bœsch
9f0b0db0d3 lavfi/aformat: use do..while(0) form for macro.
This avoids some empty statements.
2012-02-02 14:31:17 +01:00
Clément Bœsch
f65600d519 drawtext: use new public timecode API. 2012-02-02 14:31:17 +01:00
Michael Niedermayer
c4bdb2bf93 libavfilter/version.h: fix project name
The code in the file is written by vitor in be19d752 (2008)
thus cannot have originated in libav which did not exist at that
time

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-01 04:43:06 +01:00
Michael Niedermayer
c065255bba Merge remote-tracking branch 'qatar/master'
* qatar/master:
  aacenc: Fix LONG_START windowing.
  aacenc: Fix a bug where deinterleaved samples were stored in the wrong place.
  avplay: use the correct array size for stride.
  lavc: extend doxy for avcodec_alloc_context3().
  APIchanges: mention avcodec_alloc_context()/2/3
  avcodec_align_dimensions2: set only 4 linesizes, not AV_NUM_DATA_POINTERS.
  aacsbr: ARM NEON optimised sbrdsp functions
  aacsbr: align some arrays
  aacsbr: move some simdable loops to function pointers
  cosmetics: Remove extra newlines at EOF

Conflicts:
	libavcodec/utils.c
	libavfilter/formats.c
	libavutil/mem.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-29 00:34:59 +01:00
Clément Bœsch
23b639c44f Fix "ouput" typo and add a check. 2012-01-28 11:04:19 +01:00
Michael Niedermayer
e37f161e66 Merge remote-tracking branch 'qatar/master'
* qatar/master: (71 commits)
  movenc: Allow writing to a non-seekable output if using empty moov
  movenc: Support adding isml (smooth streaming live) metadata
  libavcodec: Don't crash in avcodec_encode_audio if time_base isn't set
  sunrast: Document the different Sun Raster file format types.
  sunrast: Add a check for experimental type.
  libspeexenc: use AVSampleFormat instead of deprecated/removed SampleFormat
  lavf: remove disabled FF_API_SET_PTS_INFO cruft
  lavf: remove disabled FF_API_OLD_INTERRUPT_CB cruft
  lavf: remove disabled FF_API_REORDER_PRIVATE cruft
  lavf: remove disabled FF_API_SEEK_PUBLIC cruft
  lavf: remove disabled FF_API_STREAM_COPY cruft
  lavf: remove disabled FF_API_PRELOAD cruft
  lavf: remove disabled FF_API_NEW_STREAM cruft
  lavf: remove disabled FF_API_RTSP_URL_OPTIONS cruft
  lavf: remove disabled FF_API_MUXRATE cruft
  lavf: remove disabled FF_API_FILESIZE cruft
  lavf: remove disabled FF_API_TIMESTAMP cruft
  lavf: remove disabled FF_API_LOOP_OUTPUT cruft
  lavf: remove disabled FF_API_LOOP_INPUT cruft
  lavf: remove disabled FF_API_AVSTREAM_QUALITY cruft
  ...

Conflicts:
	doc/APIchanges
	libavcodec/8bps.c
	libavcodec/avcodec.h
	libavcodec/libx264.c
	libavcodec/mjpegbdec.c
	libavcodec/options.c
	libavcodec/sunrast.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/x86/h264_deblock.asm
	libavdevice/libdc1394.c
	libavdevice/v4l2.c
	libavformat/avformat.h
	libavformat/avio.c
	libavformat/avio.h
	libavformat/aviobuf.c
	libavformat/dv.c
	libavformat/mov.c
	libavformat/utils.c
	libavformat/version.h
	libavformat/wtv.c
	libavutil/Makefile
	libavutil/file.c
	libswscale/x86/input.asm
	libswscale/x86/swscale_mmx.c
	libswscale/x86/swscale_template.c
	tests/ref/lavf/ffm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 07:53:34 +01:00
Alex Converse
7181c4edee cosmetics: Remove extra newlines at EOF 2012-01-27 17:19:09 -08:00
Michael Niedermayer
3c5fe5b527 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  wma: Clip WMA1 and WMA2 frame length to 11 bits.
  movenc: Don't require frame_size to be set for modes other than mov
  doc: Update APIchanges with info on muxer flushing
  movenc: Reindent a block
  tools: Remove some unnecessary #undefs.
  rv20: prevent calling ff_h263_decode_mba() with unset height/width
  tools: K&R reformatting cosmetics
  Ignore generated aviocat and ismindex tools.
  build: Automatically include architecture-specific library Makefile snippets.
  indeo5: prevent null pointer dereference on broken files
  pktdumper: Use usleep instead of sleep
  cosmetics: Remove some unnecessary block braces.
  Drop unnecessary prefix from *sink* variable and struct names.
  Add a tool for creating smooth streaming manifests
  movdec: Calculate an average bit rate for fragmented streams, too
  movenc: Write the sample rate instead of time scale in the stsd atom
  movenc: Add a separate ismv/isma (smooth streaming) muxer
  movenc: Allow the caller to decide on fragmentation
  libavformat: Add a flag for muxers that support write_packet(NULL) for flushing
  movenc: Add support for writing fragmented mov files
  ...

Conflicts:
	Changelog
	cmdutils.c
	cmdutils.h
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavfilter/Makefile
	libavformat/Makefile
	libavformat/avformat.h
	libavformat/movenc.c
	libavformat/movenc.h
	libavformat/version.h
	tools/graph2dot.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 02:23:56 +01:00
Nicolas George
4a68949cd8 lavfi: Makefile: cosmetics: align FFLIBS. 2012-01-25 16:12:52 +01:00
Diego Biurrun
07a873a277 build: Automatically include architecture-specific library Makefile snippets. 2012-01-25 15:04:28 +01:00
Diego Biurrun
33ad8c3cab cosmetics: Remove some unnecessary block braces. 2012-01-25 13:14:49 +01:00
Nicolas George
af21823ae0 lavfi: require libswr for af_pan. 2012-01-24 12:11:04 +01:00
Nicolas George
0c3577bfd9 lavfi: add avfilter_graph_dump. 2012-01-24 11:38:36 +01:00
Clément Bœsch
9bd44b42a8 pan: drop unecessary includes. 2012-01-24 10:43:42 +01:00
Clément Bœsch
66b1b7e5fa pan: move query_formats() to avoid forward declarations. 2012-01-24 10:43:42 +01:00
Clément Bœsch
94dc4a5046 pan: reindent after remap commit. 2012-01-24 10:43:41 +01:00
Clément Bœsch
6728dd37ac pan: add channel mapping capability. 2012-01-24 10:43:41 +01:00
Clément Bœsch
66fdbcbbc9 pan: raise correct error when there is no param specified. 2012-01-24 10:43:41 +01: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
Stefano Sabatini
a9117c755e lavfi: fix mp and mandelbrot descriptions to make them complete sentences
This is consistent with the other filter descriptions.
2012-01-21 14:40:46 +01:00
Ray Simard
9ec39937f9 deshake: variable used uninitialized
Sometimes the scan finds nothing that qualifies for addition to
the array and pos is zero after the loops.  The code forces pos to
1 and the array is then processed as if it had one valid element in it,
producing some amusing but not very useful results.

I don't see the rationale for this.  If pos is zero coming out of the
loops, the only appropriate thing to do is set t->angle to zero.  The
attached patch does that.  It's worked properly in several tests so far.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-21 05:22:49 +01:00
Clément Bœsch
9d35fa43ee lavfi: add missing periods in descriptions. 2012-01-20 00:16:27 +01:00
Stefano Sabatini
a798c20a76 lavfi/testsrc: add "decimals" option to the testsrc filter 2012-01-17 12:03:30 +01:00
Stefano Sabatini
4ee03fef53 lavfi/rgbtestsrc: make alpha plane opaque 2012-01-15 14:49:30 +01:00
Nicolas George
bbf372e145 overlay: do not leak x/y expressions. 2012-01-15 09:12:03 +01:00
Michael Niedermayer
4640da7e58 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  sgidec: Use bytestream2 functions to prevent buffer overreads.
  cosmetics: Move static and inline attributes to more standard places.
  configure: provide libavfilter/version.h header to get_version()
  swscale: change yuv2yuvX code to use cpuflag().
  libx264: Don't leave max_b_frames as -1 if the user didn't set it
  FATE: convert output to rgba for the targa tests which currently output pal8
  fate: add missing reference files for targa tests in 9c2f9b0e2
  FATE: enable the 2 remaining targa conformance suite tests
  targa: add support for rgb555 palette
  FATE: fix targa tests on big-endian systems

Conflicts:
	libavcodec/sgidec.c
	libavcodec/targa.c
	libswscale/x86/output.asm
	tests/fate/image.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-15 01:16:54 +01:00
Diego Biurrun
e44c11e9fa cosmetics: Move static and inline attributes to more standard places.
Fixes several "‘static’ is not at beginning of declaration" warnings.
2012-01-14 17:32:36 +01:00
Ray Simard
369befb41e vf_deshake: remove unused variable totalangles
Variable totalangles was created and assigned, but never used.

Signed-off-by: Ray Simard <rhs.ffmpeg@sylvan-glade.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-01-13 17:00:21 +01:00
Ray Simard
7f6004fc74 vf_deshake: zero-init Transform structs in end_frame()
Initialize Transform structs t and orig to zero.

Signed-off-by: Ray Simard <rhs.ffmpeg@sylvan-glade.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-01-13 16:59:50 +01:00
Michael Niedermayer
b18e17eabf Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  utils: Check for extradata size overflows.
  ARM: rv34: fix asm syntax in dc transform functions
  avio: Fix the value of the deprecated URL_FLAG_NONBLOCK
  rv34: fix and optimise frame dependency checking
  rv34: NEON optimised dc only inverse transform
  avprobe: use avio_size() instead of deprecated AVFormatContext.file_size.
  ffmenc: remove references to deprecated AVFormatContext.timestamp.
  lavf: undeprecate read_seek().
  avserver: remove code using deprecated CODEC_CAP_PARSE_ONLY.
  lavc: replace some remaining FF_I_TYPE with AV_PICTURE_TYPE_I
  lavc: ifdef out parse_only AVOption
  nellymoserdec: SAMPLE_FMT -> AV_SAMPLE_FMT
  mpegvideo_enc: ifdef out/replace references to deprecated codec flags.
  riff: remove references to sonic codec ids
  indeo4: add some missing static and const qualifiers
  rv34: DC-only inverse transform
  avconv: use AVFrame.width/height/format instead of corresponding AVCodecContext fields
  lavfi: move version macros to a new installed header version.h
  vsrc_buffer: release the buffer on uninit.
  rgb2rgb: rgb12tobgr12()
  ...

Conflicts:
	avconv.c
	doc/APIchanges
	ffprobe.c
	libavfilter/Makefile
	libavfilter/avfilter.h
	libswscale/rgb2rgb.c
	libswscale/rgb2rgb.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-13 01:29:48 +01:00
Reimar Döffinger
7cbb32e461 Use an int MotionVector for find_block_motion.
Using the double variant causes several pointless conversions between
double and int.
Worse, one of the conversions is in an inner loop together with a
function using MMX, resulting in undefined behaviour.
Based on debugging by Ray Simard.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Tested-by: Ray Simard <rhs.ffmpeg@sylvan-glade.com>
2012-01-12 20:09:16 +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
a8b0ece6e5 lavfi/testsrc: add "d" alias for the duration option 2012-01-12 10:39:24 +01:00
Anton Khirnov
3167dc9515 lavfi: move version macros to a new installed header version.h 2012-01-12 09:00:54 +01:00
Anton Khirnov
43fe6a2905 vsrc_buffer: release the buffer on uninit. 2012-01-12 08:59:00 +01:00
Clément Bœsch
98aafc5bbf timecode: set a fixed buffer size of 16B for tc string. 2012-01-11 18:14:03 +01:00
Michael Niedermayer
0e7fc3cafe Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  rv34: frame-level multi-threading
  mpegvideo: claim ownership of referenced pictures
  aacsbr: prevent out of bounds memcpy().
  ipmovie: fix pts for CODEC_ID_INTERPLAY_DPCM
  sierravmd: fix audio pts
  bethsoftvideo: Use bytestream2 functions to prevent buffer overreads.
  bmpenc: support for PIX_FMT_RGB444
  swscale: fix crash in fast_bilinear code when compiled with -mred-zone.
  swscale: specify register type.
  rv34: use get_bits_left()
  avconv: reinitialize the filtergraph on resolution change.
  vsrc_buffer: error on changing frame parameters.
  avconv: fix -copyinkf.
  fate: Update file checksums after the mov muxer change in a78dbada55
  movenc: Don't store a nonzero creation time if nothing was set by the caller
  bmpdec: support for rgb444 with bitfields compression
  rgb2rgb: allow conversion for <15 bpp
  doc: fix stray reference to FFmpeg
  v4l2: use C99 struct initializer
  v4l2: poll the file descriptor
  ...

Conflicts:
	avconv.c
	libavcodec/aacsbr.c
	libavcodec/bethsoftvideo.c
	libavcodec/kmvc.c
	libavdevice/v4l2.c
	libavfilter/vsrc_buffer.c
	libswscale/swscale_unscaled.c
	libswscale/x86/input.asm
	tests/ref/acodec/alac
	tests/ref/acodec/pcm_s16be
	tests/ref/acodec/pcm_s24be
	tests/ref/acodec/pcm_s32be
	tests/ref/acodec/pcm_s8
	tests/ref/lavf/mov
	tests/ref/vsynth1/dnxhd_1080i
	tests/ref/vsynth1/mpeg4
	tests/ref/vsynth1/qtrle
	tests/ref/vsynth1/svq1
	tests/ref/vsynth2/dnxhd_1080i
	tests/ref/vsynth2/mpeg4
	tests/ref/vsynth2/qtrle
	tests/ref/vsynth2/svq1

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-11 02:44:43 +01:00
Anton Khirnov
5d25140f71 vsrc_buffer: error on changing frame parameters. 2012-01-10 16:47:15 +01:00
Clément Bœsch
0c01947316 lavfi: add audio silencedetect filter. 2012-01-08 17:08:55 +01:00
Michael Niedermayer
757473831c Merge remote-tracking branch 'qatar/master'
* qatar/master: (29 commits)
  cabac: Move code only used within the CABAC test program into the test program.
  vp56: Drop unnecessary cabac.h #include.
  h264-test: Initialize AVCodecContext.av_class.
  build: Skip compiling network.h and rtsp.h if networking is not enabled.
  cosmetics: drop some pointless parentheses
  Disable annoying warning without changing behavior
  faq: Solutions for common problems with sample paths when running FATE.
  avcodec: attempt to clarify the CODEC_CAP_DELAY documentation
  avcodec: fix avcodec_encode_audio() documentation.
  FATE: xmv-demux test; exercise the XMV demuxer without decoding the perceptual codecs inside.
  vqf: recognize more metadata chunks
  FATE test: BMV demuxer and associated video and audio decoders.
  FATE: indeo4 video decoder test.
  FATE: update xxan-wc4 test to a sample with more code coverage.
  Change the recent h264_mp4toannexb bitstream filter test to output to an elementary stream rather than a program stream.
  g722enc: validate AVCodecContext.trellis
  g722enc: set frame_size, and also handle an odd number of input samples
  g722enc: split encoding into separate functions for trellis vs. no trellis
  mpegaudiodec: Use clearer pointer math
  tta: Fix returned error code at EOF
  ...

Conflicts:
	libavcodec/h264.c
	libavcodec/indeo3.c
	libavcodec/interplayvideo.c
	libavcodec/ivi_common.c
	libavcodec/libxvidff.c
	libavcodec/mpegvideo.c
	libavcodec/ppc/mpegvideo_altivec.c
	libavcodec/tta.c
	libavcodec/utils.c
	libavfilter/vsrc_buffer.c
	libavformat/Makefile
	tests/fate/indeo.mak
	tests/ref/acodec/g722

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 03:34:22 +01:00
Diego Biurrun
3dc99a18d4 cosmetics: drop some pointless parentheses 2012-01-07 22:13:07 +01:00
Andrey Utkin
079688b6cb Disable annoying warning without changing behavior
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-07 12:46:57 -08:00
Clément Bœsch
96fc1f0733 volume: remove duplicated condition. 2012-01-05 21:53:18 +01:00
Clément Bœsch
940d3cc0b0 drawtext: fix hard dependency to lavc (timecode). 2012-01-02 15:33:56 +01:00
Jean First
2e0efa332b af_astreamsync: remove unused variable
Signed-off-by: Jean First <jeanfirst@gmail.com>
2012-01-01 16:43:32 +01:00
Stefano Sabatini
42a8ac94d9 vf_tinterlace: implement interlace mode 5
Allow creating interlaced bottom field first video.
2012-01-01 16:16:50 +01:00
Nicolas George
4962edf889 lavfi: add amerge audio filter. 2011-12-31 16:25:11 +01:00
Nicolas George
e90a69e955 lavfi: add astreamsync audio filter. 2011-12-31 16:16:24 +01:00
Stefano Sabatini
8fb03b4d70 lavfi: port tinterlace filter from MPlayer
Port MPlayer tinterlace filter from MPlayer, with some ideas taken
from the FFmbc/libavfilter port, with the following main differences:

* added support for full-scale YUVJ formats
* added support for YUVA420P
* request_frame() on the filter is forced to return a frame
* some code factorization (related to the copy_picture_fields() function)
* fixed black padding values for mode 3
2011-12-31 11:43:10 +01:00
Stefano Sabatini
549b53e8cb lavfi: remove redundant definition of avfilter_copy_frame_props() in avfilter.h
Rationale: avfilter_copy_frame_props() was already defined in
libavfilter/avcodec.h, and keeping the lavc/lavfi API glue localized in a
specific file should ease maintainance and help the ones which use
libavfilter without depending on libavcodec.
2011-12-31 11:37:01 +01:00
Michael Niedermayer
1a6a088f7c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: whitespace cosmetics
  fate: split off video codec FATE tests into their own file
  fate: split off audio codec FATE tests into their own file
  fate: split off Electronic Arts codec FATE tests into their own file
  fate: split off QuickTime codec FATE tests into their own file
  fate: split off voice codec FATE tests into their own file
  fate: split off demuxer FATE tests into their own file
  cosmetics: Drop unnecessary parentheses around return values.
  fate: drop pointless _audio and _video suffixes from xan tests
  qt-faststart: K&R reformatting; fix comment typos
  FATE: Add test for H.264 MP4->annex.B bitstream filter.

Conflicts:
	ffplay.c
	tests/fate.mak
	tests/fate/h264.mak
	tests/fate/image.mak
	tests/fate/lossless-audio.mak
	tests/fate/lossless-video.mak
	tests/fate/qtrle.mak
	tests/fate/real.mak
	tests/fate/screen.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-31 01:16:45 +01:00
Diego Biurrun
d4b63054d9 cosmetics: Drop unnecessary parentheses around return values. 2011-12-30 22:18:07 +01:00
Stefano Sabatini
440e984b71 lavfi: add asplit filter 2011-12-27 15:21:08 +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
e9af732a1a lavfi: fix avfilter_default_get_audio_buffer() after changes in av_samples_alloc()
av_samples_alloc() behavior changed in bbb46f3ec, resulting in random
data filling the data[] and linesize[] arrays of the returned
AVFilterBufferRef, which was resulting in wrong behavior in case of code
checking on data[i] nullity.

In particular fixes crash in avfilter_filter_samples():
        for (i = 0; samplesref->data[i]; i++)
            memcpy(link->cur_buf->data[i], samplesref->data[i], samplesref->linesize[0]);

and correctly fills the linesize[] array for planar data.
2011-12-27 15:20:54 +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
Clément Bœsch
f1f87439e5 thumbnail: fix error code in case of invalid args. 2011-12-27 11:15:21 +01:00
Clément Bœsch
15a2a29ba3 lavfi: add thumbnail video filter. 2011-12-27 11:05:08 +01:00
Michael Niedermayer
484e59a0a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avs: call release_buffer() at the end.
  Add minor bumps and APIchanges entries for lavc/lavfi changes.
  mpegvideo.c: K&R formatting and cosmetics.
  avconv: avoid memcpy in vsrc_buffer when possible.
  avconv: implement get_buffer()/release_buffer().
  lavfi: add a new function av_buffersrc_buffer().
  lavfi: add avfilter_copy_frame_props()
  lavc: add format field to AVFrame
  lavc: add width and height fields to AVFrame
  lavc: add a sample_aspect_ratio field to AVFrame
  doxy: add website-alike style to the html output
  FAQ: add an entry for common error when using -profile

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	libavcodec/avcodec.h
	libavcodec/mpegvideo.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/Makefile
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/src_movie.c
	libavfilter/vsrc_buffer.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-26 04:10:47 +01:00
Anton Khirnov
06e8d38f2b Add minor bumps and APIchanges entries for lavc/lavfi changes. 2011-12-25 20:50:16 +01:00
Anton Khirnov
e1d9dbf2d4 lavfi: add a new function av_buffersrc_buffer().
It can be used to directly pass a AVFilterBufferRef to lavfi, avoiding a
memcpy.
2011-12-25 16:18:57 +01:00
Stefano Sabatini
1c9e340d35 lavfi: add avfilter_copy_frame_props()
avfilter_copy_frame_props() avoids code duplication and increases
robustness.
2011-12-25 16:18:57 +01:00
Stefano Sabatini
b58dbb5b03 lavc: add a sample_aspect_ratio field to AVFrame
The sample aspect ratio is a per-frame property, so it makes sense to
define it in AVFrame rather than in the codec/stream context.
Simplify application-level sample aspect ratio information extraction,
and allow further simplifications.
2011-12-25 16:18:57 +01:00
Stefano Sabatini
1858a5c25e vf_drawtext: select YUV color for drawbox() in case YUV colorspace is used
Fix box alpha rendering when a YUV colorspace is selected, in particular
fix trac ticket #763.
2011-12-24 16:21:40 +01:00
Michael Niedermayer
bba6f5b77f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vp3dec: Check coefficient index in vp3_dequant()
  svq1dec: call avcodec_set_dimensions() after dimensions changed.
  Prepare for 0.8_beta1 snapshot release
  threads: check defines before using them in automatic thread detection
  pthread: include sys/types.h before sys/sysctl.h
  4xm: remove unused variables.
  h264: Fix a possible overread in decode_nal_units()
  allfilters: fix type of avfilter_vsrc_buffer.
  w32thread: call ResetEvent() in pthread_cond_broadcast().

Conflicts:
	Changelog
	RELEASE
	doc/RELEASE_NOTES
	libavcodec/pthread.c
	libavcodec/vp3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 00:45:02 +01:00
Anton Khirnov
82d05e78a6 allfilters: fix type of avfilter_vsrc_buffer. 2011-12-23 08:17:22 +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
d1c28e3530 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: fix standalone compilation of OMA muxer
  build: fix standalone compilation of Microsoft XMV demuxer
  build: fix standalone compilation of Core Audio Format demuxer
  kvmc: fix invalid reads
  4xm: Add a check in decode_i_frame to prevent buffer overreads
  adpcm: fix IMA SMJPEG decoding
  options: set minimum for "threads" to zero
  bsd: use number of logical CPUs as automatic thread count
  windows: use number of CPUs as automatic thread count
  linux: use number of CPUs as automatic thread count
  pthreads: reset active_thread_type when slice thread_init returrns early
  v410dec: include correct headers
  Drop ALT_ prefix from BITSTREAM_READER_LE name.
  lavfi: always build vsrc_buffer.
  ra144enc: zero the reflection coeffs if the filter is unstable
  sws: readd PAL8 to isPacked()
  mov: Don't stick the QuickTime field ordering atom in extradata.
  truespeech: fix invalid reads in truespeech_apply_twopoint_filter()

Conflicts:
	configure
	libavcodec/4xm.c
	libavcodec/avcodec.h
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavformat/Makefile
	libswscale/swscale_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-23 03:25:51 +01:00
Anton Khirnov
196c9e5c8c lavfi: always build vsrc_buffer.
It's a part of public API.
2011-12-22 15:42:52 +01:00
Stefano Sabatini
386aee6864 sink_buffer: copy list of provided formats in the context
A list of formats may have been dynamically created by the calling code,
and thus should not be referenced by the sink buffer context.

Avoid possible invalid data reference.
2011-12-22 10:09:42 +01:00
Michael Niedermayer
3ba0bfe71f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ulti: Fix invalid reads
  lavf: dealloc private options in av_write_trailer
  yadif: support 10bit YUV
  vc1: mark with ER_MB_ERROR bits overconsumption
  lavc: introduce ER_MB_END and ER_MB_ERROR
  error_resilience: use the ER_ namespace
  build: move inclusion of subdir.mak to main subdir loop
  rv34: NEON optimised 4x4 dequant
  rv34: move 4x4 dequant to RV34DSPContext
  aacdec: Use intfloat.h rather than local punning union.

Conflicts:
	libavcodec/h264.c
	libavcodec/vc1dec.c
	libavfilter/vf_yadif.c
	libavformat/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-13 23:21:37 +01:00
Michael Niedermayer
16b771b1f4 cleanup: for(int
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-13 21:08:43 +01:00
Clément Bœsch
0b4e5451ba lavfi: use the new audio API in amovie source filter. 2011-12-13 20:25:12 +01:00
Clément Bœsch
220481e1d6 lavfi: skip the frame in case of error.
This fixes playback with some audio files through filters.
2011-12-13 20:19:49 +01:00
Luca Barbato
d32eed5c73 yadif: support 10bit YUV
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-12-13 17:02:55 +01:00
Mans Rullgard
878dda5db1 build: move inclusion of subdir.mak to main subdir loop
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-12-13 14:26:49 +00:00
Michael Niedermayer
8bc7fe4daf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doxygen: misc consistency, spelling and wording fixes
  vcr1: drop unnecessary emms_c() calls without MMX code
  Replace all uses of av_close_input_file() with avformat_close_input().
  lavf: add avformat_close_input().
  lavf: deprecate av_close_input_stream().
  lavf doxy: add some basic demuxing documentation.
  lavf doxy: add some general lavf information.
  lavf doxy: add misc utility functions to a group.
  lavf doxy: add av_guess_codec/format to the encoding group.
  lavf doxy: add core functions to a doxy group.
  Add basic libavdevice documentation.
  lavc: convert error_recognition to err_recognition.
  avconv: update -map option help text
  x86: Require 7 registers for the cabac asm
  x86: bswap: remove test for bswap instruction
  bswap: make generic implementation more compiler-friendly
  h264: remove useless cast
  proresdec: fix decode_slice() prototype

Conflicts:
	configure
	doc/APIchanges
	ffprobe.c
	libavcodec/avcodec.h
	libavcodec/celp_math.h
	libavcodec/h264.c
	libavfilter/src_movie.c
	libavformat/anm.c
	libavformat/avformat.h
	libavformat/version.h
	libavutil/avstring.h
	libavutil/bswap.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-13 00:39:48 +01:00
Diego Biurrun
58c42af722 doxygen: misc consistency, spelling and wording fixes 2011-12-12 23:06:23 +01:00
Anton Khirnov
cd3716b9aa Replace all uses of av_close_input_file() with avformat_close_input(). 2011-12-12 20:34:38 +01:00
Clément Bœsch
80914cde6f timecode: rename internal ff_* symbols to avpriv_*.
Those functions are shared between libs.

Also fix a typo in function names: smtpe → smpte.
2011-12-12 17:49:34 +01:00
Clément Bœsch
fa4e30af7e drawtext: allow burning the timecode. 2011-12-12 17:49:34 +01:00
Andrey Utkin
5b3265a718 lavfi: install libavfilter/vsrc_buffer.h
It declares API necessary for filtering apps.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-12-11 19:14:09 +01:00
Clément Bœsch
cc2355817d life: add mold, mold_color, life_color and death_color options. 2011-12-11 14:14:01 +01:00
Clément Bœsch
c88d6b18ce life: add seed information in filter summary. 2011-12-11 13:36:58 +01:00
Stefano Sabatini
6c44ff38d6 lavfi: add cellauto source 2011-12-11 11:55:33 +01:00
Michael Niedermayer
a502939d64 buffersink: Implement a poll function.
With this the application can find out how many frames are available.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-08 21:19:23 +01:00
Michael Niedermayer
8e2bab5d4b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  drawtext: remove typo
  pcm-mpeg: implement new audio decoding api
  w32thread: port fixes to pthread_cond_broadcast() from x264.
  doc: add editor configuration section with Vim and Emacs settings
  dxva2.h: include d3d9.h to define LPDIRECT3DSURFACE9
  avformat/utils: Drop unused goto label.
  doxygen: Replace '\' by '@' in Doxygen markup tags.
  cosmetics: drop some completely pointless parentheses
  cljr: simplify CLJRContext
  drawtext: introduce rand(min, max)
  drawtext: introduce explicit draw/hide variable
  rtmp: Use nb_invokes for all invoke commands

Conflicts:
	libavcodec/mpegvideo.c
	libavfilter/vf_drawtext.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-08 00:23:37 +01:00
Luca Barbato
78212cefe1 drawtext: remove typo
It slipped through the last two iterations.
2011-12-07 20:40:18 +01:00
Luca Barbato
f5edfc9e92 drawtext: introduce rand(min, max)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-12-07 12:11:14 +01:00
Luca Barbato
73585620b8 drawtext: introduce explicit draw/hide variable
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-12-07 12:11:14 +01:00
Stefano Sabatini
7ecabc8505 vsrc_life: fix comment in parse_rule() 2011-12-06 15:03:51 +01:00
Stefano Sabatini
3af5ddb24b vf_scale: give a clue in case of invalid expression self-reference
Address trac ticket #706.
2011-12-06 15:03:51 +01:00
Reimar Döffinger
c66bd78e3d vf_scale: support PAL8 output by producing BGR8.
While quality is bad, PAL8 support is needed to allow testing some
encoders that only support PAL8 input.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-12-05 20:05:44 +01:00
Stefano Sabatini
2f8b6e909d lavfi: add life source 2011-12-04 21:18:37 +01:00
Stefano Sabatini
6c26fe8b5a aevalsrc: add duration option 2011-12-04 21:13:22 +01:00
Michael Niedermayer
dda3d716d6 vf_drawtext: support W/H parameters to reduce UI differences to qatar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-04 15:29:26 +01:00
Michael Niedermayer
f88d5df383 vf_drawtext: cosmetics to reduce diff to qatar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-04 02:27:45 +01:00
Michael Niedermayer
297422b338 vf_drawtext: Add main_w/h to improve compatibility with the modified UI
from the fork.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-04 02:08:56 +01:00
Luca Barbato
2cf74eca70 drawtext: make x and y parametric
Introduce variables "E", "PHI", "PI", "main_w"/"W", "main_h"/"H",
"text_w"/"w", "text_h"/"h", "x", "y", "n" and "t" in line with
vf_overlay and refactor the code accordingly.
2011-12-03 01:35:29 +01:00
Luca Barbato
ec11ff8407 drawtext: manage memory allocation better
Call dtext_prepare_text as early as possible
Do not draw if the memory allocation failed
2011-12-03 01:35:28 +01:00
Luca Barbato
a2fb4bcb01 drawtext: refactor draw_text
Split the memory allocation from the actual drawing.
2011-12-03 01:35:28 +01:00
Michael Niedermayer
8f025f2f60 avfilter: align allocated images to 32 for AVX and IFF
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-30 18:53:47 +01:00
Clément Bœsch
c1ae524e2b avfilter: fix AVFilterPad video only comment. 2011-11-26 19:30:30 +01:00
Stefano Sabatini
28338bc2a3 lavfi: add libass based subtitles renderer 2011-11-26 10:42:33 +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
Michael Niedermayer
6d16a96a95 vf_boxblur: fix memleak
As the filter uses the default start frame, the cleanup done by the
default end frame is needed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-25 04:45:41 +01:00
Michael Niedermayer
8e576d5830 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libavutil: add utility functions to simplify allocation of audio buffers.
  libavutil: add planar sample formats and av_sample_fmt_is_planar()
  avconv: fix segfault at EOF with delayed pictures
  pcmdec: remove unneeded resetting of samples pointer
  avconv: remove a now unused parameter from output_packet().
  avconv: formatting fixes in output_packet()
  avconv: declare some variables in blocks where they are used
  avconv: use the same behavior when decoding audio/video/subs
  bethsoftvideo: return proper consumed size for palette packets.
  cdg: skip packets that don't contain a cdg command.
  crcenc: add flags
  avconv: use vsync 0 for AVFMT_NOTIMESTAMPS formats.
  tiffenc: add a private option for selecting compression algorithm
  md5enc: add flags
  ARM: remove needless .text/.align directives

Conflicts:
	doc/APIchanges
	libavcodec/tiffenc.c
	libavutil/avutil.h
	libavutil/samplefmt.c
	libavutil/samplefmt.h
	tests/ref/fate/bethsoft-vid
	tests/ref/fate/cdgraphics
	tests/ref/fate/film-cvid-pcm-stereo-8bit
	tests/ref/fate/mpeg2-field-enc
	tests/ref/fate/nuv
	tests/ref/fate/tiertex-seq
	tests/ref/fate/tscc-32bit
	tests/ref/fate/vmnc-32bit

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-24 03:32:24 +01:00
Michael Niedermayer
656911d84d vsrc_mandelbrot: Fix vsrc_mandelbrot.c:358:85: warning: ‘epsilon’ may be used uninitialized in this function [-Wuninitialized]
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-24 00:08:05 +01:00
Michael Niedermayer
248bb81ebc avfilter: Error out from avfilter_merge_formats() when there are duplicates
instead of trying to continue.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-23 14:14:01 +01:00
Michael Niedermayer
4d874fc2b1 vf_mp: rewrite vf_mp filter warning message
Warning text by: Clément Bœsch <ubitux@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-23 13:22:46 +01:00
Michael Niedermayer
8cda755c2f avfilter: dont write out of array for duplicate formats in avfilter_merge_formats()
Note, this is a theoretical fix, iam not aware of a case where this function receives
duplicates in its input.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-23 13:18:11 +01:00
Michael Niedermayer
78317881f0 graphparser: Fix doxy on avfilter_graph_parse() return value.
Found-by: ZacS123
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-22 15:09:26 +01:00
Clément Bœsch
2f0f9a87d0 Fix various if parenthesis misplacements. 2011-11-21 19:35:33 +01:00
Michael Niedermayer
2c44aed82a vsrc_mandelbrot: fix inner=period, the previous optimizations broke it.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-21 04:16:41 +01:00
Michael Niedermayer
90c02ae142 vsrc_mandelbrot: increase maxiter to 7189
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 23:52:29 +01:00
Michael Niedermayer
690860d0d5 vsrc_mandelbrot: Use threshold to detect cycles.
This way cycles are detected much earlier.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 23:28:56 +01:00
Michael Niedermayer
a5dfedd381 vsrc_mandelbrot: detect edges in interpol()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 22:22:21 +01:00
Michael Niedermayer
4ebbcdb3eb vsrc_mandelbrot: avoid a | in interpol()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 22:11:53 +01:00
Michael Niedermayer
5dd16af6b5 vsrc_mandelbrot: increase default zoom speed by a factor of 2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 19:42:24 +01:00
Michael Niedermayer
ca14808275 vsrc_mandelbrot: spatial interpolation
speeds the code up by a factor of about 2-3.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 19:41:28 +01:00
Michael Niedermayer
56fc4cf04f vsrc_mandelbrot: always store values for periodicity checking, this avoids a few checks.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 15:02:34 +01:00
Michael Niedermayer
da1344e0cd vsrc_mandelbrot: simplify second bailout search by not recalculating values.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 15:00:26 +01:00
Michael Niedermayer
e749b3780c vsrc_mandelbrot: increase zyklus array size so that optimizations can write a bit more.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 14:16:53 +01:00
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
Mina Nagy Zaki
3f07d40ea2 lavfi: add internal functions for parsing format arguments
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-14 10:31:09 +02:00
Stefano Sabatini
3560089e12 vsink_buffer: make the buffer cache all the incoming frames
Allow to cache more than one frame (e.g. for filters which return
more than one frame when avfilter_request_frame() is called on them),
and do not discard previously cached frames when a new one is added.
2011-08-14 02:04:19 +02:00
Stefano Sabatini
ccd85b869d vf_unsharp: vertically align lines, for better readability 2011-08-13 16:45:13 +02:00
Stefano Sabatini
09603dcff8 vf_unsharp: store hsub/vsub in the filter context
Also drop obfuscating CHROMA_WIDTH/HEIGHT macros.
2011-08-13 16:45:13 +02:00
Stefano Sabatini
53e8638205 vf_unsharp: adopt a more natural order of params in apply_unsharp() 2011-08-13 16:45:13 +02:00
Stefano Sabatini
540181f8e2 vf_unsharp: rename method "unsharpen" to "apply_unsharp"
More consistent with the original libmpcodecs code, and the name
"unsharpen" was confusing.
2011-08-13 16:45:13 +02:00
Stefano Sabatini
e72657f83d lavfi: remove mp test wrapper
The source was natively integrated into libavfilter, with the name
mptestsrc.
2011-08-11 16:19:53 +02:00
Stefano Sabatini
1a5e63f924 lavfi: port mp test source 2011-08-11 16:19:48 +02:00
Stefano Sabatini
961e8f31cf vf_mp: sort listing of vf_info_t symbols
This way it's easier for the programmer to look-up for a specific
symbols (e.g. for checking if it's unused).
2011-08-11 16:19:19 +02:00
Stefano Sabatini
fe3cad0e9e vf_select: reindent after the previous commit 2011-08-11 16:09:20 +02:00
William Yu
30ea0e47b5 vf_select: add NULL-checks in uninit
Fix NULL pointer dereference in case of failed initialization.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-11 16:09:20 +02:00
Stefano Sabatini
43fab7aafc vf_select: check for isnan when setting t from pts 2011-08-11 16:09:15 +02:00
William Yu
298fccad21 vf_select: set start_t if undefined
Previously start_t was never set.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-11 16:08:55 +02:00
Stefano Sabatini
640a905ece lavfi: remove gradfun mp wrapper
The gradfun filter was already integrated natively in libavfilter.
Both filters issue the same output, and have a comparable performance.

See thread:
Subject: [FFmpeg-devel] [PATCH] lavfi: remove gradfun mp wrapper
Date: Fri,  5 Aug 2011 00:19:04 +0200
2011-08-07 17:43:02 +02:00
Stefano Sabatini
4646ef87b1 lavfi: fix registration name for the buffersink sink
Previously both the buffer and buffersink elements were associated to
the "BUFFER" symbol in allfilters.c, so it was not possible to enable
one without the other.
2011-08-06 13:18:09 +02:00
Stefano Sabatini
3c56a421d8 lavfi: avoid void* arithmetic in defaults.c:set_common_formats()
void* pointer arithmetic semantics is undefined, use uint8_t* instead.

Also fix GCC warnings:
defaults.c: In function ‘set_common_formats’:
defaults.c:184: warning: pointer of type ‘void *’ used in arithmetic
defaults.c:189: warning: pointer of type ‘void *’ used in arithmetic
2011-08-06 13:18:09 +02:00
Mina Nagy Zaki
a8dcf5eebb lavfi: add asink_abuffer - audio buffer sink
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-06 13:17:49 +02:00
Mina Nagy Zaki
3e12b5893d lavfi: fix doxygen doc for config_props() callback
Update/extend documentation related to the link fields to set, and fix
a pads->filters braino.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-06 12:14:37 +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
Stefano Sabatini
4b7889453e lavfi: remove avfilter_default_config_input_link() declaration
The function is not implemented (and possibly useless).
2011-08-06 12:11:12 +02:00
Stefano Sabatini
82b1516a85 yadif: correct documentation on the parity parameter
0 is top-field-first, 1 is bottom-field-first, not the other way
around.

Fix trac issue #380.
2011-08-04 19:09:57 +02:00
Stefano Sabatini
f1b7c7e697 vf_boxblur: call avfilter_draw_slice() at the end of draw_slice() 2011-08-03 11:18:15 +02:00
Stefano Sabatini
a342517710 vf_boxblur: fix out-of-buffer access when h > w
Increase size of the private temporary buffers from w to FFMAX(w, h),
indeed they are used also for blurring vertical lines with length h.
2011-08-03 11:18:15 +02:00
Stefano Sabatini
d68ba3feb8 vf_boxblur: prefer the name "len" over "w" in the blur routines
Make more clear the meaning of the variables. They specify the length
of a (vertical or horizontal) line rather than a width.
Less confusing.
2011-08-03 11:18:15 +02:00
Stefano Sabatini
45f9e053d8 vf_crop: add support for a, dar, sar, hsub, and vsub variables
Consistent with the pad and scale filters.
2011-07-30 18:30:07 +02:00
Stefano Sabatini
61d55fda2b lavfi: tweak display aspect ratio variables in pad and scale filters
Previously, "dar" and "a" were documented like "input display aspect
ratio", but their actual value was "in_w/in_h".

In order to avoid to break scripts which rely on the "a" variable, the
patch keeps the same semantics but fixes the corresponding docs, and
fixes the semantics of the recently added "dar" variable, which
now correctly expresses the input Display Aspect Ratio value as
"(inw_w/in_h)*sar".
2011-07-30 18:27:24 +02:00
Stefano Sabatini
d9c23a0d5a vf_transpose: avoid multiple calls to avfilter_draw_slice()
avfilter_draw_slice() is already called in the end_frame() callback,
this avoids multiple calls. This is done by adding a null draw_slice()
callback.

In particular fix crash occurring with -vf transpose=3,hflip, fix trac
issue #371.
2011-07-29 20:24:44 +02:00
Joakim Plate
faa338183b yadif must copy buffer properties like aspect for second frame as well 2011-07-28 03:47:53 +02:00
Stefano Sabatini
cc0dc50d02 vf_mp: remove blackframe filter wrapper
blackframe is integrated as a native filter.
2011-07-23 10:55:50 +02:00
Stefano Sabatini
8c2863b87f vf_mp: remove cropdetect wrapper
The cropdetect filter is natively integrated into libavfilter.
2011-07-21 13:04:48 +02:00
Stefano Sabatini
c76974524a vf_blackframe: port missing features from libmpcodecs blackframe
Use and show picref->video->pict_type and key_frame information.
The pict_type and key_frame information was not available at the time
of the port.
2011-07-21 13:04:48 +02:00
Michael Niedermayer
633aa01f72 libavfilter: fix --enable-small
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-21 11:00:47 +02:00
Stefano Sabatini
9bc8bcddbd vf_libopencv: replace opencv/cxtypes.h #include by opencv/cxcore.h
cxtypes.h works with version 2.1 and older, cxcore.h works with 2.2 and older.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-07-18 12:33:13 +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
Stefano Sabatini
b43ca2deb6 vf_mp: remove rgbtest wrapper
The filter was integrated natively into libavfilter as a source with
name rgbtestsrc.
2011-07-15 01:44:57 +02:00
Stefano Sabatini
9dbe8d9e22 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
2011-07-15 01:44:56 +02:00
Stefano Sabatini
1b8807964c vsrc_testsrc: perform some refactoring for simplifying sharing code with another test
In particular creates a special test_init function, which calls a
common init, and introduces a fill_picture_fn which points to the
filling function.

This is required by the pending patch for adding the rgbtestsrc
source.
2011-07-15 01:44:04 +02:00
Stefano Sabatini
4bd28579e5 vf_mp: remove boxblur wrapper
It is natively included in libavfilter.
2011-07-15 01:06:00 +02:00
Michael Niedermayer
5dc6bd86f0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  APIchanges: fill in missing hashes and dates.
  Add an APIChanges entry and bump minor versions for recent changes.
  ffmpeg: print the low bitrate warning after the codec is openend.
  doxygen: Move function documentation into the macro generating the function.
  doxygen: Make sure parameter names match between .c and .h files.
  h264: move fill_decode_neighbors()/fill_decode_caches() to h264_mvpred.h
  H.264: Add more x86 assembly for 10-bit H.264 predict functions
  lavf: fix invalid reads in avformat_find_stream_info()
  cmdutils: replace opt_default with opt_default2() and remove set_context_opts
  ffmpeg: use new avcodec_open2 and avformat_find_stream_info API.
  ffplay: use new avcodec_open2 and avformat_find_stream_info API.
  cmdutils: store all codec options in one dict instead of video/audio/sub
  ffmpeg: check experimental flag after codec is opened.
  ffmpeg: do not set GLOBAL_HEADER flag in the options context

Conflicts:
	cmdutils.c
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavcodec/version.h
	libavformat/version.h
	libswscale/swscale_unscaled.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-14 20:44:58 +02:00
Diego Biurrun
96c1e6d40d doxygen: Make sure parameter names match between .c and .h files. 2011-07-14 04:09:49 +02:00
Stefano Sabatini
6b61920ab7 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
2011-07-14 00:00:31 +02:00
Michael Niedermayer
3602ad7ee6 Merge commit '142e76f1055de5dde44696e71a5f63f2cb11dedf'
* commit '142e76f1055de5dde44696e71a5f63f2cb11dedf':
  swscale: fix crash with dithering due incorrect offset calculation.
  matroskadec: fix stupid typo (!= -> ==)
  build: remove duplicates from order-only directory prerequisite list
  build: rework rules for things in the tools dir
  configure: fix --cpu=host with gcc 4.6
  ARM: use const macro to define constant data in asm
  bitdepth: simplify FUNC/FUNCC macros
  dsputil: remove ff_emulated_edge_mc macro used in one place
  9/10-bit: simplify clipping macros
  matroskadec: reindent
  matroskadec: defer parsing of cues element until we seek.
  lavc: add support for codec-specific defaults.
  lavc: make avcodec_alloc_context3 officially public.
  lavc: remove a half-working attempt at different defaults for audio/video codecs.
  ac3dec: add a drc_scale private option
  lavf: add avformat_find_stream_info()
  lavc: introduce avcodec_open2() as a replacement for avcodec_open().

Conflicts:
	Makefile
	libavcodec/utils.c
	libavformat/avformat.h
	libswscale/swscale_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-11 04:23:25 +02:00
Mans Rullgard
28e1c97916 build: rework rules for things in the tools dir
Declaring tools associated with each library in their respective
makefiles allows these tools to easily depend on the correct
prerequisites and link against the libs they need.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-10 21:13:38 +01:00
Stefano Sabatini
2420763638 graphparser: simplify condition in avfilter_graph_parse()
Since avfilter_graph_parse() creates the "[in]" inout for the first
unlabelled input pad, it is expected that it will create an "[out]"
inout for last unlabelled output pad, even in the case where it cannot
find any open input pad with that name.

This change removes the check on the existence of an open input pad
named "out", so it simplifies the checked condition while implementing
a more intuitive behavior.
2011-07-10 18:00:50 +02:00
Anton Khirnov
a67c061e0f lavf: add avformat_find_stream_info()
It supports passing options to codecs.
2011-07-10 17:07:05 +02:00
Anton Khirnov
0b950fe240 lavc: introduce avcodec_open2() as a replacement for avcodec_open().
Adds support for decoder-private options and makes setting other options
simpler.
2011-07-10 17:06:22 +02:00
Michael Niedermayer
5d1b39f7e7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: clean up library installation rules
  vf_drawtext: Remove some write-only variables.
  libgsm: Drop const qualifier to silence compiler warning.
  docs: Remove needless configure options
  docs: Don't recommend adding --enable-memalign-hack
  libvo-amrwbenc: Add braces to shut up gcc warning.
  adts: Fix PCE copying.

Conflicts:
	configure
	doc/general.texi
	subdir.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-08 01:05:28 +02:00
Diego Biurrun
965fdda015 vf_drawtext: Remove some write-only variables.
libavfilter/vf_drawtext.c:427:22: warning: variable 'dst_pixel' set but not used
libavfilter/vf_drawtext.c:463:22: warning: variable 'dst_pixel' set but not used
2011-07-07 17:32:50 +02:00
Stefano Sabatini
ebd1edf36c avfiltergraph: clarify doxy for avfilter_graph_parse() open_inputs/outputs params
Make it clear that open_inputs/open_outputs are updated only if non-NULL.
2011-07-07 00:37:04 +02:00
Stefano Sabatini
6ce05bc73c graphparser: clarify comments in avfilter_graph_parse() 2011-07-07 00:36:58 +02:00
Stefano Sabatini
df8c675f48 graphparser: fix logic for updating the open_inputs/outputs in avfilter_graph_parse()
Create open_inputs and open_outputs structs if they are not provided by
the user, and free them before exit.

In particular, fix NULL pointer dereference and crash, in case the
passed open_inputs/outputs is NULL and the parsing failed.
2011-07-07 00:36:50 +02:00
Michael Niedermayer
aa61ca0c59 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add some missing mathematics.h #includes for av_rescale().
  opencore-amr: Add missing initializer braces to shut up gcc warning.
  ARM: workaround for bug in GNU assembler
  dv: fix comment wording mistake
  Rename libavcodec/high_bit_depth.h ---> libavcodec/bit_depth_template.c
  dv: fix valgrind use of uninitialised value warnings.
  mxfenc: fix ignored drop flag in binary timecode representation.
  PPC: use Altivec IMDCT only for supported sizes
  dv: fix comment spelling
  configure: simplify -rpath-link linker flag

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-06 01:34:08 +02:00
Diego Biurrun
d3f751e603 Add some missing mathematics.h #includes for av_rescale(). 2011-07-05 20:16:38 +02:00
Nicolas George
e6d88f63a8 libavfilter: add a default to silence a warning. 2011-07-05 08:27:42 +02:00
Michael Niedermayer
5d4fd1d1ad Merge remote-tracking branch 'qatar/master'
* qatar/master: (36 commits)
  ARM: allow unaligned buffer in fixed-point NEON FFT4
  fate: test more FFT etc sizes
  dca: set AVCodecContext frame_size for DTS audio
  YASM: Shut up unused variable compiler warning with --disable-yasm.
  x86_32: Fix build on x86_32 with --disable-yasm.
  iirfilter: add fate test
  doxygen: Add qmul docs.
  ogg: propagate return values and return more meaningful error values
  H.264: fix overreads of qscale_table
  Remove unused static tables and static inline functions.
  eval: clear Parser instances before using
  dct-test: remove 'ref' function pointer from tables
  build: Remove deleted 'check' target from .PHONY list.
  oggdec: Abort Ogg header parsing when encountering a data packet.
  Add LGPL license boilerplate to files lacking it.
  mxfenc: small typo fix
  doxygen: Fix documentation for some VP8 functions.
  sha: use AV_RB32() instead of assuming buffer can be cast to uint32_t*
  des: allow unaligned input and output buffers
  aes: allow unaligned input and output buffers
  ...

Conflicts:
	libavcodec/dct-test.c
	libavcodec/libvpxenc.c
	libavcodec/x86/dsputil_mmx.c
	libavcodec/x86/h264_qpel_mmx.c
	libavfilter/x86/gradfun.c
	libavformat/oggdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-05 02:26:17 +02:00
Stefano Sabatini
80f1cfd09d vf_pad: fix "vsub" variable value computation
It was shifting 2 rather than 1, +10l.
2011-07-04 11:20:00 +02:00
Stefano Sabatini
0bf02fb1ea vf_pad: add support for a "sar" variable
Also add a "dar" alias for "a", for avoiding confusion with sar/dar.
2011-07-04 11:20:00 +02:00
Stefano Sabatini
01151a26c0 vf_scale: add a "sar" variable
Also create a "dar" alias for the "a" variable, for avoiding possible
confusion between dar/sar.
2011-07-04 11:19:46 +02:00
Loren Merritt
082768f0b1 vf_gradfun: relicense x86 asm to LGPL
Actually I gave permission for LGPL long ago, but the original import
failed to update the license header.
2011-07-04 00:01:47 +00:00
Michael Niedermayer
976a8b2179 Merge remote-tracking branch 'qatar/master'
* qatar/master: (40 commits)
  H.264: template left MB handling
  H.264: faster fill_decode_caches
  H.264: faster write_back_*
  H.264: faster fill_filter_caches
  H.264: make filter_mb_fast support the case of unavailable top mb
  Do not include log.h in avutil.h
  Do not include pixfmt.h in avutil.h
  Do not include rational.h in avutil.h
  Do not include mathematics.h in avutil.h
  Do not include intfloat_readwrite.h in avutil.h
  Remove return statements following infinite loops without break
  RTSP: Doxygen comment cleanup
  doxygen: Escape '\' in Doxygen documentation.
  md5: cosmetics
  md5: use AV_WL32 to write result
  md5: add fate test
  md5: include correct headers
  md5: fix test program
  doxygen: Drop array size declarations from Doxygen parameter names.
  doxygen: Fix parameter names to match the function prototypes.
  ...

Conflicts:
	libavcodec/x86/dsputil_mmx.c
	libavformat/flvenc.c
	libavformat/oggenc.c
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-04 00:45:21 +02:00
Mans Rullgard
abc78a5a7c Do not include log.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:07 +01:00
Mans Rullgard
d49ea4afb4 Do not include pixfmt.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:07 +01:00
Mans Rullgard
e91709ca17 Do not include rational.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:06 +01:00
Mans Rullgard
0ebcdf5cda Do not include mathematics.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:06 +01:00
Diego Biurrun
24c9babaaf doxygen: Fix parameter names to match the function prototypes. 2011-07-03 18:30:02 +02:00
Joakim Plate
2a375bb400 Add mode to yadif to enable/disable deinterlacing based on src frame "interlaced" flag
Signed-off-by: Joakim Plate <elupus@ecce.se>
2011-07-03 13:19:44 +02:00
Stefano Sabatini
59bd0fef66 vf_lut: set minimum and maximum alpha value for yuva420p 2011-07-02 15:23:56 +02:00
Stefano Sabatini
2b550beb22 vf_lut: add plane validity check in draw_slice()
The value for inpic->data[plane] with plane >=4 is undefined, and it
will contain in general random data. This change adds a check for
exiting the loop when plane reaches the value 4.

Fix crash (occurring for example with: format=rgba,lut).
2011-07-02 15:21:05 +02:00
Stefano Sabatini
7464a53aaa lavfi: make pix_fmt_is_in() in vf_lut.c an internal function
Also generalize it, making it accept ints rather than pixel formats.
Allow factorization.
2011-07-01 12:14:16 +02:00
Michael Niedermayer
bb9d5171a7 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  swscale: Add Doxygen for hyscale_fast/hScale.
  fate: enable lavfi-pixmt tests on big endian systems
  PPC: swscale: disable altivec functions for unsupported formats
  fate: merge identical pixdesc_be/le tests
  swscale: Add Doxygen for yuv2planar*/yuv2packed* functions.
  build: call texi2pod.pl with full path instead of symlink
  build: include sub-makefiles using full path instead of symlinks
  swscale: update big endian reference values after dff5a835.
  wavpack: skip blocks with no samples
  cosmetics: remove outdated comment that is no longer true
  build: replace some addprefix/addsuffix with substitution refs
  avutil: Remove unused arbitrary precision integer code.
  configure: Drop check for availability of ten assembler operands.
  aacenc: Save channel configuration for later use.
  aacenc: Fix codebook trellising for zeroed bands.
  swscale: change prototypes of scaled YUV output functions.
  swscale: re-add support for non-native endianness.
  swscale: disentangle yuv2rgbX_c_full() into small functions.
  swscale: split yuv2packed[12X]_c() remainders into small functions.
  swscale: split yuv2packedX_altivec in smaller functions.
  ...

Conflicts:
	Makefile
	configure
	libavcodec/x86/dsputil_mmx.c
	libavfilter/Makefile
	libavformat/Makefile
	libavutil/integer.c
	libavutil/integer.h
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/x86/swscale_template.c
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_scale

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-29 05:23:12 +02:00
Mans Rullgard
57b4a3dd2b build: include sub-makefiles using full path instead of symlinks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 18:15:19 +01:00
Stefano Sabatini
cdeb803e2f vf_lut: fix draw_slice() in case of non packed image data for packed RGB
The previous code was erroneously assuming that the linesize was
equivalent to width*pixel_step, which is not always true.
2011-06-27 11:29:34 +02:00
Stefano Sabatini
2f222b9550 lavfi: add testsrc source 2011-06-26 19:49:24 +02:00
Reimar Döffinger
1109680434 Revert "build: Remove redundant config.mak includes from subdirectory Makefiles."
This reverts commit a6213f3dce.
2011-06-26 09:49:36 +02:00
Michael Niedermayer
4ccb7911ba Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: silence some annoying armcc warnings
  ffplay: Remove unused-but-set channels variable from update_sample_display().
  build: Add DEP_LIBS dependency directly to the shared library build rule.
  build: Remove multiple inclusion guards from config.mak.
  build: Remove redundant config.mak includes from subdirectory Makefiles.
  aacenc: Mark psy_3gpp_window() as av_unused.

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-26 02:31:32 +02:00
Stefano Sabatini
5aca97e247 vsink_buffer: add missing description 2011-06-25 22:06:30 +02:00
Diego Biurrun
a6213f3dce build: Remove redundant config.mak includes from subdirectory Makefiles.
Calling Make from subdirectories is not supported and config.mak has
multiple inclusion guards anyway, so the top-level include is enough.
2011-06-25 13:02:51 +02:00
Clément Bœsch
c9584f0c9c vf_mp: do not add duplicated pixel formats.
This avoid a crash with in avfilter_merge_formats() in case one of the
filter formats list has multiple time the same entry.

Thanks to Mina Nagy Zaki for helping figuring out the issue.
2011-06-22 19:05:00 +02:00
Stefano Sabatini
f4228097e4 lavfi: minor style fixes in formats.c 2011-06-22 18:28:28 +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
Justin Ruggles
e6c52cee54 Replace usages of av_get_bits_per_sample_fmt() with av_get_bytes_per_sample().
av_get_bits_per_sample_fmt() is deprecated.
2011-06-20 18:56:06 -04:00
Stefano Sabatini
5a0a6ae639 ocv: replace FF_INTERNAL_MEM_TYPE_MAX_VALUE with SIZE_MAX
Fix compilatin after removal of FF_INTERNAL_MEM_TYPE_MAX_VALUE.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-20 20:54:40 +02:00
Stefano Sabatini
702a62a1c6 drawtext: add braces around initialisers for option defaults
Fix warnings of the type:
vf_drawtext.c:NNN: warning: missing braces around initializer
vf_drawtext.c:NNN: warning: (near initialization for ‘drawtext_options[X].default_val’)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-20 20:54:40 +02:00
Stefano Sabatini
53a715f576 drawtext: reindent after the previous commit
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-20 20:54:40 +02:00
Stefano Sabatini
3fd53defaa drawtext: fix strftime() text expansion
The feature was dropped after the filter was partially rewritten and
recommitted.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-20 20:54:40 +02:00
Mina Nagy Zaki
fd2c0a5db2 lavfi: add layout negotiation fields and helper functions. 2011-06-19 22:58:32 +02:00
Mina Nagy Zaki
527ca3985c lavfi: use int64_t lists in AVFilteFormats
The list type was changed to int64_t to be able to hold
channel layouts.

avfilter_make_format_list() still takes a int32_t array and converts
it to int64_t. A new function, avfilter_make_format64_list, that
takes int64_t arrays has been added.
2011-06-19 22:58:31 +02:00
Stefano Sabatini
8f349b6481 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 *).
2011-06-19 22:58:31 +02:00
Stefano Sabatini
c6e288a7cd lavfi: fix Makefile HEADERS
Add a missing space between vsink_buffer.h and vsrc_buffer.h.
1000l.
2011-06-19 22:58:31 +02:00
Stefano Sabatini
44f669e7bc lavfi: add vsink_buffer, and use it in ff* tools
Also add the public interface libavfilter/vsink_buffer.h.
2011-06-19 19:18:33 +02:00
Stefano Sabatini
e89ba76a59 vsrc_color: use internal timebase
Avoid timescale conversion, simplify.
2011-06-19 19:13:19 +02:00
Stefano Sabatini
15f03725ce lavfi: add negate filter
This filter is a simple wrapper around the LUT filter.
2011-06-19 19:06:55 +02:00
Stefano Sabatini
dd2793c880 lavfi: add LUT (LookUp Table) generic filters 2011-06-19 19:06:35 +02:00
Michael Niedermayer
2905e3ff64 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: add opt_find to AVCodecContext class.
  h264: Complexify frame num gap shortening code
  intreadwrite.h: fix AV_RL32/AV_RB32 signedness.
  Fix decoding of mpegts streams with h264 video that does *NOT* have b frames
  Add minor bumps and APIChanges entries for lavf private options.
  ffmpeg: deprecate -vc and -tvstd
  ffmpeg: use new avformat_open_* API.
  ffserver: use new avformat_open_* API.
  ffprobe: use new avformat_open_* API.
  ffplay: use new avformat_open_* API.
  cmdutils: add opt_default2().
  dict: add AV_DICT_APPEND flag.
  lavf: add avformat_write_header() as a replacement for av_write_header().
  Deprecate av_open_input_* and remove their uses.
  lavf: add avformat_open_input() as a replacement for av_open_input_*
  AVOptions: add av_opt_find() as a replacement for av_find_opt.
  AVOptions: add av_opt_set_dict() mapping a dictionary struct to a context.
  ffmpeg: don't abuse a global for passing frame size from input to output
  ffmpeg: don't abuse a global for passing pixel format from input to output
  ffmpeg: initialise encoders earlier.

Conflicts:
	cmdutils.c
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	ffprobe.c
	libavcodec/h264.c
	libavformat/avformat.h
	libavformat/utils.c
	libavformat/version.h
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-18 05:10:38 +02:00
Stefano Sabatini
0c6cf3fa7c vsrc_color: set output pos values to -1
-1 is more correct than 0, as the position in the file is undefined.
2011-06-18 02:09:07 +02:00
Stefano Sabatini
bb3a2b723a vsrc_color: add @file doxy
Also remove outdated reference to color in vf_pad.c.
2011-06-18 02:09:07 +02:00
Stefano Sabatini
8055433b49 graphparser: add missing NULL check in avfilter_graph_parse()
Fix a crash occurring when open_inputs is NULL and *open_inputs is
checked, the crash was introduced by the recent avfilter_graph_parse()
syntax change.

In particular, fix graph2dot crash.
2011-06-18 02:08:38 +02:00
Anton Khirnov
603b8bc2a1 Deprecate av_open_input_* and remove their uses.
Deprecate the last remaining member of AVFormatParameters.
2011-06-16 20:24:56 +02:00
Michael Niedermayer
9e2f448d68 vf_mp: Fix large memleak.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-15 01:36:12 +02:00
Stefano Sabatini
3fe6bbd5dc libavfilter: implement avfilter_fill_frame_from_video_buffer_ref() 2011-06-12 22:46:02 +02:00
Stefano Sabatini
c535494268 avfiltergraph: make the AVFilterInOut alloc/free API public
This is required for letting applications to create and destroy
AVFilterInOut structs in a convenient way.
2011-06-12 22:46:02 +02:00
Stefano Sabatini
6119b23a36 avfiltergraph: change the syntax of avfilter_graph_parse()
Make it returns the list of open inputs and outputs, so it can be
reused by applications.

Breaks API/ABI.
2011-06-12 22:46:02 +02:00
Stefano Sabatini
86909dd5f7 graphparser: prefer void * over AVClass * for log contexts 2011-06-12 22:46:02 +02:00
Stefano Sabatini
d468ed0321 lavfi: fix signature for avfilter_graph_parse() and avfilter_graph_config()
Require "void *" rather than "AVClass *" for the log context type.
2011-06-11 12:23:03 +02:00
Stefano Sabatini
f5901fd392 avfiltergraph: use meaningful error codes 2011-06-11 11:55:54 +02:00
Mina Nagy Zaki
79a0ec1af4 lavfi: avfilter_merge_formats: handle case where inputs are same
This fixes a double-free crash if lists are the same due to the two
merge_ref() calls at the end of the (useless) merging that happens.
2011-06-10 13:04:47 +02:00
Stefano Sabatini
989184fea4 lavfi: use avfilter_get_audio_buffer_ref_from_arrays() in defaults.c
Use avfilter_get_audio_buffer_ref_from_arrays() in
avfilter_default_get_audio_buffer(), simplify.
2011-06-10 13:02:13 +02:00
Stefano Sabatini
c3819600e2 lavfi: implement avfilter_get_audio_buffer_ref_from_arrays() 2011-06-10 12:47:33 +02:00
Mina Nagy Zaki
47d2ca3205 lavfi: handle NULL lists in avfilter_make_format_list 2011-06-08 18:50:07 +02:00
Stefano Sabatini
ef28c7b3a4 lavfi: use av_samples_alloc() in avfilter_default_get_audio_buffer() 2011-06-06 10:14:08 +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
Stefano Sabatini
27bcf55f45 vsrc_buffer: add flags param to av_vsrc_buffer_add_video_buffer_ref
The new flags parameter allows to specify if the video ref to add
should overwrite the cache, if the flag is not set vsrc_buffer will
complain and abort; otherwise it will clean the already cached video
ref before to overwrite it, thus avoiding a leak.
2011-06-06 01:35:27 +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
Mans Rullgard
e65ab9d94f Remove unused variables 2011-06-02 20:06:00 +01:00
Stefano Sabatini
9e66b64c36 vsrc_buffer: propagate error code in av_vsrc_buffer_add_frame()
Propagate av_vsrc_buffer_add_video_buffer_ref() error code rather than
return 0.
2011-06-02 18:48:28 +02:00
Stefano Sabatini
665e608c8d lavfi: reindent after the previous commit 2011-06-02 18:48:25 +02:00
Stefano Sabatini
6f1dd6f45a lavfi: add braces around the block of an if() expression in avfilter_default_get_video_buffer
Clarify code layout.
2011-06-02 18:47:48 +02:00
Stefano Sabatini
0ff5cbedd2 lavfi: clarify the context of a comment in avfilter_default_get_video_buffer()
The comment is meant to be about the align parameter.
2011-06-02 18:24:50 +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
Reimar Döffinger
58fd70b04d Port remove of get_sws_cpuflags from MPlayer's libmpcodecs. 2011-06-02 08:38:09 +02:00
Reimar Döffinger
3379531c40 Port recent changes to MPlayer libmpcodecs.
Also include an older fix for vf_smartblur which was essentially
broken due to reading the threshold value wrongly.
2011-06-02 08:38:09 +02:00
Reimar Döffinger
2a30df09fd Replace non-existent HAVE_SSE2 with HAVE_SSE.
Since this is only a compilation check (the actual function used is
selected at runtime) and HAVE_SSE indicates that we can also compile
SSE2 code, this is correct.
2011-06-02 08:38:08 +02:00
Michael Niedermayer
cd8cb54990 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: ac3dsp: optimised update_bap_counts()
  mpegaudiodec: Fix av_dlog() invocation.
  h264/10bit: add HAVE_ALIGNED_STACK checks.
  Update 8-bit H.264 IDCT function names to reflect bit-depth.
  Add IDCT functions for 10-bit H.264.
  mpegaudioenc: Fix broken av_dlog statement.
  Employ correct printf format specifiers, mostly in debug output.
  ARM: fix MUL64 inline asm for pre-armv6

Conflicts:
	libavcodec/mpegaudioenc.c
	libavformat/ape.c
	libavformat/mxfdec.c
	libavformat/r3d.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-02 05:12:10 +02:00
Reimar Döffinger
bf19c87101 Fix type of out[] variable, it should not be const.
Fixes compiler warning about incompatible types in sws_scale call.
2011-06-01 20:26:54 +02:00
Diego Biurrun
b0a4e5f9e7 Employ correct printf format specifiers, mostly in debug output. 2011-05-31 23:45:14 +02:00
Diego Biurrun
5ac4952a58 vf_drawtext: Replace FFmpeg by Libav in license boilerplate. 2011-05-31 21:15:49 +02:00
Reimar Döffinger
a52f598d63 Port libmpcodec fixes from MPlayer. 2011-05-31 07:40:20 +02:00
Michael Niedermayer
5a35cef4b1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: enable UAL syntax in asm.S
  v4l2: don't leak video standard string on error.
  swscale: Remove disabled code.
  avfilter: Surround function only used in debug mode by appropriate #ifdef.
  vf_crop: Replace #ifdef DEBUG + av_log() by av_dlog().
  build: remove BUILD_ROOT variable
  vp8: use av_clip_uintp2() where possible

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-30 01:29:11 +02:00
Clément Bœsch
adba9c6352 Fix various unused variable warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-30 00:24:01 +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
Diego Biurrun
2146f4928a vf_crop: Replace #ifdef DEBUG + av_log() by av_dlog(). 2011-05-29 13:43:02 +02:00
Stefano Sabatini
07586b68a8 lavfi: add select filter
Address trac issue #92.
2011-05-25 12:54:07 +02:00
Stefano Sabatini
cf06e3e4dd vsrc_buffer: return an error code if no frames are available
Also decrease the log level of the corresponding message to WARNING,
since the error is not fatal.
2011-05-25 12:42:19 +02:00
Stefano Sabatini
ecf72542fa vsrc_buffer: remove duplicated file description 2011-05-25 09:37:25 +02:00
Michael Niedermayer
034fc7bf12 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  configure: enable memalign_hack automatically when needed
  swscale: unbreak the build on non-x86 systems.
  swscale: remove if(bitexact) branch from functions.
  swscale: remove if(canMMX2BeUsed) conditional.
  swscale: remove swScale_{c,MMX,MMX2} duplication.
  swscale: use emms_c().
  Move emms_c() from libavcodec to libavutil.
  tiff: set palette in the context when specified in TIFF_PAL tag
  rtsp: use strtoul to parse rtptime and seq values.
  pgssubdec: fix incorrect colors.
  dvdsubdec: fix incorrect colors.
  ape: Allow demuxing of files with metadata tags.
  swscale: remove dead macro WRITEBGR24OLD.
  swscale: remove AMD3DNOW "optimizations".
  swscale: remove duplicate code in ppc/ subdirectory.
  swscale: remove duplicated x86/ functions.
  swscale: force --enable-runtime-cpudetect and remove SWS_CPU_CAPS_*.
  vsrc_buffer.h: add file doxy
  vsrc_buffer: tweak error message in init()
  msmpeg4: reindent.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 06:32:45 +02:00
Stefano Sabatini
75abcdb391 vsrc_buffer.h: add file doxy
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-24 14:22:51 +02:00
Stefano Sabatini
f7053dc41a vsrc_buffer: tweak error message in init()
Change:
Expected 7 arguments, but only %d found in '%s'\n
to:
Expected 7 arguments, but %d found in '%s'\n

as the user may provide more than 7 arguments, in that case the error
is not misleading.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-24 14:21:20 +02:00
Stefano Sabatini
83db719777 lavfi: make vsrc_buffer.h header public
Address trac issue #33.
2011-05-22 19:30:47 +02:00
Michael Niedermayer
bf8bb94322 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ffmpeg: get rid of the -vglobal option.
  dct32: Add AVX implementation of 32-point DCT
  dct32: Change pass 6 permutation to allow for AVX implementation
  dct32: port SSE 32-point DCT to YASM
  multiple inclusion guard cleanup
  avio: document buffer must created with av_malloc() and friends
  avio: check AVIOContext malloc failure
  swscale: point out an alternative to sws_getContext
  svq3: Do initialization after parsing the extradata
  add changelog entries for 0.7_beta2
  mp3lame: add #include required for AV_RB32 macro.

Conflicts:
	Changelog
	libavcodec/svq3.c
	libavcodec/x86/dct32_sse.c
	libavfilter/vsrc_buffer.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-22 04:53:19 +02:00
Stefano Sabatini
af2ed4b748 lavfi: bump minor and add changelog entry after the split filter addition 2011-05-22 02:43:48 +02:00
Stefano Sabatini
6f5a145be1 vf_split: give more meaningful names to the output pads
Rename "default" -> "output1", "default2" -> output2.
2011-05-22 02:43:47 +02:00
Stefano Sabatini
de1100a00a vf_split: define draw_slice() before end_frame()
Improve logical coherence, fix nit.
2011-05-22 02:43:46 +02:00
Stefano Sabatini
88fc2e411e vf_split: add description 2011-05-22 02:43:46 +02:00
Stefano Sabatini
7d5297b343 vf_split: fix various nits 2011-05-22 02:43:46 +02:00
Bobby Bingham
a38a00eddf libavfilter: vf_split from soc.
Commited by michael, for detailed authorship see soc repo
2011-05-21 17:23:29 +02:00
Diego Biurrun
153382e1b6 multiple inclusion guard cleanup
Add missing multiple inclusion guards; clean up #endif comments;
add missing library prefixes; keep guard names consistent.
2011-05-21 13:48:10 +02:00
Stefano Sabatini
f1b3f33d48 vf_libopencv: prefer opencv/cxcore.h over cxtypes.h
Require the presence of opencv/cxcore.h in place of opencv/cxtypes.h,
which has been removed. Fix compilation with libopencv > 2.1.0.

Fix trac issue #221.
2011-05-20 11:54:53 +02:00
Stefano Sabatini
c78a85adf4 vsrc_buffer: document av_vsrc_buffer_add_video_buffer_ref() 2011-05-19 23:15:34 +02:00
Stefano Sabatini
c000a9f783 vsrc_buffer: add av_vsrc_buffer_add_frame()
The new function is a wrapper around
av_vsrc_buffer_add_video_buffer_ref(), and allows to simplify the act
of pushing AVFrame data to the source buffer.
2011-05-19 23:15:34 +02:00
Stefano Sabatini
50764e19a8 vsrc_buffer: make the source accept sws_param in init
Avoid the need of two distinct av_vsrc_add_video_buffer_ref*
functions. Simplify the interface.
2011-05-19 23:15:33 +02:00
Stefano Sabatini
509b32cf5d vsrc_buffer: propagate avfilter_open() error code 2011-05-19 23:15:33 +02:00
Stefano Sabatini
3799805e56 vsrc_buffer: fix style 2011-05-19 23:15:33 +02:00
Stefano Sabatini
9fdf77217b lavfi: add avfilter_get_video_buffer_ref_from_frame to avcodec.h
Simplify passing AVFrame data to av_vsrc_buffer_add_video_buffer_ref().
2011-05-19 23:15:33 +02:00
Stefano Sabatini
6070b7e1c5 vsrc_buffer: remove dependency on AVFrame
Rename av_vsrc_buffer_add_frame to
av_vsrc_buffer_add_video_buffer_ref(), and change its inteface to make
it accept in input an AVFilterBufferRef rather than an AVFrame.

This way the interface can be used without requiring the
inclusion/installation of libavcodec headers.
2011-05-19 23:15:33 +02:00
Michael Niedermayer
e6e7ba0ce3 Add some forgotten const to function arguments in libavfilter & libavformat.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-17 03:05:36 +02:00
Stefano Sabatini
d8c7a21602 drawtext: specify union type for setting default options
Fix warnings of the type:
vf_drawtext.c:NNN: warning: missing braces around initializer
vf_drawtext.c:NNN: warning: (near initialization for ‘drawtext_options[X].default_val’)
2011-05-16 23:50:43 +02:00
Stefano Sabatini
e8ea9c2179 drawtext: reindent after the previous commit 2011-05-16 23:50:36 +02:00
Stefano Sabatini
ce207e050e drawtext: fix strftime() text expansion
The feature was dropped after the filter was partially rewritten and
recommitted.

Fix issue #207.
2011-05-16 23:50:29 +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
Stefano Sabatini
a05d02079e showinfo: replace "CRC" by "checksum"
Indeed the Adler-32 checksum, which is computed by showinfo, is not
cyclic, so using the term "CRC" is wrong/confusing.
2011-05-15 12:28:53 +02:00
Stefano Sabatini
5a2ea3cffb showinfo: fix vertical align nit 2011-05-15 12:27:28 +02:00
Stefano Sabatini
bb82ea797f showinfo: fix computation of Adler checksum
Previously the code was computing the checksum only for the first line
of each plane.
2011-05-15 12:27:28 +02:00
Anton Khirnov
b66752790a AVOptions: make default_val a union, as proposed in AVOption2.
This breaks API and ABI.
2011-05-10 20:22:06 +02:00
Michael Niedermayer
6841c8c579 Merge remote branch 'qatar/master'
* qatar/master:
  log: Fix an oob array read.
  cosmetics: trim trailing whitespace in postproc
  Ban strncpy() it's too easy to misuse.
  psymodel: Remove wrapper functions.
  aacenc: Replace loop counters in aac_encode_frame() with more descriptive 'ch' and 'w'.
  regtest: remove redundant flags in jpg test
  regtest: use run_ffmpeg in do_image_formats
  regtest: simplify encoding functions
  ffmpeg.c: check for interlaced flag in the correct place.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-09 04:50:56 +02:00
Michael Niedermayer
6d6b0c96fd Merge remote branch 'qatar/master'
* qatar/master:
  drawtext: add documentation for the shadow parameters
  drawtext: add shadow support.
  drawtext: factor draw_glyphs.
  drawtext: fix and optimize yuv blend.
  drawtext: get rid of divisions in the inner loop.
  drawtext: simplify chroma blend and fix chroma alpha.
  lavfi: Port drawtext filter by Hemanth from the libavfilter soc repo

Conflicts:
	configure
	libavfilter/avfilter.h
	libavfilter/vf_drawtext.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-08 03:29:51 +02:00
Stefano Sabatini
ea7f73c52e vsrc_buffer: during init, print information about timebase and sample aspect ratio 2011-05-07 12:48:19 +02:00
Stefano Sabatini
64c06615d2 vsrc_buffer: simplify av_vsrc_buffer_add_frame*() interface
Now that pix_fmt, width, and height are directly embedded in the AVFrame,
there is no need to pass these values as separate arguments.
2011-05-07 12:03:59 +02:00
Stefano Sabatini
566666caf3 lavfi: add libavfilter/avcodec.h and avfilter_copy_frame_props()
avfilter_copy_frame_props() avoids code duplication and increases
robustness.

The added files libavfilter/avcodec.[ch] are used for containing
utilities useful for gluing togheter libavfilter and libavcodec.
2011-05-07 12:03:49 +02:00
Stefano Sabatini
18ded93ab3 lavc: add format field to AVFrame
The format is a per-frame property, having it in AVFrame simplify the
operation of extraction of that information, since avoids the need to
access the codec/stream context.
2011-05-07 11:45:37 +02:00
Stefano Sabatini
22333a6b19 lavc: add width and height fields to AVFrame
width and height are per-frame properties, setting these values in
AVFrame simplify the operation of extraction of that information,
since avoids the need to check the codec/stream context.
2011-05-07 11:45:30 +02:00
Michael Niedermayer
c5420f100f drawtext: add shadow support.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:21:56 +02:00
Michael Niedermayer
e73127a443 drawtext: factor draw_glyphs.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:21:56 +02:00
Michael Niedermayer
a5b81c317e drawtext: fix and optimize yuv blend.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:21:53 +02:00
Michael Niedermayer
3953a88014 drawtext: get rid of divisions in the inner loop.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:18:16 +02:00
Michael Niedermayer
e74bf3f368 drawtext: simplify chroma blend and fix chroma alpha.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:18:16 +02:00
Stefano Sabatini
a5b64584f3 lavfi: Port drawtext filter by Hemanth from the libavfilter soc repo
With the following additions:
* support to anti-aliased glyph rendering
* support to UTF-8 text and Unicode chars rendering
* support for RGB packed formats
* fix minor errors and typos in the filter description
* extend/clarify examples in the filter description

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:17:40 +02: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
21d84246d5 avfilter: Fix ticket82 / fix initial buffer values.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-07 00:01:33 +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
f97905e61d scale: fix leak occurring when a scale filter is reconfigured
This currently only occurrs in vsrc_buffer in case of mid-stream
size/format change.

Fix trac issue #124.
2011-05-02 16:46:24 +02:00
Stefano Sabatini
0f1ef8a316 vsrc_buffer: improve reporting in case of format/size change 2011-05-02 16:46:15 +02: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
77e9dee8ae lavc: add a sample_aspect_ratio field to AVFrame
The sample aspect ratio is a per-frame property, so it makes sense to
define it in AVFrame rather than in the codec/stream context.
Simplify application-level sample aspect ratio information extraction,
and allow further simplifications.
2011-05-01 13:10:06 +02:00
Stefano Sabatini
1ba5727242 lavc: add a pkt_pos field to AVFrame
This is similar to what was done with pkt_pts. This simplifies the
operation of extracting the pos information from the AVPacket, and
allows further simplifications.
2011-05-01 13:09:58 +02:00
Michael Niedermayer
ffb5a0d533 Merge commit '85770f2a2651497861ed938efcd0df3696ff5e45'
* commit '85770f2a2651497861ed938efcd0df3696ff5e45':
  AVOptions: make default_val a union, as proposed in AVOption2.
  Move ff_dynarray_add to lavu and make it public.
  lavf: remove duplicate assignment in avformat_alloc_context.
  lavf: use designated initializers for AVClasses.
  options: simplify av_find_opt by using av_next_option.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 00:26:05 +02:00
Anton Khirnov
85770f2a26 AVOptions: make default_val a union, as proposed in AVOption2.
This breaks API and ABI.
2011-04-30 08:34:16 +02:00
Diego Biurrun
a3b7dabb5b vf_fieldorder: Replace FFmpeg by Libav in license boilerplate. 2011-04-29 15:00:08 +02:00
Peter Ross
c90626b2ea hflip: make the filter accept PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-28 07:25:27 +02:00
Peter Ross
a1f4d07563 crop: make the filter accept PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-28 07:25:27 +02:00
Stefano Sabatini
31d8467d82 lavfi: add showinfo filter 2011-04-27 11:12:45 +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
Michael Niedermayer
d7e5aebae7 Merge remote branch 'qatar/master'
* qatar/master: (23 commits)
  ac3enc: correct the flipped sign in the ac3_fixed encoder
  Eliminate pointless '#if 1' statements without matching '#else'.
  Add AVX FFT implementation.
  Increase alignment of av_malloc() as needed by AVX ASM.
  Update x86inc.asm from x264 to allow AVX emulation using SSE and MMX.
  mjpeg: Detect overreads in mjpeg_decode_scan() and error out.
  documentation: extend documentation for ffmpeg -aspect option
  APIChanges: update commit hashes for recent additions.
  lavc: deprecate FF_*_TYPE macros in favor of AV_PICTURE_TYPE_* enums
  aac: add headers needed for log2f()
  lavc: remove FF_API_MB_Q cruft
  lavc: remove FF_API_RATE_EMU cruft
  lavc: remove FF_API_HURRY_UP cruft
  pad: make the filter parametric
  vsrc_movie: add key_frame and pict_type.
  vsrc_movie: fix leak in request_frame()
  lavfi: add key_frame and pict_type to AVFilterBufferRefVideo.
  vsrc_buffer: add sample_aspect_ratio fields to arguments.
  lavfi: add fieldorder filter
  scale: make the filter parametric
  ...

Conflicts:
	Changelog
	doc/filters.texi
	ffmpeg.c
	libavcodec/ac3dec.h
	libavcodec/dsputil.c
	libavfilter/avfilter.h
	libavfilter/vf_scale.c
	libavfilter/vf_yadif.c
	libavfilter/vsrc_buffer.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-27 03:51:04 +02:00
Michael Niedermayer
075933a068 vsrc_buffer: 10l mixed up input & output sizes. (funnily this worked 99% of the time) Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 2011-04-26 23:55:04 +02:00
Michael Niedermayer
d84f191d37 vsrc_buffer: Reinit scale filter when an existing filter is used.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-26 18:18:02 +02:00
Michael Niedermayer
dc1de56948 vsrc_buffer: set output timebase when output equalization is done
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-26 18:17:20 +02:00
Michael Niedermayer
a38cdfde52 vsrc_buffer: Set output size
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-26 18:16:48 +02:00
Michael Niedermayer
ad0193bf9c vsrc_buffer: fix NULL dereference
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-26 18:15:52 +02:00
Stefano Sabatini
bebe72f4a0 lavc: deprecate FF_*_TYPE macros in favor of AV_PICTURE_TYPE_* enums
Also deprecate av_get_pict_type_char() in favor of
av_get_picture_type_char().

The new enum and av_get_picture_type_char() are defined in libavutil.
This allows the use in libavfilter without the need to link against
libavcodec.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 08:38:57 +02:00
Stefano Sabatini
73a4f7c21b pad: make the filter parametric
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:43:34 +02:00
royger
0bbb28c75b vsrc_movie: add key_frame and pict_type.
Signed-off-by: Roger Pau Monné <roger.pau@entel.upc.edu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:43:16 +02:00
Stefano Sabatini
5eb901cfec vsrc_movie: fix leak in request_frame()
Also set movie->picref to NULL, in order to avoid a crash in uninit()
when movie->picref is unreffed again and it was already freed.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:42:56 +02:00
Roger Pau Monné
10d39405fa lavfi: add key_frame and pict_type to AVFilterBufferRefVideo.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:42:13 +02:00
Michael Niedermayer
7a11c82fb7 vsrc_buffer: add sample_aspect_ratio fields to arguments.
This fixes aspect handling in ffmpeg.

This is based on a patch by Baptiste.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:38:24 +02:00
Mark Himsley
2f84bb4236 lavfi: add fieldorder filter
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:37:41 +02:00
Stefano Sabatini
68e23c083a scale: make the filter parametric
Make the filter accept parametric expressions for the output video
size.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:29:29 +02:00
James Darnley
b137bf7df3 yadif: support 16-bit
Fixes by Michael Niedermayer <michaelni@gmx.at>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:21:40 +02:00
James Darnley
88312a4de3 yadif: support more than yuv420p.
and correctly support grey8

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:15:54 +02:00
Michael Niedermayer
d85e18e6e3 yadif: Fix assert() failure
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:15:10 +02:00
Stefano Sabatini
f80b381bfd graphparser: add a NULL check on the argument passed to strstr
Fix crash in create_filter() which occurrs if a scale filter with no
args is provided.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-25 22:45:44 +02:00
Stefano Sabatini
c61bfc113a setdar: prefer "sar" over "par" in log info message
This is more consistent with the terminology adopted by the aspect
filter names.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-25 22:45:44 +02:00
Mark Himsley
b04d1abb40 fade: fix draw_slice() check on fade->factor value
draw_slice() checks that the fade factor is < 65536 and only
calculates the fade if so. But the fade factor is clipped in
end_frame() by av_clip_uint16() to 65535, so the fade is calculated
for every frame.  This patch alters the check so that it compares with
< 65535 (UINT16_MAX).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-25 22:45:44 +02:00
Mark Himsley
9026b27e84 fade: make draw_slice() chroma check against planes 1 and 2
draw_slice() checks that planes 0 and 1 of AVFilterBufferRef's data
are not NULL before manipulating planes 1 and 2. This patch makes the
check against planes 1 and 2. More senseful and possibly more robust.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-25 22:45:44 +02:00
Stefano Sabatini
3eb15d9812 mp: remove unused variable outlink in end_frame
Fix warning:
vf_mp.c: In function ‘end_frame’:
vf_mp.c:870: warning: unused variable ‘outlink’

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-21 18:46:03 +02:00
Stefano Sabatini
e40cfb1463 mp: remove use of deprecated old eval API
The old API was deprecated and will be possibly removed, fix warnings
in libavfilter/libmpcodecs/vf_geq.c and libavfilter/libmpcodecs/vf_qp.c.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-21 18:45:56 +02:00
Stefano Sabatini
6d6351483f ocv: replace FF_INTERNAL_MEM_TYPE_MAX_VALUE with SIZE_MAX
Fix compilatin after removal of FF_INTERNAL_MEM_TYPE_MAX_VALUE.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-21 10:33:03 +02:00
Michael Niedermayer
14e3b120ad Reduce picture size for yadif.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-20 17:38:19 +02:00
Michael Niedermayer
efb5fa79f5 Merge remote branch 'qatar/master'
* qatar/master: (37 commits)
  In avcodec_open(), set return code to an error value only when an error occurs instead of unconditionally at the start of the function.
  lavc: remove reference to opt.h from Makefile.
  prefer avio_check() over url_exist()
  avio: remove AVIO_* access symbols in favor of new AVIO_FLAG_* symbols
  lavu: remove misc disabled cruft
  lavu: remove FF_API_OLD_IMAGE_NAMES cruft
NOT PULLED  lavu: remove FF_API_OLD_EVAL_NAMES cruft
  lavc: remove misc disabled cruft.
  lavc: remove the FF_API_INOFFICIAL cruft.
  lavc: remove the FF_API_SET_STRING_OLD cruft.
  lavc: remove the FF_API_USE_LPC cruft.
  lavc: remove the FF_API_SUBTITLE_OLD cruft.
  lavc: remove the FF_API_VIDEO_OLD cruft.
  lavc: remove the FF_API_AUDIO_OLD cruft.
  lavc: remove the FF_API_OPT_SHOW cruft.
  lavc: remove the FF_API_MM_FLAGS cruft.
  lavf: remove misc disabled cruft.
  lavf: remove FF_API_INDEX_BUILT cruft
  lavf: remove FF_API_URL_CLASS cruft.
  lavf: remove FF_API_SYMVER cruft
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-20 04:48:23 +02:00
Stefano Sabatini
484a330890 pad: make the filter parametric
Address trac issue #61.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-19 15:28:01 +02:00
royger
77f6b4d58e Added key_frame and pict_type to vsrc_movie
Signed-off-by: Roger Pau Monné <roger.pau@entel.upc.edu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-18 20:40:15 +02:00
Anton Khirnov
139f3ac42d Bump major versions of all libraries.
They've accumulated enough new APIs and corresponding deprecated cruft.

This breaks API and ABI.
2011-04-18 20:19:47 +02:00
Stefano Sabatini
dc8e1b75e7 vsrc_movie: fix leak in request_frame()
Also set movie->picref to NULL, in order to avoid a crash in uninit()
when movie->picref is unreffed again and it was already freed.

Fix trac issue #66.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-18 19:25:03 +02:00
Michael Niedermayer
2d2b5a1421 10l, commit that should have been stashed into the merge.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-17 23:59:00 +02:00
Michael Niedermayer
c40798441f Merge remote branch 'qatar/master'
* qatar/master:
  ac3dec: fix processing of delta bit allocation information.
  vc1: fix fate-vc1 after previous commit.
  wmv3dec: fix playback of complex WMV3 files using simple_idct.
  make av_dup_packet() more cautious on allocation failures
  make containers pass palette change in AVPacket
  introduce side information for AVPacket

Politic commits that have not been pulled:
  Update regtest checksums after revision 6001dad.
  Replace more FFmpeg references by Libav.
  Replace references to ffmpeg-devel with libav-devel; fix roundup URL.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-17 23:43:54 +02:00
Diego Biurrun
6001dad6e2 Replace more FFmpeg references by Libav. 2011-04-17 19:31:49 +02:00
Stefano Sabatini
c967860081 scale: set evaluated value for the "out_w" and "out_h" constants
The constant values were never set, thus the evaluation of expressions
referencing those constants were resulting in an error.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-17 17:33:00 +02:00
Stefano Sabatini
e93d3334a9 scale: fix computation for the "hsub" and "vsub" constants
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-17 17:32:54 +02:00
Roger Pau Monné
09a1416db7 Add key_frame and pict_type to AVFilterBufferRefVideo. 2011-04-16 10:09:15 +02:00
Stefano Sabatini
b52a65ccc8 vsrc_buffer.h: add file doxy
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-11 11:29:35 +02:00
Stefano Sabatini
e601ff19b4 vsrc_buffer.h: add multiple inclusion guards
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-11 11:28:24 +02:00
Stefano Sabatini
f763a7c669 vsrc_buffer: tweak error message in init()
Change:
Expected 7 arguments, but only %d found in '%s'\n
to:
Expected 7 arguments, but %d found in '%s'\n

as the user may provide more than 7 arguments, in that case the error
is not misleading.
2011-04-11 11:19:31 +02:00
Mark Himsley
aa0c515a3c lavfi: add fieldorder filter
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-11 00:14:21 +02:00
Michael Niedermayer
4b9c03b7f0 Align stack variables manually in yadif x86 code, should fix ticket25
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 01:49:06 +02:00
Stefano Sabatini
d496d33d26 scale: make the filter parametric
Make the filter accept parametric expressions for the output video
size.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-05 15:38:34 +02:00
Michael Niedermayer
eb79c528d8 Update yadif copyright header
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-05 03:21:36 +02:00
James Darnley
de0f445b5c Factorise the C filtering in yadif 2011-04-05 03:21:36 +02:00
Michael Niedermayer
2657fd0cd4 Yadif fixes that where missing from the patch
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-05 03:21:36 +02:00
James Darnley
457be6962b Support 16-bit in yadif 2011-04-05 03:21:36 +02:00
James Darnley
257ac5f1d6 support more than yuv420p in yadif
(and correctly support grey8)
2011-04-05 03:21:36 +02:00
Michael Niedermayer
2cae9809e2 Merge remote branch 'qatar/master'
* qatar/master:
  fate: fix partial run when no samples path is specified
  ARM: NEON fixed-point forward MDCT
  ARM: NEON fixed-point FFT
  lavf: bump minor version and add an APIChanges entry for avio changes
  avio: simplify url_open_dyn_buf_internal by using avio_alloc_context()
  avio: make url_fdopen internal.
  avio: make url_open_dyn_packet_buf internal.
  avio: avio_ prefix for url_close_dyn_buf
  avio: avio_ prefix for url_open_dyn_buf
  avio: introduce an AVIOContext.seekable field
  ac3enc: use generic fixed-point mdct
  lavfi: add fade filter
  Change yadif to not use out of picture lines.
  lavc: deprecate AVCodecContext.antialias_algo
  lavc: mark mb_qmin/mb_qmax for removal on next major bump.

Conflicts:
	doc/filters.texi
	libavcodec/ac3enc_fixed.h
	libavcodec/ac3enc_float.h
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/vf_fade.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-04 02:15:12 +02:00
Michael Niedermayer
7d948dc424 Support changing pixel formats on avfilter input.
Fix issue2217
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-03 16:40:12 +02:00
Michael Niedermayer
bbd1c43fa3 Dont leak sws contexts.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-03 16:40:12 +02:00
Brandon Mintern
aadfc9ee74 lavfi: add fade filter
Port fade filter from libavfilter soc repo, with minor fixes by
Stefano.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-03 08:47:16 +02:00
Michael Niedermayer
233ed6b314 Change yadif to not use out of picture lines.
Fixes issue2272.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-03 08:46:19 +02:00
Michael Niedermayer
679191a5df yadif:Fix assert() failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-02 20:27:07 +02:00
Stefano Sabatini
0fff764bdb drawtext: allow negative shadow offset values 2011-04-02 11:48:01 +02:00
Stefano Sabatini
2f86e7bd12 graphparser: add a NULL check on the argument passed to strstr
Fix crash in create_filter() which occurrs if a scale filter with no
args is provided.
2011-03-30 22:16:08 +02:00
Stefano Sabatini
c50998675d mp: extend syntax, make it accept mp=filter=params
Make the mp wrapper accept the syntax mp=filter=params as alternative
to mp=filter:params. The alternative syntax is sligthly more readable
and should simplify copy&paste of MPlayer filter strings to the mp
filter.
2011-03-28 22:50:09 +02:00
Michael Niedermayer
57e2ded423 Implement interlaced scaling.
Fixes issue2632 if interl=1 is used or the automatic interlace detection is enabled
and works. This has the advantage compared to the patch in issue2632 that it causes
no speed loss and it also works when scaling is used. The disadvantage is that
interlacing autodetection does not yet work very well it seems.
This is the same method mplayer uses

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-28 01:45:11 +02:00
Stefano Sabatini
efc8c709c9 drawtext: draw glyphs for the strftime()-expanded text
In draw_glyphs(), draw glyphs in dtext->expanded_text rather than in
dtext->text. Fix crash if a strftime() sequence is used.
2011-03-27 19:00:03 +02:00
Stefano Sabatini
3ea031b3f2 setdar: prefer "sar" over "par" in log info message
This is more consistent with the terminology adopted by the aspect
filter names.
2011-03-27 16:27:05 +02:00
Peter Ross
f5607c8361 Make the hflip filter accept PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats 2011-03-26 13:24:41 +11:00
Peter Ross
af55573379 Make the crop filter accept PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats 2011-03-26 13:24:36 +11:00
Reimar Döffinger
0bfe349d4a Update to latest MPlayer version.
Avoids warnings due to pointlessly casting away const.
2011-03-25 19:05:02 +01: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
Mark Himsley
19d82cb14c fade: fix draw_slice() check on fade->factor value
draw_slice() checks that the fade factor is < 65536 and only
calculates the fade if so. But the fade factor is clipped in
end_frame() by av_clip_uint16() to 65535, so the fade is calculated
for every frame.  This patch alters the check so that it compares with
< 65535 (UINT16_MAX).
2011-03-18 23:25:33 +01:00
Mark Himsley
1527e689cf fade: make draw_slice() chroma check against planes 1 and 2
draw_slice() checks that planes 0 and 1 of AVFilterBufferRef's data
are not NULL before manipulating planes 1 and 2. This patch makes the
check against planes 1 and 2. More senseful and possibly more robust.
2011-03-18 23:25:33 +01:00
j@v2v.cc
3660b5bca9 remove definition of swab
right now swab is defined in libavfilter/libmpcodecs/mpbswap.h
this breaks mingw32 cross compiles. since it its not used, it should be
removed. alternatively swab has to be added to HAVE_LIST in configure.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 19:09:45 +01: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
Michael Niedermayer
0fecf2642b Merge remote-tracking branch 'newdev/master'
Conflicts:
	Changelog
	doc/APIchanges
	doc/optimization.txt
	libavformat/avio.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 17:22:52 +01:00
Baptiste Coudurier
69aab68037 Use av_strdup instead of strdup, fixes mingw build 2011-03-16 14:26:25 -07: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
Mans Rullgard
49e617f956 yadif: add parens around macro parameters
This fixes compilation with preprocessors which do not add whitespace
around replaced tokens, resulting in invalid expressions like 1--1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-08 02:08:31 +01:00
Mans Rullgard
391a1327bd yadif: add parens around macro parameters
This fixes compilation with preprocessors which do not add whitespace
around replaced tokens, resulting in invalid expressions like 1--1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-05 14:51:03 +00:00
Carl Eugen Hoyos
8214249051 Add libmpcodecs to the list of libavfilter subdirectories. 2011-02-25 15:34:20 +01:00
Michael Niedermayer
f9c61974ae Add shadow support to the drawtext filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:54 +01:00
Michael Niedermayer
a64a2c5f98 factor draw_glyphs out of drawtext filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:54 +01:00
Michael Niedermayer
bccea08836 Fix and optimize yuv blend in the drawtext filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:54 +01:00
Michael Niedermayer
7d27902263 get rid of divisions in the inner loop of the drawtext filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:54 +01:00
Michael Niedermayer
476aaec637 fix chroma alpha in the drawtext filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:54 +01:00
Michael Niedermayer
edbaedf7a0 Simplify chroma blend in the drawtext filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:54 +01:00
Stefano Sabatini
bd8e750300 Port drawtext filter by Hemanth from the libavfilter soc repo, with
the following additions:
* support to anti-aliased glyph rendering
* support to UTF-8 text and Unicode chars rendering
* support for RGB packed formats

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:45 +01:00
Stefano Sabatini
c8c0189d62 lavfi: put color source in a dedicated file
Move the color source code from vf_pad.c to vsrc_color.c.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-21 14:09:46 +00:00
Stefano Sabatini
5ad06110e0 lavfi: add drawutils
Add drawutils.h and drawutils.c, and use them in the pad filter.
The new functions are going to be shared by other filters.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-21 14:09:08 +00:00
Brandon Mintern
704865fc87 lavfi: add fade filter
Port fade filter from libavfilter soc repo, with minor fixes by
Stefano.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-21 13:56:48 +01:00
Stefano Sabatini
fd0b42cce0 lavfi: put color source in a dedicated file
Move the color source code from vf_pad.c to vsrc_color.c.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-21 13:45:44 +01:00
Stefano Sabatini
bcfd9e821b lavfi: add drawutils
Add drawutils.h and drawutils.c, and use them in the pad filter.
The new functions are going to be shared by other filters.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-21 13:44:52 +01:00
Michael Niedermayer
02d0803571 Reduce picture size for yadif.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-18 19:39:56 +01:00
Michael Niedermayer
bad82d3d7d Change yadif to not use out of picture lines.
Fixes issue2272.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-18 19:39:42 +01:00
Reinhard Tartler
7ffe76e540 Merge libavcore into libavutil
Done to keep ABI compatible. Otherwise this is just silly
2011-02-16 23:00:30 +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
6985d7bf87 Make avfilter_config_links() propagate audio information of the source link if it is not explicitely set by the filter.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-14 23:37:34 +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
9b8bb626dc libavfilter: add video movie source
See thread:
Subject: [PATCH] movie video source
Date: 2010-12-31 15:35:30 GMT

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-09 03:33:28 +01:00
Stefano Sabatini
9409c3811c libavfilter: add video movie source
See thread:
Subject: [PATCH] movie video source
Date: 2010-12-31 15:35:30 GMT

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-08 13:20:56 +01:00
Clément Bœsch
bffad70c66 Remove forgotten if (p) av_free(p) forms
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 290849e2a4)
2011-02-06 20:31:44 +01:00
Stefano Sabatini
ab543afe47 Make avfilter_graph_free() free the graph.
Make avfilter_graph_free() free not only the internal structures, but
also the allocated graph, and set the graph pointer to NULL for
increased safety.

Simplify usage.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 4359288c56)
2011-02-06 20:31:42 +01:00
Stefano Sabatini
c68be8e135 Make avfilter_graph_parse() not free the input graph
Make avfilter_graph_parse() only release the internal structures
allocated during the parsing, and leave to free the graph itself to
the calling code.

This approach looks cleaner, as the graph is not allocated by the
function.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit e8e5dde779)
2011-02-06 20:31:42 +01:00
Clément Bœsch
290849e2a4 Remove forgotten if (p) av_free(p) forms
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-04 10:00:52 +00:00
Stefano Sabatini
4359288c56 Make avfilter_graph_free() free the graph.
Make avfilter_graph_free() free not only the internal structures, but
also the allocated graph, and set the graph pointer to NULL for
increased safety.

Simplify usage.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-04 02:55:11 +00:00
Stefano Sabatini
e8e5dde779 Make avfilter_graph_parse() not free the input graph
Make avfilter_graph_parse() only release the internal structures
allocated during the parsing, and leave to free the graph itself to
the calling code.

This approach looks cleaner, as the graph is not allocated by the
function.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-04 02:55:11 +00:00
Stefano Sabatini
057f3d2763 Log debug information in filter_samples().
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 5fce60c3a9)
2011-02-04 03:08:09 +01: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
Michael Niedermayer
7b3ea5507c Add sample_aspect_ratio fields to vsrc_buffer arguments.
This fixes aspect handling in ffmpeg
This is based on a patch by baptiste
2011-01-31 21:32:06 +01:00
Michael Niedermayer
14b171cd71 Add sample_aspect_ratio to AVFilterLink 2011-01-31 21:32:06 +01:00
Luca Barbato
9ef5a9deaf Replace dprintf with av_dlog
dprintf clashes with POSIX.1-2008
(cherry picked from commit dfd2a005eb)
2011-01-30 03:41:48 +01:00
Stefano Sabatini
8bc6568595 In the start_frame() debug log, print the reference pos value rather than the evaluated value converted to int.
That's required because -1 is evaluated as NAN, which converted back
to int looks like a random number, this is especially annoying when
debugging sources with undefined pos (as the video4linux2 device).

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 3e5bc7ff6a)
2011-01-30 03:40:59 +01:00
Luca Barbato
dfd2a005eb Replace dprintf with av_dlog
dprintf clashes with POSIX.1-2008
2011-01-29 23:55:37 +01:00
Michael Niedermayer
55fa97e215 Remove useage of memalign() from libmpcodecs, not all platforms have memalign(). 2011-01-28 21:55:23 +01:00
Michael Niedermayer
be3e8eda5a Add forgotten dependancy of avcodec for vf_mp.c 2011-01-28 19:04:24 +01:00
Stefano Sabatini
3e5bc7ff6a In the start_frame() debug log, print the reference pos value rather than the evaluated value converted to int.
That's required because -1 is evaluated as NAN, which converted back
to int looks like a random number, this is especially annoying when
debugging sources with undefined pos (as the video4linux2 device).

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-28 17:27:54 +01:00
Diego Elio Pettenò
97e528a9e1 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>
(cherry picked from commit eb7ccf8f33)
2011-01-28 03:15:32 +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
Michael Niedermayer
61d7f8fed4 Warn about vf_mp 2011-01-20 03:27:01 +01:00
Michael Niedermayer
fd4c59b519 Enable libmpcodecs support. 2011-01-20 03:27:01 +01:00
Michael Niedermayer
a61b0df708 Add ASMALIGN() hack to patch around its recent removial from configure 2011-01-20 03:27:01 +01:00
Michael Niedermayer
3aa43978da Add libmpcodecs wrapper for libavfilter, still disabled 2011-01-20 03:26:54 +01:00
Michael Niedermayer
3be78f7ecd Hack libmpcodecs to make it buildable. 2011-01-20 00:59:30 +01:00
Michael Niedermayer
8e45c103e9 Remove dependancy of m_option & m_struct from libmpcodecs. 2011-01-20 00:57:33 +01:00
Michael Niedermayer
4d46361425 Avoid dependancy on global variable verbose in libmpcodecs/vf_pullup.c 2011-01-20 00:52:26 +01:00
Michael Niedermayer
45c889a3ad Add #define _BSD_SOURCE where mplayer is not C99. 2011-01-20 00:50:42 +01:00
Michael Niedermayer
e4852fb38d Add MPlayers libmpcodecs, this will be needed for our libavfilter wraper for it. 2011-01-20 00:49:27 +01:00
Mans Rullgard
daed21a17e avfilter: remove stray semicolon 2011-01-18 20:48:23 +00:00
Janne Grunau
2c3589bfda consolidate .gitignore patters into a single file
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-18 21:32:05 +01:00
Janne Grunau
348b8218f7 convert svn:ignore properties to .gitignore files
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-17 15:50:14 +01:00
Stefano Sabatini
dccdd93efc Make config_props() return AVERROR(EINVAL) rather than 1 in case of
failed SWScaleContext initialization.

Fix issue2546.

Originally committed as revision 26395 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-16 20:11:46 +00:00
Ronald S. Bultje
84cac86e7e Fix fate breakage in r26382.
Originally committed as revision 26383 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-16 03:20:03 +00:00