Commit Graph

2295 Commits

Author SHA1 Message Date
Loren Merritt
566858a770 vf_hqdn3d: support 16bit colordepth 2012-08-26 10:49:14 +00:00
Michael Niedermayer
15a0fb58a3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  utvideodec: Fix single symbol mode decoding
  truespeech: drop useless casts
  libavcodec: drop bogus dependencies from mpc[78] and qdm2
  mpegaudio: move ff_mpa_enwindow to a separate file
  AVOptions: store defaults for INT64 options in int64 union member.

Conflicts:
	libavcodec/Makefile
	libavfilter/af_asyncts.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-24 15:00:39 +02:00
Stefano Sabatini
b66afe087a lavfi/asetpts,setpts: rework debug log
Show more information, and only the information stored in the values
array. Improve debugging usefulness.
2012-08-24 13:32:59 +02:00
Stefano Sabatini
1181461ca5 lavfi/asetpts,setpts: add variables T, STARTT, PREV_INT and PREV_OUTT 2012-08-24 13:32:21 +02:00
Stefano Sabatini
0b9a915dad lavfi: rename vf_setpts.c to f_setpts.c
The file contains the asetpts audio filter.
2012-08-24 12:54:45 +02:00
Anton Khirnov
4d7adec8bd AVOptions: store defaults for INT64 options in int64 union member.
Double does not have enough precision to represent all int64 numbers
exactly.
2012-08-24 11:25:06 +02:00
Nicolas George
c2271fa7f9 lavfi: free partial audio buffers when destroying links.
Fix a memleak that the recent change of architecture made
more likely to happen.
2012-08-22 23:31:49 +02:00
Nicolas George
52820bc578 lavfi/overlay: fix return values.
They were only roughly adapted when error return was
added to the push functions.
2012-08-22 19:04:30 +02:00
Nicolas George
a9cfe656d7 lavfi/split: handle closed outputs.
Return AVERROR_EOF if all outputs are closed.
2012-08-22 19:04:30 +02:00
Nicolas George
beeba9161a lavfi: add a closed field to AVFilerLink.
It will help forward errors and maintain consistency.
2012-08-22 19:04:30 +02:00
Stefano Sabatini
9a199040d8 lavfi/showspectrum: add priv_class and flags to options 2012-08-21 01:29:25 +02:00
Thomas Weber
1c585dddbb lavfi/asyncts: Fix compilation with GCC 4.7
Compilation failed since commit 42d621d131
Error messages:
libavfilter/af_asyncts.c:249:5: error: initializer element is not
computable at load time
libavfilter/af_asyncts.c:249:5: error: (near initialization for
‘avfilter_af_asyncts.priv_size’)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-21 00:19:13 +02:00
Nicolas George
5bbe4142d1 lavfi/buffersrc: add AV_BUFFERSRC_FLAG_PUSH. 2012-08-20 23:40:16 +02:00
Clément Bœsch
3899e49955 lavfi/edgedetect: use "@see" instead of the invalid "@url". 2012-08-20 23:12:34 +02:00
Clément Bœsch
ddda29b4a7 lavfi: add showspectrum filter. 2012-08-20 23:03:06 +02:00
Nicolas George
5980e57cf9 lavfi: add volumedetect filter. 2012-08-19 11:37:05 +02:00
Michael Niedermayer
7f46f042d1 buildsys: fix cleaning of libmpcodecs
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-18 16:36:16 +02:00
Stefano Sabatini
dc7e4d685f lavfi/mp: remove framestep wrapped filter
An equivalent framestep filter has been natively integrated.
2012-08-18 12:14:46 +02:00
Stefano Sabatini
48d116400c lavfi: add framestep filter
This filter is inspired upon libmpcodecs/vf_framestep.c, by Daniele
Forghieri.

Only-keyframe output is not supported, since that feature can be achieved
through the more versatile select filter.
2012-08-18 12:13:34 +02:00
Stefano Sabatini
7cd5fa35fe lavfi/testsrc: set output framerate 2012-08-18 12:02:43 +02:00
Stefano Sabatini
42d621d131 lavfi: add priv class to filter definitions and flags to filter internal options
This allows the iteration callbacks to discover the internal class and
options, and show them when required.
2012-08-18 10:19:05 +02:00
Stefano Sabatini
831a999dda lavfi/movie: split class definitions for movie and amovie
This is required for iterating through the filter class (without
incurring into a loop).
2012-08-18 10:04:25 +02:00
Stefano Sabatini
a77436abad lavfi/lut: duplicate class definitions for each lut variant filter
This is due to the design of components iteration through AVClass
child_class_next() callback, which requires that two components cannot
share the same class.
2012-08-18 10:04:25 +02:00
Nicolas George
9341bbfc51 vf_yadif: fix permissions.
Require AV_PERM_PRESERVE and leave harmless permissions
alone for the next filter.
2012-08-17 18:26:42 +02:00
Nicolas George
71adb74059 vf_tinterlace: leave harmless permissions alone. 2012-08-17 18:26:42 +02:00
Nicolas George
d37f823207 vf_thumbnail: fix permissions. 2012-08-17 18:26:42 +02:00
Nicolas George
469d07a0e4 vf_select: require AV_PERM_PRESERVE.
This is only necessary because of the poll_frame implementation.
Removing it altogether would be another solution.
2012-08-17 18:26:42 +02:00
Nicolas George
f6647d8825 vf_removelogo: fix permissions.
The branch with the test was already impossible.
2012-08-17 18:26:41 +02:00
Nicolas George
616c3f3ee2 vf_overlay: fix permissions. 2012-08-17 18:26:41 +02:00
Nicolas George
5ec6ae91ba vf_idet: fix permissions.
Only write needs to be removed, other can be left.
2012-08-17 18:26:41 +02:00
Nicolas George
3bc644e044 vf_fps: fix permissions. 2012-08-17 18:26:41 +02:00
Nicolas George
738fab17ea vf_fieldorder: fix permissions. 2012-08-17 18:26:41 +02:00
Nicolas George
3c0cc3ae67 vf_fade: fix permissions. 2012-08-17 18:26:41 +02:00
Nicolas George
d5765d4725 vf_drawtext: fix permissions. 2012-08-17 18:26:41 +02:00
Nicolas George
0238806f64 vf_drawtext: fix permissions. 2012-08-17 18:26:40 +02:00
Nicolas George
84923555bb vf_deshake: fix permissions. 2012-08-17 18:26:40 +02:00
Nicolas George
f3133a48e5 vf_delogo: fix permissions. 2012-08-17 18:26:40 +02:00
Nicolas George
12ff3faec0 vf_colormatrix: fix permissions. 2012-08-17 18:26:40 +02:00
Nicolas George
ceb8dc1e04 vf_ass: fix permissions. 2012-08-17 18:26:40 +02:00
Nicolas George
07663871e1 vf_alphamerge: fix permissions. 2012-08-17 18:26:40 +02:00
Nicolas George
de35d2b498 avf_concat: fix permissions. 2012-08-17 18:26:39 +02:00
Nicolas George
44127c0489 af_channelmap: fix permissions. 2012-08-17 18:26:39 +02:00
Nicolas George
368f368e59 af_channelmap: require AV_PERM_PRESERVE. 2012-08-17 18:26:39 +02:00
Nicolas George
44aeb06290 fifo: fix permissions. 2012-08-17 18:26:39 +02:00
Nicolas George
a34eb393fc split: set rej_perms = AV_PERM_WRITE on outputs. 2012-08-17 18:26:39 +02:00
Nicolas George
a0d274d228 sink_buffer: require AV_PERM_PRESERVE. 2012-08-17 18:26:39 +02:00
Nicolas George
e54e30c889 lavfi: grant all permissions on mallocated audio buffers.
The permissions not requested by the filter that created
the buffer may be useful for a later filter and avoid a copy.
2012-08-17 18:26:38 +02:00
Nicolas George
cc8104b908 lavfi: fix erroneous use of AV_PERM_PRESERVE in ff_inplace_start_frame.
ff_inplace_start_frame looks useless anyway.
2012-08-17 18:26:38 +02:00
Nicolas George
046eb21c72 lavfi: grant all permissions on mallocated video buffers.
The permissions not requested by the filter that created
the buffer may be useful for a later filter and avoid a copy.
2012-08-17 18:26:38 +02:00
Michael Niedermayer
fa3fde168b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libvpxenc: use the default bitrate if not set
  utvideo: Rename utvideo.c to utvideodec.c
  doc: Fix syntax errors in sample Emacs config
  mjpegdec: more meaningful return values
  configure: clean up Altivec detection
  getopt: Remove an unnecessary define
  rtmp: Use int instead of ssize_t
  getopt: Add missing includes
  rtmp: Add support for receiving incoming streams
  Add missing includes for code relying on external libraries

Conflicts:
	libavcodec/libopenjpegenc.c
	libavcodec/libvpxenc.c
	libavcodec/mjpegdec.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-17 17:06:52 +02:00
Clément Bœsch
517a2bbcf1 lavfi/edgedetect: add rounding for high/low threshold.
This should fix the 32-bit FATE instances where low_u8=19 and high_u8=49.
2012-08-17 08:08:07 +02:00
Clément Bœsch
3250231a02 lavfi: add edgedetect filter. 2012-08-16 22:03:32 +02:00
Nicolas George
12d2bbf324 lavfi/movie: extend a doxygen comment. 2012-08-16 20:36:45 +02:00
Nicolas George
584acbf524 lavfi/movie: set pkt->stream_index for flushing.
Otherwise, the value of stream_index is kept from the last packet
read, which is not necessarily the stream that needs flushing.
2012-08-16 18:07:03 +02:00
Michael Niedermayer
a3ececf329 yadif: remove libavutil/internal.h include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:27:55 +02:00
Michael Niedermayer
c581cb4e4f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Fix even more missing includes after the common.h removal
  build: Factor out rangecoder dependencies to CONFIG_RANGECODER
  build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE
  x86: avcodec: Consistently name all init files
  Add more missing includes after removing the implicit common.h
  Add some more missing includes after removing the implicit common.h
  Don't include common.h from avutil.h
  rtmp: Automatically compute the hash for SWFVerification

Conflicts:
	configure
	doc/APIchanges
	doc/examples/decoding_encoding.c
	libavcodec/Makefile
	libavcodec/assdec.c
	libavcodec/audio_frame_queue.c
	libavcodec/avpacket.c
	libavcodec/dv_profile.c
	libavcodec/dwt.c
	libavcodec/libtheoraenc.c
	libavcodec/rawdec.c
	libavcodec/rv40dsp.c
	libavcodec/tiff.c
	libavcodec/tiffenc.c
	libavcodec/v210dec.h
	libavcodec/vc1dsp.c
	libavcodec/x86/Makefile
	libavfilter/asrc_anullsrc.c
	libavfilter/avfilter.c
	libavfilter/buffer.c
	libavfilter/formats.c
	libavfilter/vf_ass.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_select.c
	libavfilter/video.c
	libavfilter/vsrc_testsrc.c
	libavformat/version.h
	libavutil/audioconvert.c
	libavutil/error.h
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 16:20:30 +02:00
Martin Storsjö
7ebe3962f3 Add missing includes for code relying on external libraries
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-16 16:47:02 +03:00
Stefano Sabatini
208d6e6615 lavfi/hue: add verbose debug message showing initial parameters 2012-08-16 15:02:09 +02:00
Stefano Sabatini
5b0151a474 lavfi/hue: reindent after previous commits 2012-08-16 15:02:09 +02:00
Stefano Sabatini
419e1b7463 lavfi/hue: apply misc fixes to default values setting
In particular: signal error in case of bogus h:s values.
2012-08-16 15:02:09 +02:00
Jérémy Tran
191b77eb01 lavfi/hue: add named options support
Old syntax has been kept for compatibility reasons.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-08-16 15:01:05 +02:00
Stefano Sabatini
6efce3a894 lavfi/mp: remove hue wrapped filter
hue was integrated as a native libavfilter filter.
2012-08-16 14:13:54 +02:00
Martin Storsjö
33e112847d Add more missing includes after removing the implicit common.h
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-16 10:49:54 +03:00
Martin Storsjö
70766c2182 Add some more missing includes after removing the implicit common.h
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-15 23:48:48 +03:00
Martin Storsjö
1d9c2dc89a Don't include common.h from avutil.h
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-15 22:32:06 +03:00
Michael Niedermayer
7427d1ca4a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  g723.1: simplify scale_vector()
  g723.1: simplify normalize_bits()
  vda: cosmetics: fix Doxygen comment formatting
  vda: better frame allocation
  vda: Merge implementation into one file
  vda: support synchronous decoding
  vda: Reuse the bitstream buffer and reallocate it only if needed
  build: Factor out mpegvideo encoding dependencies to CONFIG_MPEGVIDEOENC
  avprobe: Include libm.h for the log2 fallback
  proresenc: use the edge emulation buffer
  rtmp: handle bytes read reports
  configure: Fix typo in mpeg2video/svq1 decoder dependency declaration
  Use log2(x) instead of log(x) / log(2)
  x86: swscale: fix fragile memory accesses
  x86: swscale: remove disabled code
  x86: yadif: fix asm with suncc
  x86: cabac: allow building with suncc
  x86: mlpdsp: avoid taking address of void
  ARM: intmath: use native-size return types for clipping functions

Conflicts:
	configure
	ffprobe.c
	libavcodec/Makefile
	libavcodec/g723_1.c
	libavcodec/v210dec.h
	libavcodec/vda.h
	libavcodec/vda_h264.c
	libavcodec/x86/cabac.h
	libavfilter/x86/yadif_template.c
	libswscale/x86/rgb2rgb_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 15:34:39 +02:00
Andrey Utkin
a32fa21d17 lavfi/asetnsamples: push as many frames as ready
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-08-14 13:19:52 +02:00
Nicolas George
271ddb116c lavfi: use min_perms and rej_perms for out pads.
There are several reasons for doing that:

1. It documents the code for the reader and helps find
   inconsistencies and bugs.

2. For rej_perms, it guarantees the change will be done
   even if the output reference can be created by several
   code paths.

3. It can be used to predict cases where a copy will,
   or will not happen and optimize buffer allocation
   (for example not request a rare direct-rendering buffer
   from a device sink if it will be copied anyway).

Note that a filter is still allowed to manage the permissions
on its own without using these fields.
2012-08-14 12:00:35 +02:00
Mans Rullgard
480178a295 x86: yadif: fix asm with suncc
Under some circumstances, suncc will use a single register for the
address of all memory operands, inserting lea instructions loading
the correct address prior to each memory operand being used in the
code. In the yadif code, the branch in the asm block bypasses such
an lea instruction, causing an incorrect address to be used in the
following load.

This patch replaces the tmpX arrays with a single array and uses a
register operand to hold its address. Although this prevents using
offsets from the stack pointer to access these locations, the code
still builds as 32-bit PIC even with old compilers.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 14:51:52 +01:00
Jérémy Tran
ae60d2c877 lavfi: add hue filter
This is a port of the MPlayer hue filter (libmpcodecs/vf_hue.c) by
Michael Niedermayer.

Signed-off-by: Jérémy Tran <tran.jeremy.av@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-08-13 12:00:54 +02:00
Stefano Sabatini
5c0d8bc4ce lavfi: add avfilter_get_class() and iteration callbacks
Allow iteration over filter options.
2012-08-13 00:04:06 +02:00
Michael Niedermayer
18b0c39f99 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  g723.1: fix addition overflow
  g723.1: simplify and fix multiplication overflow
  g723.1: deobfuscate an expression
  g723.1: remove unused #includes
  ARM: add missing "cc" clobber in av_clipl_int32_arm()
  rtmp: Factorize the code by adding handle_invoke_error
  rtmp: Factorize the code by adding handle_invoke_status
  rtmp: Factorize the code by adding handle_invoke_result
  libavutil: remove unused av_abort() macro
  ffmenc: replace if/abort with assert()
  libavutil: drop offsetof() fallback definition
  libavutil: drop fallback definitions of INTxx_MIN/MAX
  configure: Check for a sctp struct instead of just the header
  configure: suncc: Add -xc99 to dependency flags, required on Solaris
  doxygen: Fix function parameter names to match the code
  doc: Drop obsolete shared libs cflags hint to workaround Cygwin gcc bugs
  swf: Move shared table out of the header file
  swf: Move swf_audio_codec_tags table to the only place it is used
  fate: add G.723.1 decoder tests

Conflicts:
	configure
	doc/platform.texi
	libavformat/Makefile
	libavutil/arm/intmath.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 16:25:23 +02:00
Michael Niedermayer
a0d15027e3 yadif: check input video size.
yadif needs at least 3x3 or it will likely crash with out of array reads

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 00:09:34 +02:00
Michael Niedermayer
8f29901b54 yadif: remove get_video_buffer, its redundant now
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 00:09:11 +02:00
Michael Niedermayer
2f7e8dcf45 yadif: redesign first and last 2 lines handling.
The previous code dependent on the input buffer matching the
buffer that has been provided by yadifs get_buffer.
The API does in now way gurantee this though its often true.
This fixes some out of array reads.
The regression test checksums change due to "out of picture" values
being initialized differently.
There should be no visual difference in the filters output

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 00:08:34 +02:00
Diego Biurrun
804d7a1aa6 doxygen: Fix function parameter names to match the code 2012-08-09 20:05:55 +02:00
Michael Niedermayer
9f088a1ed4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpegvideo: reduce excessive inlining of mpeg_motion()
  mpegvideo: convert mpegvideo_common.h to a .c file
  build: factor out mpegvideo.o dependencies to CONFIG_MPEGVIDEO
  Move MASK_ABS macro to libavcodec/mathops.h
  x86: move MANGLE() and related macros to libavutil/x86/asm.h
  x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h
  aacdec: Don't fall back to the old output configuration when no old configuration is present.
  rtmp: Add message tracking
  rtsp: Support mpegts in raw udp packets
  rtsp: Support receiving plain data over UDP without any RTP encapsulation
  rtpdec: Remove an unused include
  rtpenc: Remove an av_abort() that depends on user-supplied data
  vsrc_movie: discourage its use with avconv.
  avconv: allow no input files.
  avconv: prevent invalid reads in transcode_init()
  avconv: rename OutputStream.is_past_recording_time to finished.

Conflicts:
	configure
	doc/filters.texi
	ffmpeg.c
	ffmpeg.h
	libavcodec/Makefile
	libavcodec/aacdec.c
	libavcodec/mpegvideo.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-09 19:31:56 +02:00
Clément Bœsch
cc650cf029 Remove "Error parsing options string [...]" messages.
This reduces from 3 to 2 messages for the same syntax error in ffprobe,
and from 4 to 3 in filters.
2012-08-09 08:11:00 +02:00
Mans Rullgard
c318626ce2 x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h
This puts x86-specific things in the x86/ subdirectory where they
belong.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 00:58:20 +01:00
Stefano Sabatini
f6580b50ed lavfi: add asetpts audio filter
Based on an idea by Andrey Utkin <andrey.krieger.utkin@gmail.com>.
2012-08-09 01:03:05 +02:00
Clément Bœsch
e6dd2852ca lavfi/atempo: remove dead increment. 2012-08-08 22:53:00 +02:00
Stefano Sabatini
dbf25b70ea lavfi/testsrc: set default value for option "color" to NULL and rework color setting logic
Fix bogus warnings of the kind:
option 'color' is ignored with source 'testsrc'

when the color value is not explicitely set and the filter is different
from "color".
2012-08-08 16:49:53 +02:00
Michael Niedermayer
7a72695c05 Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'
* commit '36ef5369ee9b336febc2c270f8718cec4476cb85':
  Replace all CODEC_ID_* with AV_CODEC_ID_*
  lavc: add AV prefix to codec ids.

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	doc/examples/muxing.c
	ffmpeg.c
	ffprobe.c
	ffserver.c
	libavcodec/8svx.c
	libavcodec/avcodec.h
	libavcodec/dnxhd_parser.c
	libavcodec/dvdsubdec.c
	libavcodec/error_resilience.c
	libavcodec/h263dec.c
	libavcodec/libvorbisenc.c
	libavcodec/mjpeg_parser.c
	libavcodec/mjpegenc.c
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pcm.c
	libavcodec/r210dec.c
	libavcodec/utils.c
	libavcodec/v210dec.c
	libavcodec/version.h
	libavdevice/alsa-audio-dec.c
	libavdevice/bktr.c
	libavdevice/v4l2.c
	libavformat/asfdec.c
	libavformat/asfenc.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/caf.c
	libavformat/electronicarts.c
	libavformat/flacdec.c
	libavformat/flvdec.c
	libavformat/flvenc.c
	libavformat/framecrcenc.c
	libavformat/img2.c
	libavformat/img2dec.c
	libavformat/img2enc.c
	libavformat/ipmovie.c
	libavformat/isom.c
	libavformat/matroska.c
	libavformat/matroskadec.c
	libavformat/matroskaenc.c
	libavformat/mov.c
	libavformat/movenc.c
	libavformat/mp3dec.c
	libavformat/mpeg.c
	libavformat/mpegts.c
	libavformat/mxf.c
	libavformat/mxfdec.c
	libavformat/mxfenc.c
	libavformat/nsvdec.c
	libavformat/nut.c
	libavformat/oggenc.c
	libavformat/pmpdec.c
	libavformat/rawdec.c
	libavformat/rawenc.c
	libavformat/riff.c
	libavformat/sdp.c
	libavformat/utils.c
	libavformat/vocenc.c
	libavformat/wtv.c
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 22:45:46 +02:00
Paul B Mahol
13c5069187 lavfi: add smptebars source
Patch readapted by Stefano Sabatini, color values proposed by Tim
Nicholson <nichot20@yahoo.com>.

Address trac ticket #1462.

See thread:
Subject: [FFmpeg-devel] [PATCH] smptebars filter
Date: Wed, 20 Jun 2012 01:54:58 +0000

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-08-07 20:06:56 +02:00
Clément Bœsch
16dc5f2050 Replace various inlined inverse AVRational with av_inv_q(). 2012-08-06 00:04:36 +02:00
Clément Bœsch
ad55244c96 lavfi/overlay: remove dead initialization. 2012-08-06 00:04:36 +02:00
Michael Niedermayer
b4780d03d0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: h264_idct: Rename x264_add8x4_idct_sse2 --> h264_add8x4_idct_sse2
  rational: add av_inv_q() returning the inverse of an AVRational
  dpx: Make start offset unsigned
  lavfi: properly signal out-of-memory error in ff_filter_samples
  cosmetics: Fix a few switched periods and linebreaks
  zerocodec: Fix memleak in decode_frame
  zerocodec: Cosmetics

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-05 22:17:02 +02:00
Reinhard Tartler
800750417f lavfi: properly signal out-of-memory error in ff_filter_samples
Found with a clang-scan report on http://fate.libav.org/csa/
2012-08-05 10:26:49 +02:00
Michael Niedermayer
e776ee8f29 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavr: fix handling of custom mix matrices
  fate: force pix_fmt in lagarith-rgb32 test
  fate: add tests for lagarith lossless video codec.
  ARMv6: vp8: fix stack allocation with Apple's assembler
  ARM: vp56: allow inline asm to build with clang
  fft: 3dnow: fix register name typo in DECL_IMDCT macro
  x86: dct32: port to cpuflags
  x86: build: replace mmx2 by mmxext
  Revert "wmapro: prevent division by zero when sample rate is unspecified"
  wmapro: prevent division by zero when sample rate is unspecified
  lagarith: fix color plane inversion for YUY2 output.
  lagarith: pad RGB buffer by 1 byte.
  dsputil: make add_hfyu_left_prediction_sse4() support unaligned src.

Conflicts:
	doc/APIchanges
	libavcodec/lagarith.c
	libavfilter/x86/gradfun.c
	libavutil/cpu.h
	libavutil/version.h
	libswscale/utils.c
	libswscale/version.h
	libswscale/x86/yuv2rgb.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 23:51:43 +02:00
Derek Buitenhuis
8b8750e061 cosmetics: Fix a few switched periods and linebreaks
Based on a patch by Piotr Bandurski.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-04 16:39:27 -04:00
Nicolas George
8d6eed7b56 lavfi: document the constraints on incoming frames. 2012-08-04 21:49:05 +02:00
Nicolas George
8ef740ce01 lavfi: use a new field for automatic buffer copy.
The code currently use cur_buf as the target of the copy,
but cur_buf can be cleared by the filter if it has given
the reference away or stored it elsewhere as soon as start_frame.

The code still relies on the fact that the reference is not
destroyed until end_frame. All filters currently follow that condition.
An av_assert1() is added to check it; it should at least cause
very visible errors in valgrind.
2012-08-04 21:49:05 +02:00
Diego Biurrun
239fdf1b4a x86: build: replace mmx2 by mmxext
Refactoring mmx2/mmxext YASM code with cpuflags will force renames.
So switching to a consistent naming scheme beforehand is sensible.
The name "mmxext" is more official and widespread and also the name
of the CPU flag, as reported e.g. by the Linux kernel.
2012-08-03 22:51:05 +02:00
Stefano Sabatini
39a8275fdf lavfi: move color filter to testsrc, factorize 2012-08-03 16:26:58 +02:00
Clément Bœsch
e39f6a3a5c Fix misc swapped dot and carriage returns in av_log calls. 2012-08-03 14:58:14 +02:00
Nicolas George
752344dada amerge/astreamsync/pan: fix license boilerplate.
The boilerplate states that the files are under LGPL,
but refer the user to the GPL at one place.
These files were (re)implemented specifically for FFmpeg.
2012-08-03 00:24:51 +02:00
Stefano Sabatini
aa5b93fbd8 lavfi/rgbtestsrc: use ff_fill_rgba_map() rather than a local copy
Also convert int rgba_map[4] to uint8_t rgba_map[4], as required by
ff_fill_rgba_map().

Simplify.
2012-08-02 12:32:48 +02:00
Stefano Sabatini
3bcde3f06c lavfi/drawutils: make ff_draw_color() accept a const rgba map 2012-08-02 12:32:48 +02:00
Stefano Sabatini
65520f5933 lavfi/video: remove duplicated function ff_null_start_frame_keep_ref()
Semantic for the function ff_null_start_frame() was changed in
07bad27810, and it has now the same behavior of
ff_null_start_frame_keep_ref(), thus it makes no sense to keep both of
them.
2012-08-02 12:32:48 +02:00
Stefano Sabatini
4c8fc6a2a4 lavfi/testsrc: use AVFILTER_DEFINE_CLASS for defining the filter classes
Factorize.
2012-08-01 22:47:23 +02:00
Stefano Sabatini
33474eb1c6 lavfi/testsrc: extend logic in request_frame, support static image output 2012-08-01 22:47:04 +02:00
Stefano Sabatini
20e940e768 lavfi/testsrc: free the context in uninit
Keeping stuff in the context can be useful for debugging purposes.
2012-08-01 22:46:08 +02:00
Nicolas George
f952b23ed4 vf_tile: fix output buffer ownership.
There is no need to start_frame immediately on the output link
since the rest is only done with the last frame of the tile.
link->out_buf is now automatically dereferenced; since we give
it away it must be cleared.

Fix an assert failure; found by Clément Bœsch.
2012-08-01 12:23:48 +02:00
Stefano Sabatini
7ddf082f04 lavfi/testsrc: drop pointless parentheses 2012-08-01 11:05:47 +02:00
Stefano Sabatini
2702e38477 lavfi: remove unused defaults.c file 2012-08-01 11:05:41 +02:00
Michael Niedermayer
d1dad7c824 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpc8: return more meaningful error codes.
  mpc: return more meaningful error codes.
  wv,mpc8: don't return apetag data in packets.
  rtmp: do not warn about receiving metadata packets
  x86: h264dsp: Adjust YASM #ifdefs
  x86: yadif: Mark mmxext optimizations as such
  h264: convert loop filter strength dsp function to yasm.
  Improve descriptiveness of a number of codec and container long names

Conflicts:
	libavcodec/flvdec.c
	libavcodec/libopenjpegdec.c
	libavformat/apetag.c
	libavformat/mp3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-31 22:41:00 +02:00
Diego Biurrun
d1505db067 x86: yadif: Mark mmxext optimizations as such
The yadif mmx optimizations contain the pmaxsw and pmaxub mmxext
instructions, causing sigills on CPUs that do not support mmxext.
2012-07-31 13:54:06 +02:00
Stefano Sabatini
52bd9cb4d2 lavfi/movie: force channel layout if not set by the decoder
This ensures that the output buffers will have the channel layout set,
which is required by filters.

Also consistent with ffmpeg.c behavior.
2012-07-31 13:25:14 +02:00
Stefano Sabatini
b4c3359828 lavfi/asettb: do not create a new reference in filter_samples()
There is no need to duplicate the input reference, since a filter should
not pass along a reference which is later modified. If this happens the
filter passing the reference should be fixed.

Also improve consistency with start_frame() of settb, allowing a pending
factorization.
2012-07-31 13:15:51 +02:00
Michael Niedermayer
b5da7d4c1a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avformat: Drop pointless "format" from container long names
  swscale: bury one more piece of inline asm under HAVE_INLINE_ASM.
  wv: K&R formatting cosmetics
  configure: Add missing descriptions to help output
  h264_ps: declare array of colorspace strings on its own line.
  fate: amix: specify f32 sample format for comparison
  tiny_psnr: support 32-bit float samples
  eamad/eatgq/eatqi: call special EA IDCT directly
  eamad: remove use of MpegEncContext
  mpegvideo: remove unnecessary inclusions of faandct.h
  af_asyncts: avoid overflow in out_size with large delta values
  af_asyncts: add first_pts option

Conflicts:
	configure
	libavcodec/eamad.c
	libavcodec/h264_ps.c
	libavformat/crcenc.c
	libavformat/ffmdec.c
	libavformat/ffmenc.c
	libavformat/framecrcenc.c
	libavformat/md5enc.c
	libavformat/nutdec.c
	libavformat/rawenc.c
	libavformat/yuv4mpeg.c
	tests/tiny_psnr.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-30 23:28:31 +02:00
Nicolas George
a85b4a5696 lavfi: use correct PTS for link age.
When start_frame has returned, the buffer reference's PTS
may have been modified by another filter.
2012-07-30 17:56:26 +02:00
Michael Niedermayer
3161958455 yadif: update frame rate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-30 14:17:10 +02:00
Michael Niedermayer
dfd8f2ff19 avfilter: fix minor typo
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-30 14:17:10 +02:00
Stefano Sabatini
316f6df9cc lavfi/avcodec: rename picref->samplesref variable in avfilter_get_audio_buffer_ref_from_frame()
The new name is more meaningful in that context.
2012-07-30 00:33:13 +02:00
Stefano Sabatini
9cf9214d0a lavfi/color: free internal context options in uninit()
Keeping the set options in the context when the component is still used
can be useful for debugging purposes.
2012-07-30 00:33:13 +02:00
Stefano Sabatini
a74dcb7dc0 lavfi/color: cache and reuse colored picture in context
Avoid to fill the same picture again and again with the same content.

Optimize computation, and provides an example for the use of the
AV_PERM_REUSE permission flag.
2012-07-30 00:33:13 +02:00
Stefano Sabatini
47b6b7a2b9 lavfi/color: reindent after the previous commit 2012-07-30 00:33:13 +02:00
Stefano Sabatini
e5d617aa6d lavfi/color: drop support for old deprecated syntax 2012-07-30 00:31:43 +02:00
Stefano Sabatini
ad2022ac83 lavfi/testsrc: add comment in options 2012-07-30 00:30:21 +02:00
Michael Niedermayer
7c26761b81 Merge commit 'fe1c1198e670242f3cf9e3e1eef27cff77f3ee23'
* commit 'fe1c1198e670242f3cf9e3e1eef27cff77f3ee23':
  lavf: use dts difference instead of AVPacket.duration in find_stream_info()
  avf: introduce nobuffer option
  fate: make yadif tests consistent across systems
  vf_hqdn3d: support 9 and 10bit colordepth
  vf_hqdn3d: reduce intermediate precision
  vf_hqdn3d: simplify and optimize
  factor identical ff_inplace_start_frame out of two filters
  vf_hqdn3d: cosmetics
  avprobe/avconv: fix tentative declaration compile errors on MSVS.

Conflicts:
	doc/APIchanges
	ffmpeg.c
	ffprobe.c
	libavformat/avformat.h
	libavformat/options_table.h
	libavformat/utils.c
	libavformat/version.h
	tests/fate/filter.mak
	tests/ref/fate/filter-yadif-mode0
	tests/ref/fate/filter-yadif-mode1

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-29 23:04:49 +02:00
Justin Ruggles
be51e589cd af_asyncts: avoid overflow in out_size with large delta values 2012-07-29 14:31:54 -04:00
Justin Ruggles
70d71b5801 af_asyncts: add first_pts option
This allows for padding/trimming at the start of stream. By default, no
assumption is made about the first frame's expected pts, so no padding or
trimming is done.
2012-07-29 14:31:54 -04:00
Michael Niedermayer
706bd8ea19 Merge remote-tracking branch 'qatar/master'
* qatar/master: (35 commits)
  h264_idct_10bit: port x86 assembly to cpuflags.
  x86inc: clip num_args to 7 on x86-32.
  x86inc: sync to latest version from x264.
  fft: rename "z" to "zc" to prevent name collision.
  wv: return meaningful error codes.
  wv: return AVERROR_EOF on EOF, not EIO.
  mp3dec: forward errors for av_get_packet().
  mp3dec: remove a pointless local variable.
  mp3dec: remove commented out cruft.
  lavfi: bump minor to mark stabilizing the ABI.
  FATE: add tests for yadif.
  FATE: add a test for delogo video filter.
  FATE: add a test for amix audio filter.
  audiogen: allow specifying random seed as a commandline parameter.
  vc1dec: Override invalid macroblock quantizer
  vc1: avoid reading beyond the last line in vc1_draw_sprites()
  vc1dec: check that coded slice positions and interlacing match.
  vc1dec: Do not ignore ff_vc1_parse_frame_header_adv return value
  configure: Move parts that should not be user-selectable to CONFIG_EXTRA
  lavf: remove commented out cruft in avformat_find_stream_info()
  ...

Conflicts:
	Makefile
	configure
	libavcodec/vc1dec.c
	libavcodec/x86/h264_deblock.asm
	libavcodec/x86/h264_deblock_10bit.asm
	libavcodec/x86/h264dsp_mmx.c
	libavfilter/version.h
	libavformat/mp3dec.c
	libavformat/utils.c
	libavformat/wv.c
	libavutil/x86/x86inc.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-29 02:16:26 +02:00
Loren Merritt
1ad715dbf3 vf_hqdn3d: support 9 and 10bit colordepth
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-07-28 14:20:06 -07:00
Loren Merritt
0f583e6cc5 vf_hqdn3d: reduce intermediate precision
11% faster on penryn, 7% on sandybridge, 5% on bulldozer
Negligible change to output.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-07-28 14:19:01 -07:00
Loren Merritt
85e228c71d vf_hqdn3d: simplify and optimize
14% faster on penryn, 2% on sandybridge, 9% on bulldozer

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-07-28 14:15:14 -07:00
Loren Merritt
fb44e7401f factor identical ff_inplace_start_frame out of two filters
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-07-28 14:15:14 -07:00
Loren Merritt
60b9785530 vf_hqdn3d: cosmetics
Change code style to match the rest of libav.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-07-28 14:12:22 -07:00
Nicolas George
efcfcf8793 avf_concat: fix silence duration.
concat_in.pts starts at 0 for each segment, so the duration
of the silence was too long, except at the first stitch.
2012-07-28 15:14:01 +02:00
Nicolas George
4ce87ecf2a asrc_flite: do not crash on multiple instances.
The voice register functions return the same voice structure
upon multiple registration. It causes us two problems:

If we delete a voice without deregistering it, it leaves
a dangling pointer inside the library.

If we delete or unregister a voice at uninit, it may still
be in use by another instance of the filter.

The second problem is solved by keeping an usage counter inside
asrc_flite. This is not thread-safe, but neither is flite itself.
2012-07-28 15:13:46 +02:00
Anton Khirnov
b3fa478823 lavfi: bump minor to mark stabilizing the ABI. 2012-07-28 14:33:48 +02:00
Nicolas George
9a757cca34 avf_concat: fix min value for v option. 2012-07-28 11:48:14 +02:00
Stefano Sabatini
66a5201819 lavfi: add flite audio source 2012-07-28 11:06:43 +02:00
Stefano Sabatini
32390d6767 lavfi: move movie and amovie to a "multimedia sources" section
Since the recent changes, movie and amovie are able to deal with more
than one type of stream, so they should be categorized as "multimedia
sources" rather than audio/video sources.
2012-07-28 10:50:11 +02:00
Michael Niedermayer
c6963a220d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  proresdsp: port x86 assembly to cpuflags.
  lavr: x86: improve non-SSE4 version of S16_TO_S32_SX macro
  lavfi: better channel layout negotiation
  alac: check for truncated packets
  alac: reverse lpc coeff order, simplify filter
  lavr: add x86-optimized mixing functions
  x86: add support for fmaddps fma4 instruction with abstraction to avx/sse
  tscc2: fix typo in array index
  build: use COMPILE template for HOSTOBJS
  build: do full flag handling for all compiler-type tools
  eval: fix printing of NaN in eval fate test.
  build: Rename aandct component to more descriptive aandcttables
  mpegaudio: bury inline asm under HAVE_INLINE_ASM.
  x86inc: automatically insert vzeroupper for YMM functions.
  rtmp: Check the buffer length of ping packets
  rtmp: Allow having more unknown data at the end of a chunk size packet without failing
  rtmp: Prevent reading outside of an allocate buffer when receiving server bandwidth packets

Conflicts:
	Makefile
	configure
	libavcodec/x86/proresdsp.asm
	libavutil/eval.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 23:42:19 +02:00
Justin Ruggles
743f07062a lavfi: better channel layout negotiation
Allow substitution of channel pairs in the input for nearby channel pairs in
the output in order to get a closer match. Also weigh LFE channel mismatch
differently to favor matching the same layout without LFE over one less
channel with LFE.
2012-07-27 14:15:33 -04:00
Steven Robertson
b3841db133 vf_alphamerge: Fix reversed conditional
Reviewed-by: Nicolas George
2012-07-27 14:00:04 +02:00
Michael Niedermayer
7333798c85 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libopenjpeg: support YUV and deep RGB pixel formats
  Fix typo in v410 decoder.
  vf_yadif: unset cur_buf on the input link.
  vf_overlay: ensure the overlay frame does not get leaked.
  vf_overlay: prevent premature freeing of cur_buf
  Support urlencoded http authentication credentials
  rtmp: Return an error when the client bandwidth is incorrect
  rtmp: Return proper error code in handle_server_bw
  rtmp: Return proper error code in handle_client_bw
  rtmp: Return proper error codes in handle_chunk_size
  lavr: x86: add missing vzeroupper in ff_mix_1_to_2_fltp_flt()
  vp8: Replace x*155/100 by x*101581>>16.
  vp3: don't use calls to inline asm in yasm code.
  x86/dsputil: put inline asm under HAVE_INLINE_ASM.
  dsputil_mmx: fix incorrect assembly code
  rtmp: Factorize the code by adding handle_invoke
  rtmp: Factorize the code by adding handle_chunk_size
  rtmp: Factorize the code by adding handle_ping
  rtmp: Factorize the code by adding handle_client_bw
  rtmp: Factorize the code by adding handle_server_bw

Conflicts:
	libavcodec/libopenjpegdec.c
	libavcodec/x86/dsputil_mmx.c
	libavfilter/vf_overlay.c
	libavformat/Makefile
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-26 21:37:15 +02:00
William Yu
d5d5e3dabe lavfi/af_amerge: avfilter_copy_buffer_ref_props will overwrite output pts 2012-07-26 10:05:58 +02:00
Anton Khirnov
b5c8aa745e vf_yadif: unset cur_buf on the input link.
The buffer is stored internally, so this prevents it from being unreffed
automatically.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-26 00:01:04 +02:00
Anton Khirnov
f431315a86 vf_overlay: ensure the overlay frame does not get leaked.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-26 00:01:04 +02:00
Michael Niedermayer
08fc1ad151 vf_overlay: prevent premature freeing of cur_buf
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-26 00:01:04 +02:00
Stefano Sabatini
e564de26b3 lavfi/avfilter.h: add doxy for AVFilterLink.out_buf 2012-07-25 10:03:34 +02:00
Stefano Sabatini
b73be80d48 lavfi/avfilter.h: add doxy for AVFilterLink.cur_buf 2012-07-25 10:01:29 +02:00
Diego Biurrun
49c45a2624 avfilter: Fix printf format string conversion specifier
libavfilter/avfilter.c:224:9: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘int’ [-Wformat]
2012-07-25 09:24:25 +02:00
Nicolas George
ddcb99bb51 vf_deshake: set cur_buf to NULL.
Fix a segfault.
2012-07-23 22:44:25 +02:00
Paul B Mahol
ebe846fa73 vf_colormatrix: add missing semicolon
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-23 19:58:13 +00:00
Michael Niedermayer
2cb4d51654 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  v410dec: Implement explode mode support
  zerocodec: fix direct rendering.
  wav: init st to NULL to avoid a false-positive warning.
  wavpack: set bits_per_raw_sample for S32 samples to properly identify 24-bit
  h264: refactor NAL decode loop
  RTMPTE protocol support
  RTMPE protocol support
  rtmp: Add ff_rtmp_calc_digest_pos()
  rtmp: Rename rtmp_calc_digest to ff_rtmp_calc_digest and make it global
  swscale: add missing HAVE_INLINE_ASM check.
  lavfi: place x86 inline assembly under HAVE_INLINE_ASM.
  vc1: Add a test for interlaced field pictures
  swscale: Mark all init functions as av_cold
  swscale: x86: Drop pointless _mmx suffix from filenames
  lavf: use conditional notation for default codec in muxer declarations.
  swscale: place inline assembly bilinear scaler under HAVE_INLINE_ASM.
  dsputil: ppc: cosmetics: pretty-print
  dsputil: x86: add SHUFFLE_MASK_W macro
  configure: respect CC_O setting in check_cc

Conflicts:
	Changelog
	configure
	libavcodec/v410dec.c
	libavcodec/zerocodec.c
	libavformat/asfenc.c
	libavformat/version.h
	libswscale/utils.c
	libswscale/x86/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 21:25:09 +02:00
Nicolas George
a7ac05ce2f src_movie: implement multiple outputs.
The audio and video code paths were too different,
most of the decoding has been rewritten.
2012-07-23 17:14:59 +02:00
Nicolas George
05776119c1 buffersrc: use avfilter_get_buffer_ref_from_frame. 2012-07-23 17:14:59 +02:00