aboutsummaryrefslogtreecommitdiff
path: root/libavutil
AgeCommit message (Collapse)Author
2012-05-20opt: add AV_OPT_TYPE_IMAGE_SIZE.Nicolas George
2012-05-20lavu/tree: perform minor fixes to av_tree_insert() documentationStefano Sabatini
2012-05-18lavu/error: fix make checkheaders.Clément Bœsch
The errors need to be defined before including functions depending on them. See av_size_mult() for instance. stddef.h is included for the prototype of av_sterror (use of size_t).
2012-05-18lavu/parseutils: fix specification for av_parse_time()Stefano Sabatini
2012-05-16Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (26 commits) fate: use diff -b in oneline comparison Add missing version bumps and APIchanges/Changelog entries. lavfi: move buffer management function to a separate file. lavfi: move formats-related functions from default.c to formats.c lavfi: move video-related functions to a separate file. fate: make smjpeg a demux test fate: separate sierra-vmd audio and video tests fate: separate smacker audio and video tests libmp3lame: set supported channel layouts. avconv: automatically insert asyncts when -async is used. avconv: add support for audio filters. lavfi: add asyncts filter. lavfi: add aformat filter lavfi: add an audio buffer sink. lavfi: add an audio buffer source. buffersrc: add av_buffersrc_write_frame(). buffersrc: fix invalid read in uninit if the fifo hasn't been allocated lavfi: rename vsrc_buffer.c to buffersrc.c avfiltergraph: reindent lavfi: add channel layout/sample rate negotiation. ... Conflicts: Changelog doc/APIchanges doc/filters.texi ffmpeg.c ffprobe.c libavcodec/libmp3lame.c libavfilter/Makefile libavfilter/af_aformat.c libavfilter/allfilters.c libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/avfiltergraph.c libavfilter/buffersrc.c libavfilter/defaults.c libavfilter/formats.c libavfilter/src_buffer.c libavfilter/version.h libavfilter/vf_yadif.c libavfilter/vsrc_buffer.c libavfilter/vsrc_buffer.h libavutil/avutil.h tests/fate/audio.mak tests/fate/demux.mak tests/fate/video.mak Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-15fifo: add av_fifo_grow()Michael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-15Add missing version bumps and APIchanges/Changelog entries.Anton Khirnov
2012-05-14lavu/bprint: add av_bprint_reset().Clément Bœsch
2012-05-10Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (25 commits) rv40dsp x86: MMX/MMX2/3DNow/SSE2/SSSE3 implementations of MC ape: Use unsigned integer maths arm: dsputil: fix overreads in put/avg_pixels functions h264: K&R formatting cosmetics for header files (part II/II) h264: K&R formatting cosmetics for header files (part I/II) rtmp: Implement check bandwidth notification. rtmp: Support 'rtmp_swfurl', an option which specifies the URL of the SWF player. rtmp: Support 'rtmp_flashver', an option which overrides the version of the Flash plugin. rtmp: Support 'rtmp_tcurl', an option which overrides the URL of the target stream. cmdutils: Add fallback case to switch in check_stream_specifier(). sctp: be consistent with socket option level configure: Add _XOPEN_SOURCE=600 to Solaris preprocessor flags. vcr1enc: drop pointless empty encode_init() wrapper function vcr1: drop pointless write-only AVCodecContext member from VCR1Context vcr1: group encoder code together to save #ifdefs vcr1: cosmetics: K&R prettyprinting, typos, parentheses, dead code, comments mov: make one comment slightly more specific lavr: replace the SSE version of ff_conv_fltp_to_flt_6ch() with SSE4 and AVX lavfi: move audio-related functions to a separate file. lavfi: remove some audio-related function from public API. ... Conflicts: cmdutils.c libavcodec/h264.h libavcodec/h264_mvpred.h libavcodec/vcr1.c libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/defaults.c libavfilter/internal.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10avutil/log: allow av_log_set_callback (NULL)Michael Niedermayer
Idea-by: Don Moir <donmoir@comcast.net> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (27 commits) libxvid: Give more suitable names to libxvid-related files. libxvid: Separate libxvid encoder from libxvid rate control code. jpeglsdec: Remove write-only variable in ff_jpegls_decode_lse(). fate: cosmetics: lowercase some comments fate: Give more consistent names to some RealVideo/RealAudio tests. lavfi: add avfilter_get_audio_buffer_ref_from_arrays(). lavfi: add extended_data to AVFilterBuffer. lavc: check that extended_data is properly set in avcodec_encode_audio2(). lavc: pad last audio frame with silence when needed. samplefmt: add a function for filling a buffer with silence. samplefmt: add a function for copying audio samples. lavr: do not try to copy to uninitialized output audio data. lavr: make avresample_read() with NULL output discard samples. fate: split idroq audio and video into separate tests fate: improve dependencies fate: add convenient shorthands for ea-vp6, libavcodec, libavutil tests fate: split some combined tests into separate audio and video tests fate: fix dependencies for probe tests mips: intreadwrite: fix inline asm for gcc 4.8 mips: intreadwrite: remove unnecessary inline asm ... Conflicts: cmdutils.h configure doc/APIchanges doc/filters.texi ffmpeg.c ffplay.c libavcodec/internal.h libavcodec/jpeglsdec.c libavcodec/libschroedingerdec.c libavcodec/libxvid.c libavcodec/libxvid_rc.c libavcodec/utils.c libavcodec/version.h libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/buffersink.h tests/Makefile tests/fate/aac.mak tests/fate/audio.mak tests/fate/demux.mak tests/fate/ea.mak tests/fate/image.mak tests/fate/libavutil.mak tests/fate/lossless-audio.mak tests/fate/lossless-video.mak tests/fate/microsoft.mak tests/fate/qt.mak tests/fate/real.mak tests/fate/screen.mak tests/fate/video.mak tests/fate/voice.mak tests/fate/vqf.mak tests/ref/fate/ea-mad tests/ref/fate/ea-tqi Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-09lavr: replace the SSE version of ff_conv_fltp_to_flt_6ch() with SSE4 and AVXJustin Ruggles
The current SSE version is slower than the MMX version on Athlon64 and Sandy Bridge, but the SSE4 and AVX versions are faster on Sandy Bridge.
2012-05-09samplefmt: add a function for filling a buffer with silence.Anton Khirnov
2012-05-09samplefmt: add a function for copying audio samples.Anton Khirnov
2012-05-09mips: intreadwrite: fix inline asm for gcc 4.8Mans Rullgard
Just like gcc 4.6 and later on ARM, gcc 4.8 on MIPS generates inefficient code when a known-unaligned location is used as a memory input operand. This applies the same fix as has been previously done to the ARM version of the code. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-09mips: intreadwrite: remove unnecessary inline asmMans Rullgard
GCC actually handles unaligned accesses correctly in all cases except, absurdly, 32-bit loads on mips64. The remaining asm is thus not needed, and removing it results in better code. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-09error: Try to make av_strerror() closer to binary identical across platforms.Michael Niedermayer
This should fix the parseutils fate test. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-09parseutils: use strings instead of integers for error codes.Michael Niedermayer
error values can differ between platforms. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-09parseutils: fix ;/, errorMichael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: rtmp: Support 'rtmp_live', an option which specifies if the media is a live stream. av_samples_fill_array: Mark unmodified function argument as const. lagarith: add YUY2 decoding support Support decoding unaligned rgb24 lagarith. dv: Split profile handling code into a separate file. flvenc: use AVFormatContext, not AVCodecContext for logging. mov: Remove write-only variable in mov_read_chan(). fate: Change the probe-format refs to match the final text format committed. fate: Add avprobe as a make dependency Add probe fate tests to test for regressions in detecting media types. fate: Add oneline comparison method qdm2: clip array indices returned by qdm2_get_vlc(). avplay: properly close/reopen AVAudioResampleContext on channel layout change avcodec: do not needlessly set packet size to 0 in avcodec_encode_audio2() avcodec: for audio encoding, reset output packet when it is not valid avcodec: refactor avcodec_encode_audio2() to merge common branches avcodec: remove fallbacks for AVCodec.encode() in avcodec_encode_audio2() Conflicts: ffplay.c libavcodec/Makefile libavcodec/dvdata.c libavcodec/dvdata.h libavcodec/qdm2.c libavcodec/utils.c libavformat/flvenc.c libavformat/mov.c tests/Makefile Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08av_samples_fill_array: Mark unmodified function argument as const.Diego Biurrun
libavcodec/utils.c:274: warning: passing argument 3 of ‘av_samples_fill_arrays’ discards qualifiers from pointer target type ./libavutil/samplefmt.h:151: note: expected ‘uint8_t *’ but argument is of type ‘const uint8_t *’
2012-05-08Add yuva422p pix_fmt.Carl Eugen Hoyos
2012-05-07Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: libschroedinger: Switch to function names more in line with Libav style. Move code shared between libdirac and libschroedinger to libschroedinger. lavfi: uninline avfilter_copy_buffer_ref_props(). lavf: add missing '*' in a doxy. h264: Remove a commented-out function pointer typedef. txd: Remove write-only variable in txd_decode_frame(). mmvideo.c: Remove unused variable in mm_decode_pal(). build: cosmetics: Add missing end-of-line backslashes to item lists. build: cosmetics: Split HEADERS/OBJS/PROGS lists into one entry per line. libschroedinger: Move a function to avoid a forward declaration. pthread: warn on high thread counts vf_yadif: fix missing error handling for avfilter_poll_frame() avprobe: allow showing only one container/stream property. lavfi: support audio in avfilter_copy_frame_props(). lavfi: avfilter_merge_formats: handle case where inputs are same lavc: add sample rate and channel layout to AVFrame. zerocodec: check if the previous frame is missing doc: clarify check for NULL pointer style Conflicts: doc/APIchanges doc/developer.texi ffprobe.c libavcodec/Makefile libavcodec/avcodec.h libavcodec/libdirac_libschro.c libavcodec/libdirac_libschro.h libavcodec/mmvideo.c libavcodec/txd.c libavcodec/version.h libavcodec/zerocodec.c libavfilter/Makefile libavfilter/avfilter.c libavfilter/version.h libavformat/Makefile libavutil/Makefile Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-07build: cosmetics: Add missing end-of-line backslashes to item lists.Diego Biurrun
2012-05-07build: cosmetics: Split HEADERS/OBJS/PROGS lists into one entry per line.Diego Biurrun
2012-05-05Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: configure: add POWER[5-7] support arm: intreadwrite: revert 16-bit load asm to old version for gcc < 4.6 vqavideo: return error if image size is not a multiple of block size cosmetics: indentation avformat: only fill-in interpolated timestamps if duration is non-zero avformat: remove a workaround for broken timestamps Conflicts: libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-03arm: intreadwrite: revert 16-bit load asm to old version for gcc < 4.6Mans Rullgard
Commit adebad0 "arm: intreadwrite: fix inline asm constraints for gcc 4.6 and later" caused some older gcc versions to miscompile code. This reverts to the old version of the code for these compilers. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-02Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: arm: intreadwrite: disable inline asm for gcc 4.7 and later arm: intreadwrite: fix inline asm constraints for gcc 4.6 and later indeo3: fix motion vector validation pcm_bluray: set bits_per_raw_sample for > 16-bit twinvq: fix out of bounds array access lavr: use 8.8 instead of 10.6 as the 16-bit fixed-point mixing coeff type Conflicts: doc/APIchanges libavcodec/indeo3.c libavcodec/pcm-mpeg.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-02arm: intreadwrite: disable inline asm for gcc 4.7 and laterMans Rullgard
Starting with version 4.7, gcc properly supports unaligned memory accesses on ARM. Not using the inline asm with these compilers results in better code. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-02arm: intreadwrite: fix inline asm constraints for gcc 4.6 and laterMans Rullgard
With a dereferenced type-cast pointer as memory operand, gcc 4.6 and later will sometimes copy the data to a temporary location, the address of which is used as the operand value, if it thinks the target address might be misaligned. Using a pointer to a packed struct type instead does the right thing. The 16-bit case is special since the ldrh instruction addressing modes are limited compared to ldr. The "Uq" constraint produces a memory reference suitable for an ldrsb instruction, which supports the same addressing modes as ldrh. However, the restrictions appear to apply only when the operand addresses a single byte. The memory reference must thus be split into two operands each targeting one byte. Finally, the "Uq" constraint is only available in ARM mode. The Thumb-2 ldrh instruction supports most addressing modes so the normal "m" constraint can be used there. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-04-30lavu/opt: clarify error message in set_key_value_pair()Stefano Sabatini
2012-04-30libavutil: Document the shortcommings of av_parse_cpu_flags()Michael Niedermayer
and suggest that av_parse_cpu_caps() be used. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-30cmdutils/avutil: Move cpu caps parse code into av_parse_cpu_caps()Michael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-27parseutils: replace setenv() by putenv().Nicolas George
putenv() seems to be more portable.
2012-04-26Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: dsputil: fix invalid array indexing configure: add libavresample to rpath build: icc: silence some warnings fft-test: add option to set cpuflag mask cpu: recognise only cpu flag names pertinent to the architecture avutil: add av_parse_cpu_flags() function vp8: armv6: fix non-armv6t2 build vp8: armv6 optimisations vp8: arm: separate ARMv6 functions from NEON ARM: add some compatibility macros mov: support eac3 audio avf: fix faulty check in has_duration Conflicts: configure doc/APIchanges ffmpeg.c libavcodec/arm/Makefile libavcodec/arm/asm.S libavcodec/arm/vp8dsp_armv6.S libavcodec/arm/vp8dsp_init_arm.c libavutil/avutil.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-25cpu: recognise only cpu flag names pertinent to the architectureMans Rullgard
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-04-25avutil: add av_parse_cpu_flags() functionMans Rullgard
This moves the cpu flag parsing code from avconv to avutil so it can be accessed elsewhere. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-04-25Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: FATE: use updated reference for aac-latm_stereo_to_51 avconv: use libavresample Add libavresample FATE: avoid channel mixing in lavf-dv_fmt Conflicts: Changelog Makefile cmdutils.c configure doc/APIchanges ffmpeg.c tests/lavf-regression.sh tests/ref/lavf/dv_fmt tests/ref/seek/lavf_dv Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-24Add libavresampleJustin Ruggles
This is a new library for audio sample format, channel layout, and sample rate conversion.
2012-04-24parseutils: reliably detect out-of-range alpha.Reimar Döffinger
This should fix the FATE test on ARM (not tested), but it should also detect alpha values like 2^128 reliably as invalid which would be another out-of-range case with implementation-dependant behaviour. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-24Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: matroska: Clear prev_pkt between seeks. avutil: change default buffer size alignment for sample buffer functions audemux: Add a sanity check for the number of channels Remove libdirac decoder. matroska: Add incremental parsing of clusters. avconv: fix off by one check in complex_filter mpegts: Try seeking back even for nonseekable protocols swscale: K&R formatting cosmetics (part III) Conflicts: configure doc/general.texi doc/platform.texi ffmpeg.c libavcodec/Makefile libavcodec/allcodecs.c libavcodec/libdirac.h libavcodec/libdiracdec.c libavformat/au.c libavformat/mpegts.c libswscale/input.c tests/ref/seek/lavf_mkv Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-23avutil: change default buffer size alignment for sample buffer functionsJustin Ruggles
Aligning nb_samples will give both correct plane pointer alignment and enough padding for SIMD-optimized functions.
2012-04-23parseutils: add av_parse_time() test.Nicolas George
2012-04-23parseutils: make av_parse_time() check for failure.Nicolas George
Until now, av_parse_time() would accept "1:00" as "1" and silently ignore ":00". This patch also includes a few cosmetic changes.
2012-04-23parseutils: add FATE test.Nicolas George
2012-04-22Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: ARM: allow runtime masking of CPU features dsputil: remove unused functions mov: Treat keyframe indexes as 1-origin if starting at non-zero. mov: Take stps entries into consideration also about key_off. Remove lowres video decoding Conflicts: ffmpeg.c ffplay.c libavcodec/arm/vp8dsp_init_arm.c libavcodec/libopenjpegdec.c libavcodec/mjpegdec.c libavcodec/mpegvideo.c libavcodec/utils.c libavformat/mov.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-22ARM: allow runtime masking of CPU featuresMans Rullgard
This allows masking CPU features with the -cpuflags avconv option which is useful for testing different optimisations without rebuilding. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-04-20Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: avcodec: add a cook parser to get subpacket duration FATE: allow lavf tests to alter input parameters FATE: replace the acodec-pcm_s24daud test with an enc_dec_pcm checksum test FATE: replace the acodec-g726 test with 4 new encode/decode tests FATE: replace current g722 encoding tests with an encode/decode test FATE: add a pattern rule for generating asynth wav files FATE: optionally write a WAVE header in audiogen avutil: add audio fifo buffer Conflicts: doc/APIchanges libavcodec/version.h libavutil/avutil.h tests/Makefile tests/codec-regression.sh tests/fate/voice.mak tests/lavf-regression.sh tests/ref/acodec/g722 tests/ref/acodec/g726 tests/ref/acodec/pcm_s24daud tests/ref/lavf/dv_fmt tests/ref/lavf/gxf tests/ref/lavf/mxf tests/ref/lavf/mxf_d10 tests/ref/seek/lavf_dv Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-20Fix compilation with NASM.Reimar Döffinger
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-20avutil: add audio fifo bufferJustin Ruggles
The functions operate on the sample level rather than the byte level and work with all audio sample formats.