Commit Graph

1630 Commits

Author SHA1 Message Date
Michael Niedermayer
45fb647495 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  bitstream: Properly promote av_reverse values before shifting.
  libavutil/swscale: YUV444P10/YUV444P9 support.
  H.264: Fix high bit depth explicit biweight
  h264: Fix 10-bit H.264 x86 chroma v loopfilter asm.
  Replace DEBUG_SEEK/DEBUG_SI + av_log combinations by av_dlog.
  Update copyright year for ac3enc_opts_template.c.
  adts: Adjust frame size mask to follow the specification.
  movenc: Add RTP muxer/hinter options
  movenc: Pass the RTP AVFormatContext to the SDP generation
  rtspenc: Add RTP muxer options
  rtspenc: Add an AVClass for setting muxer specific options
  rtpenc_chain: Pass the rtpflags options through to the chained muxer
  rtpenc: Declare the rtp flags private AVOptions in rtpenc.h
  sdp: Reindent after the previous commit
  rtpenc: MP4A-LATM payload support
  avoptions: Add an av_opt_flag_is_set function for inspecting flag fields
  sdp: Allow passing an AVFormatContext to the SDP generation
  mov: Fix wrong timestamp generation for fragmented movies that have time offset caused by the first edit list entry.
  mpeg12: more advanced ffmpeg mpeg2 aspect guessing code.
  swscale: split YUYV output out of yuv2packed[12X]_c().

Conflicts:
	doc/APIchanges
	libavcodec/Makefile
	libavcodec/h264dsp_template.c
	libavcodec/mpeg12.c
	libavformat/aacdec.c
	libavformat/avidec.c
	libavformat/internal.h
	libavformat/movenc.c
	libavformat/rtpenc.c
	libavformat/rtpenc_latm.c
	libavformat/sdp.c
	libavformat/version.h
	libavutil/avutil.h
	libavutil/pixfmt.h
	libswscale/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-11 03:51:36 +02:00
Michael Niedermayer
0fd82fedc9 pixfmt: Replace 9/10bit deprecation by a technical explanation.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-10 21:46:51 +02:00
Ronald S. Bultje
103278f7b0 libavutil/swscale: YUV444P10/YUV444P9 support.
Also add missing glue code for recently added YUV422P10 formats
to swscale.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-06-10 15:12:24 -04:00
Martin Storsjö
cb7c11cc9e avoptions: Add an av_opt_flag_is_set function for inspecting flag fields
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-06-10 10:47:42 +03:00
Michael Niedermayer
6a137dde3e dict: This code was developed in ffmpeg and not libav, nor by libav developers.
Correct copyright notices.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-10 00:19:25 +02:00
Michael Niedermayer
f9ecb849ef Merge remote-tracking branch 'qatar/master'
* qatar/master:
  crypto: Use av_freep instead of av_free
  lavf: don't try to free private options if priv_data is NULL.
  swscale: fix types of assembly arguments.
  swscale: move two macros that are only used once into caller.
  swscale: remove unused function.
  options: Add missing braces around struct initializer.
  mov: Remove leftover crufty debug statement with references to a local file.
  dvbsubdec: Fix compilation of debug code.
  Remove all uses of now deprecated metadata functions.
  Move metadata API from lavf to lavu.

Conflicts:
	doc/APIchanges
	libavformat/aiffdec.c
	libavformat/asfdec.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/cafdec.c
	libavformat/matroskaenc.c
	libavformat/mov.c
	libavformat/mp3enc.c
	libavformat/wtv.c
	libavutil/avutil.h
	libavutil/internal.h
	libswscale/swscale.c
	libswscale/x86/swscale_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-09 04:47:19 +02:00
Anton Khirnov
d9f80ea2a7 Move metadata API from lavf to lavu.
Rename it to AVDictionary, since it will be used as such.  Tags
documentation and metadata conversion API is lavf-specific, so remains
there.
2011-06-08 07:43:45 +02:00
Michael Niedermayer
d552f616a2 Merge remote-tracking branch 'qatar/master'
* qatar/master: (28 commits)
  Remove some non-compiling debug messages.
  ffplay: Fix non-compiling debug printf and replace it by av_dlog.
  H264: x86 predict init cosmetics.
  ac3enc: Fix linking of AC-3 encoder without the E-AC-3 encoder.
  Move E-AC-3 encoder functions to a separate eac3enc.c file.
  ac3enc: remove convenience macro, #define DEBUG
  ac3enc: remove unused #define
  vc1: re-initialize tables after width/height change.
  APIchanges: fill-in git commit hash for av_get_bytes_per_sample() addition
  samplefmt: add av_get_bytes_per_sample()
  iirfilter: fix biquad filter coefficients.
  swscale: remove duplicate conversion routine in swScale().
  swscale: add yuv2planar/packed function typedefs.
  swscale: integrate yuv2nv12X_C into yuv2yuvX() function pointers.
  swscale: reindent x86 init code.
  swscale: extract SWS_FULL_CHR_H_INT conditional into init code.
  swscale: cosmetics.
  swscale: remove alp/chr/lumSrcOffset.
  swscale: un-special-case yuv2yuvX16_c().
  shorten: Remove stray DEBUG #define and corresponding av_dlog statement.
  ...

Conflicts:
	doc/APIchanges
	libavcodec/ac3enc.c
	libavutil/avutil.h
	libavutil/samplefmt.c
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/x86/swscale_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-08 05:25:28 +02:00
Stefano Sabatini
a6703faa15 samplefmt: add av_get_bytes_per_sample()
Deprecate av_get_bits_per_sample_fmt(), which was a misnamed function.

For the moment we don't have sample formats with a non-integer number
of bytes, in that case we may need to create a new
av_get_bits_per_sample() function. In the meanwhile we prefer to adopt
this variant, since avoids divisions by 8 all over the place.
2011-06-07 13:06:41 -04:00
Diego Biurrun
e01bb264e7 inverse.c: Replace unnecessary intmath.h header by necessary stdint.h. 2011-06-07 10:31:26 +02:00
Diego Biurrun
dc25d79f49 Drop unnecessary directory prefixes from #include directives. 2011-06-07 10:31:26 +02:00
Michael Niedermayer
a39bd458a0 mem: Trying to workaround posix_memalign() bug on OSX
This patch is based on a patch by John Stebbins

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-07 03:17:42 +02:00
Stefano Sabatini
d58ed64a89 eval: add support for pow() function
It is a more search-friendly alternative to the ^ operator.
2011-06-07 00:37:00 +02:00
Stefano Sabatini
263f57c6d7 pixdesc: remove duplicated header inclusion 2011-06-06 11:34:45 +02:00
Stefano Sabatini
0bc2cca12f samplefmt: switch nb_channels/nb_samples params order in av_samples_alloc()
This is consistent with the order of parameters in
av_samples_fill_arrays().
2011-06-06 10:12:46 +02:00
Stefano Sabatini
e1c7414812 samplefmt: change layout for arrays created by av_samples_alloc() and _fill_arrays()
The new layout is consistent with that of the av_image_() API, and
simplifies understanding and copy operations, it also preserves
alignment information which was lost with the previous layout.

This breaks API/ABI, but since the function was never referenced in
the code (and it isn't unlikely already used by someone) then this
should not be a problem.
2011-06-06 10:11:48 +02:00
Michael Niedermayer
f9569249c2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Remove some unused scripts from tools/.
  Add x86 assembly for some 10-bit H.264 intra predict functions.
  v4l2: do not force NTSC as standard
  Skip tableprint.h during 'make checkheaders'.
  Remove unnecessary LIBAVFORMAT_BUILD #ifdef.
  Drop explicit filenames from @file Doxygen tags.
  Skip generated table headers during 'make checkheaders'.
  lavf,lavc: free avoptions in a generic way.
  AVOptions: add av_opt_free convenience function.
  tableprint: Restore mistakenly deleted common.h #include for FF_ARRAY_ELEMS.
  tiff: print log in case of unknown / unsupported tag.
  tiff: fix linesize for mono-white/black formats.
  Fix build of eval-test program
  configure: Document --enable-vaapi
  ac3enc: extract all exponents for the frame at once

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-06 03:33:58 +02:00
Diego Biurrun
fb8648ad4b Remove unnecessary LIBAVFORMAT_BUILD #ifdef. 2011-06-05 16:01:01 +02:00
Anton Khirnov
b39b06233d AVOptions: add av_opt_free convenience function. 2011-06-05 15:01:36 +02:00
Mans Rullgard
5a4a71257c Fix build of eval-test program
eval.c has moved to libavutil, move the TESTPROGS entry too.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-05 11:47:14 +01:00
Mans Rullgard
d0989bed22 Fix error check in av_file_map()
On failure, mmap() returns MAP_FAILED, which may or may not be -1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-04 17:03:25 +01:00
Michael Niedermayer
5ad38d93e8 cpudetect: add av_force_cpu_flags()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-02 21:03:54 +02:00
Michael Niedermayer
40c29d42cf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  swscale: Remove unused variable.
  ARM: simplify inline asm with 64-bit operands

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-31 02:08:20 +02:00
Mans Rullgard
6bb70dfd74 ARM: simplify inline asm with 64-bit operands
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-30 21:19:57 +01:00
Michael Niedermayer
2c10ee2358 error.c: fix compile flags
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-30 03:11:54 +02:00
Michael Niedermayer
b8a43bc1b5 Merge remote-tracking branch 'qatar/master' into master
* qatar/master: (27 commits)
  ac3enc: fix LOCAL_ALIGNED usage in count_mantissa_bits()
  ac3dsp: do not use the ff_* prefix when referencing ff_ac3_bap_bits.
  ac3dsp: fix loop condition in ac3_update_bap_counts_c()
  ARM: unbreak build
  ac3enc: modify mantissa bit counting to keep bap counts for all values of bap instead of just 0 to 4.
  ac3enc: split mantissa bit counting into a separate function.
  ac3enc: store per-block/channel bap pointers by reference block in a 2D array rather than in the AC3Block struct.
  get_bits: add av_unused tag to cache variable
  sws: replace all long with int.
  ARM: aacdec: fix constraints on inline asm
  ARM: remove unnecessary volatile from inline asm
  ARM: add "cc" clobbers to inline asm where needed
  ARM: improve FASTDIV asm
  ac3enc: use LOCAL_ALIGNED macro
  APIchanges: fill in git hash for av_get_pix_fmt_name (0420bd7).
  lavu: add av_get_pix_fmt_name() convenience function
  cmdutils: remove OPT_FUNC2
  swscale: fix crash in bilinear scaling.
  vpxenc: add VP8E_SET_STATIC_THRESHOLD mapping
  webm: support stereo videos in matroska/webm muxer
  ...

Conflicts:
	Changelog
	cmdutils.c
	cmdutils.h
	doc/APIchanges
	doc/muxers.texi
	ffmpeg.c
	ffplay.c
	libavcodec/ac3enc.c
	libavcodec/ac3enc_float.c
	libavcodec/avcodec.h
	libavcodec/get_bits.h
	libavcodec/libvpxenc.c
	libavcodec/version.h
	libavdevice/libdc1394.c
	libavformat/matroskaenc.c
	libavutil/avutil.h
	libswscale/rgb2rgb.c
	libswscale/swscale.c
	libswscale/swscale_template.c
	libswscale/x86/swscale_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-29 03:34:35 +02:00
Stefano Sabatini
e71f26086a lavu: add av_get_pix_fmt_name() convenience function
Also deprecate avcodec_get_pix_fmt_name() in its favor.
2011-05-28 18:25:40 +02:00
Mans Rullgard
a84f82560e ARM: improve FASTDIV asm
This uses one register less.  Also add missing "cc" clobber.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 15:00:17 +01:00
Stefano Sabatini
8f653e28f5 lavu: add av_get_pix_fmt_name() convenience function
Also deprecate avcodec_get_pix_fmt_name() in its favor.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-28 09:44:18 -04:00
Michael Niedermayer
87ababd7c5 avopt: fix segfault
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 16:55:07 +02:00
Michael Niedermayer
027264cb82 Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  ARM: add ARMv6 optimised av_clip_uintp2
  ARM: remove volatile from asm statements in libavutil/intmath
  ARM: fix av_clipl_int32_arm()
  v4l: include avdevice.h
  ffserver: move close_connection() call to avoid a temporary string and copy.
  lavf: initialize demuxer private options.
  AVOptions: set string default values.
  lavdevice: mark v4l for removal on next major bump.
  swscale: fix compile on ppc.
  swscale: fix compile on x86-32.
  build: Remove generated .version file on distclean.
  configure: Add -D_GNU_SOURCE to CPPFLAGS on OS/2.
  doc: Drop hint at --enable-memalign-hack for MinGW, it is now autodetected.
  ffplay: Remove disabled code.
  Mark parameterless function declarations as 'void'.
  swscale: use av_clip_uint8() in yuv2yuv1_c().
  swscale: remove VOF/VOFW.
  swscale: split chroma buffers into separate U/V planes.
  swscale: replace formatConvBuffer[VOF] by allocated array.
  rgb2rgb: remove duplicate mmx/mmx2/3dnow/sse2 functions.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 02:53:21 +02:00
Mans Rullgard
ca7d8256e3 ARM: add ARMv6 optimised av_clip_uintp2
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-26 20:13:00 +01:00
Mans Rullgard
77cd6efc33 ARM: remove volatile from asm statements in libavutil/intmath
The volatile qualifiers are not needed on these statements as
their effects are fully specified by constraints.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-26 20:13:00 +01:00
Mans Rullgard
74cc8c52ed ARM: fix av_clipl_int32_arm()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-26 20:12:59 +01:00
Anton Khirnov
6c117d43c9 AVOptions: set string default values. 2011-05-26 20:03:03 +02:00
Michael Niedermayer
39e4206dc6 Merge remote-tracking branch 'qatar/master'
* qatar/master: (32 commits)
  doc: create separate section for audio encoders
  swscale: Remove orphaned, commented-out function declaration.
  swscale: Eliminate rgb24toyv12_c() duplication.
  Remove h263_msmpeg4 from MpegEncContext.
  APIchanges: Fill in git hash for fps_probe_size (30315a8)
  avformat: Add fpsprobesize as an AVOption.
  avoptions: Return explicitly NAN or {0,0} if the option isn't found
  rtmp: Reindent
  rtmp: Don't try to do av_malloc(0)
  tty: replace AVFormatParameters.sample_rate abuse with a private option.
  Fix end time of last chapter in compute_chapters_end
  ffmpeg: get rid of useless AVInputStream.nb_streams.
  ffmpeg: simplify managing input files and streams
  ffmpeg: purge redundant AVInputStream.index.
  lavf: deprecate AVFormatParameters.channel.
  libdc1394: add a private option for channel.
  dv1394: add a private option for channel.
  v4l2: reindent.
  v4l2: add a private option for channel.
  lavf: deprecate AVFormatParameters.standard.
  ...

Conflicts:
	doc/APIchanges
	doc/encoders.texi
	ffmpeg.c
	libavdevice/alsa-audio.h
	libavformat/version.h
	libavutil/opt.c
	libswscale/rgb2rgb.h
	libswscale/rgb2rgb_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-26 03:28:22 +02:00
Martin Storsjö
80068da3a0 avoptions: Return explicitly NAN or {0,0} if the option isn't found
This actually matches what av_get_double did earlier, the
0.0/0.0 division was intentional, for producing NAN.

Still keeping the check for the return value from
av_get_number, for clarity.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-05-25 22:01:33 +03:00
Stefano Sabatini
3c2c52baec eval: implement not() expression 2011-05-25 12:42:19 +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
Ronald S. Bultje
e973557211 Move emms_c() from libavcodec to libavutil. 2011-05-24 14:48:49 -04:00
Stefano Sabatini
6b4c0be558 mem: define the MAX_MALLOC_SIZE constant and use it in place of INT_MAX
This makes re-dimensionating the constant simpler, since now it is
defined only in one place.
2011-05-24 00:41:14 +02:00
Michael Niedermayer
01a73d6cef Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ffmpeg: Don't trigger url_interrupt_cb on the first signal
  avoptions: Check the return value from av_get_number
  dct32_sse: eliminate some spills
  Fix dct32() compilation with --disable-yasm

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-23 04:29:51 +02:00
Martin Storsjö
8089b7fa8c avoptions: Check the return value from av_get_number
This avoids doing a division by zero if the option wasn't found,
or wasn't an option of an appropriate type.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-05-22 22:06:17 +03: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
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
Martin Storsjö
0eed5016a2 avoptions: Support getting flag values using av_get_int 2011-05-21 03:37:43 +02:00
Michael Niedermayer
9132f2ad0c eval: opensolaris strtod() cannot handle 0x1234
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-18 00:01:40 +02:00
Stefano Sabatini
c0170d0973 imgutils: introduce internal image_get_linesize() and use it
Allow to factorize code between av_image_get_linesize() and
av_image_fill_linesizes(), and add missing checks.

Increase robustness.
2011-05-16 23:55:54 +02:00
Stefano Sabatini
0d73227c71 imgutils: make av_image_get_linesize() return AVERROR(EINVAL) for invalid pixel formats 2011-05-16 23:55:47 +02:00
Stefano Sabatini
10931720cd imgutils: generalize linesize computation for bitstream formats
Make it a subcase of the general algorithm used for the non-bitstream
case. Simplify, and make av_image_get_linesize() and
av_image_fill_linesizes() correctly return the right value when plane
!= 0.

In particular fix a crash occurring with:
-vf format=monow,showinfo,format=monow.
2011-05-15 12:27:07 +02:00
Michael Niedermayer
58c03f6d7d Merge remote branch 'qatar/master'
* qatar/master:
  swscale: properly inline bits/endianness in yuv2yuvX16inC().
(We didnt pull the bug)  swscale: fix clipping of 9/10bit YUV420P.
  Add av_clip_uintp2() function
(our patch / duplicate)  dfa: fix buffer overflow checks to avoid integer overflows.
(our patch / duplicate)  movenc: always write esds descriptor length using 4 bytes.
(our patch / duplicate)  ffmpeg: use parse_number_and_die() when it makes sense
(No thanks)  ffmpeg: get rid of the 'q' key schizofrenia

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-14 02:19:58 +02:00
Mans Rullgard
1550f45a89 Add av_clip_uintp2() function
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-13 16:45:24 -04:00
Michael Niedermayer
72153419b5 Merge remote branch 'qatar/master'
* qatar/master: (33 commits)
  rtpdec_qdm2: Don't try to parse data packet if no configuration is received
  ac3enc: put the counting of stereo rematrixing bits in the same place to make the code easier to understand.
  ac3enc: clean up count_frame_bits() and count_frame_bits_fixed()
  mpegvideo: make FF_DEBUG_DCT_COEFF output coeffs via av_log() instead of just via AVFrame.
  srtdec: make sure we don't write past the end of buffer
  wmaenc: improve channel count and bitrate error handling in encode_init()
  matroskaenc: make sure we don't produce invalid file with no codec ID
  matroskadec: check that pointers were initialized before accessing them
  lavf: fix function name in compute_pkt_fields2 av_dlog message
  lavf: fix av_find_best_stream when providing a wanted stream.
  lavf: fix av_find_best_stream when decoder_ret is given and using a related stream.
  ffmpeg: factorize quality calculation
  tiff: add support for SamplesPerPixel tag in tiff_decode_tag()
  tiff: Prefer enum TiffCompr over int for TiffContext.compr.
  mov: Support edit list atom version 1.
  configure: Enable libpostproc automatically if GPL code is enabled.
  Cosmetics: fix prototypes in oggdec
  oggdec: fix memleak with continuous streams.
  matroskaenc: add missing new line in av_log() call
  dnxhdenc: add AVClass in private context.
  ...

swscale changes largely rewritten by me or replaced by baptsites due to lots of bugs in ronalds code.
Above code is also just in case its not obvios to a large extended duplicates that where cherry picked
from ffmpeg.

Conflicts:
	configure
	ffmpeg.c
	libavformat/matroskaenc.c
	libavutil/pixfmt.h
	libswscale/ppc/swscale_template.c
	libswscale/swscale.c
	libswscale/swscale_template.c
	libswscale/utils.c
	libswscale/x86/swscale_template.c
	tests/fate/h264.mak
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_copy_le
	tests/ref/lavfi/pixfmts_null_le
	tests/ref/lavfi/pixfmts_scale_le
	tests/ref/lavfi/pixfmts_vflip_le

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-13 04:40:40 +02:00
Michael Niedermayer
f0eb373f9d pixfmt-Comment: Fix big/little typo
Found-by: kierank
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-12 20:07:39 +02:00
Ivan Kalvachev
518cdff81f Fix posix_memalign() usage when libavutil is compiled outside FFmpeg.
To use posix_memalign() "#define _XOPEN_SOURCE 600" have to be defined.
FFmpeg configure defines it from the command line through config.mak,
but when libavutil is used outside of FFmpeg the define is missing.

Signed-off-by: Ivan Kalvachev <ikalvachev@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-12 17:35:30 +02:00
Diego Biurrun
046f081b46 configure: Do not unconditionally add -D_POSIX_C_SOURCE to CPPFLAGS.
Adding _POSIX_C_SOURCE to CPPFLAGS globally produces all sorts of problems
since it causes certain system functions to be hidden on some (BSD) systems.
The solution is to only add the flag on systems that really require it, i.e.
glibc-based ones.

This change makes BSD systems compile out-of-the-box without the need for
adding specific flags manually.  It also allows dropping a number of flags
set manually on a file-per-file basis, but were only present to work around
breakage introduced by the presence of _POSIX_C_SOURCE.

Also add _XOPEN_SOURCE to CPPFLAGS for glibc systems.  We use XSI extensions
in several places already, so it is preferable to define it globally instead
of littering source files with individual #defines only needed for glibc.
2011-05-12 11:41:59 +02:00
Michael Niedermayer
612122b187 Merge remote branch 'qatar/master'
* qatar/master: (32 commits)
  10-bit H.264 x86 chroma v loopfilter asm
  Port SMPTE S302M audio decoder from FFmbc 0.3. [Copyright headers corrected]
  Fix crash of interlaced MPEG2 decoding
  h264pred: fix one more aliasing violation.
  doc/APIchanges: fill in missing hashes and dates.
  flacenc: use proper initializers for AVOption default values.
  lavc: deprecate named constants for deprecated antialias_algo.
  aac: workaround for compilation on cygwin
  swscale: extend YUV422p support to 10bits depth
  tiff: add support for inverted FillOrder for uncompressed data
  Remove unused softfloat implementation.
  h264pred: fix aliasing violations.
  rotozoom: Eliminate French variable name.
  rotozoom: Check return value of fread().
  rotozoom: Return an error value instead of calling exit().
  rotozoom: Make init_demo() return int and check for errors on invocation.
  rotozoom: Drop silly UINT8 typedef.
  rotozoom: Drop some unnecessary parentheses.
  rotozoom: K&R coding style cosmetics
  rtsp: Only do keepalive using GET_PARAMETER if the server supports it
  ...

Conflicts:
	Changelog
	cmdutils.c
	doc/APIchanges
	doc/general.texi
	ffmpeg.c
	ffplay.c
	libavcodec/h264pred_template.c
	libavcodec/resample.c
	libavutil/pixfmt.h
	libavutil/softfloat.c
	libavutil/softfloat.h
	tests/rotozoom.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-12 04:51:24 +02:00
Ronald S. Bultje
c8f487deae swscale: fix YUV420P 9/10bit support.
Fix handling of input if not in native endianness, and add support for
9/10-bit output. This allows us to force endianness of YUV420P 9/10bit
in the H264/10bit fate tests, which should fix them on big-endian
systems.
2011-05-11 19:15:14 -04:00
Michael Niedermayer
a18eff49c0 av_compare_ts: Improve speed when calculations fit in 64bit.
about 110 cpu cycles before 60 cpu cycles afterwards.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-11 20:41:19 +02:00
Baptiste Coudurier
5c511ad4ce swscale: extend YUV422p support to 10bits depth
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-11 14:38:14 +02:00
Diego Biurrun
bea705752d Remove unused softfloat implementation.
The softfloat functionality is unused, not installed and incomplete.
On platforms without floating point units, the compiler provides a softfloat
implementation so there is no point in carrying this code around locally.
2011-05-11 13:43:30 +02:00
Reimar Döffinger
3b6bbfa063 Check syntax even if DEBUG is not defined. 2011-05-11 12:26:25 +02:00
Michael Niedermayer
59eb12faff Merge remote branch 'qatar/master'
* qatar/master: (30 commits)
  AVOptions: make default_val a union, as proposed in AVOption2.
  arm/h264pred: add missing argument type.
  h264dsp_mmx: place bracket outside #if/#endif block.
  lavf/utils: fix ff_interleave_compare_dts corner case.
  fate: add 10-bit H264 tests.
  h264: do not print "too many references" warning for intra-only.
  Enable decoding of high bit depth h264.
  Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 decoder.
  Add support for higher QP values in h264.
  Add the notion of pixel size in h264 related functions.
  Make the h264 loop filter bit depth aware.
  Template dsputil_template.c with respect to pixel size, etc.
  Template h264idct_template.c with respect to pixel size, etc.
  Preparatory patch for high bit depth h264 decoding support.
  Move some functions in dsputil.c into a new file dsputil_template.c.
  Move the functions in h264idct into a new file h264idct_template.c.
  Move the functions in h264pred.c into a new file h264pred_template.c.
  Preparatory patch for high bit depth h264 decoding support.
  Add pixel formats for 9- and 10-bit yuv420p.
  Choose h264 chroma dc dequant function dynamically.
  ...

Conflicts:
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavcodec/alpha/dsputil_alpha.c
	libavcodec/arm/dsputil_init_arm.c
	libavcodec/arm/dsputil_init_armv6.c
	libavcodec/arm/dsputil_init_neon.c
	libavcodec/arm/dsputil_iwmmxt.c
	libavcodec/arm/h264pred_init_arm.c
	libavcodec/bfin/dsputil_bfin.c
	libavcodec/dsputil.c
	libavcodec/h264.c
	libavcodec/h264.h
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_loopfilter.c
	libavcodec/h264_ps.c
	libavcodec/h264_refs.c
	libavcodec/h264dsp.c
	libavcodec/h264idct.c
	libavcodec/h264pred.c
	libavcodec/mlib/dsputil_mlib.c
	libavcodec/options.c
	libavcodec/ppc/dsputil_altivec.c
	libavcodec/ppc/dsputil_ppc.c
	libavcodec/ppc/h264_altivec.c
	libavcodec/ps2/dsputil_mmi.c
	libavcodec/sh4/dsputil_align.c
	libavcodec/sh4/dsputil_sh4.c
	libavcodec/sparc/dsputil_vis.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/x86/dsputil_mmx.c
	libavformat/options.c
	libavformat/utils.c
	libavutil/pixfmt.h
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/swscale_template.c
	tests/ref/seek/lavf_avi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-11 05:47:02 +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
Oskar Arvidsson
42239ced65 Add pixel formats for 9- and 10-bit yuv420p.
Also add support for these formats in libswscale.

Needed for high bit depth h264 decoding.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10 07:24:19 -04:00
Michael Niedermayer
08675bb399 mem: Choose alignment at compile time depending on AVX enabledness.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 03:15:42 +02:00
Michael Niedermayer
1735440773 fifo: use av_freep()
With this change libavutil uses av_freep() everywhere where it makes sense.
Remaining av_free() use in it has the used pointer become inaccessible quickly
soo zeroing makes no sense.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-09 21:23:45 +02:00
Michael Niedermayer
5192788321 avutil: add divide & modulo that round like unsigned ones do that is down.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-09 17:47:22 +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
Alex Converse
847aaec682 log: Fix an oob array read. 2011-05-08 13:34:05 -07:00
Alex Converse
1569554153 Ban strncpy() it's too easy to misuse. 2011-05-08 12:49:07 -07:00
Baptiste Coudurier
299cbe2c9b PIX_FMT_422P10 support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-08 14:06:04 +02:00
Michael Niedermayer
c8981edd90 Only add 1 byte to av_malloc(0) when it actually returned NULL
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-07 16:21:54 +02:00
Michael Niedermayer
91ff05f6ac Make av_realloc(0) behave like our av_malloc(0)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-07 16:21:47 +02:00
Reimar Döffinger
314374e579 Use MAP_FAILED to check for mmap failure instead of manually
recreating the value.
2011-05-07 10:34:55 +02:00
Stefano Sabatini
e5272e729e eval: add sqrt function for computing the square root 2011-05-05 18:38:35 +02:00
Michael Niedermayer
10ff2967ea file: Fix mmap error check.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 00:52:03 +02:00
Alex Converse
1a5e4fd8c5 Replace strncpy() with av_strlcpy(). 2011-05-03 21:20:13 -07:00
Michael Niedermayer
3862ebba23 AVOptions: av_set_string3() allow NULL strings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-02 02:58:09 +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
Reinhard Tartler
0247bdee25 Fix races in default av_log handler
Prevent competing threads from overwriting (shared) buffers.

Original patch by: Michael Niedermayer <michaelni@gmx.at>
2011-04-29 22:46:13 +02:00
Diego Biurrun
e610098e7b bswap.h: Remove disabled code. 2011-04-29 20:01:04 +02:00
Anton Khirnov
35ceaa7376 Move ff_dynarray_add to lavu and make it public. 2011-04-29 17:34:56 +02:00
Anton Khirnov
5a43bd5e26 options: simplify av_find_opt by using av_next_option. 2011-04-29 09:11:46 +02:00
Michael Niedermayer
5a36783bc4 Fix all malloc(0) issues
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-29 02:17:38 +02:00
Baptiste Coudurier
e91946ed23 Rename y400a to gray8a.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-27 21:36:30 +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
Diego Biurrun
e6ff064845 Eliminate pointless '#if 1' statements without matching '#else'. 2011-04-26 20:18:27 +02:00
Vitor Sessak
13dfce3d44 Increase alignment of av_malloc() as needed by AVX ASM.
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-04-26 18:18:22 +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
Michael Niedermayer
7b376b398a Merge remote branch 'qatar/master'
* qatar/master:
  Handle unicode file names on windows
  rtp: Rename the open/close functions to alloc/free
  Lowercase all ff* program names.
  Refer to ff* tools by their lowercase names.
NOT Pulled  Replace more FFmpeg instances by Libav or ffmpeg.
  Replace `` by $() syntax in shell scripts.
  patcheck: Allow overiding grep program(s) through environment variables.
NOT Pulled  Remove stray libavcore and _g binary references.
  vorbis: Rename decoder/encoder files to follow general file naming scheme.
  aacenc: Fix whitespace after last commit.
  cook: Fix small typo in av_log_ask_for_sample message.
  aacenc: Finish 3GPP psymodel analysis for non mid/side cases.
  Remove RDFT dependency from AAC decoder.
  Add some debug log messages to AAC extradata
  Fix mov debug (u)int64_t format strings.
  bswap: use native types for av_bwap16().
  doc: FLV muxing is supported.
  applehttp: Handle AES-128 encrypted streams
  Add a protocol handler for AES CBC decryption with PKCS7 padding
  doc: Mention that DragonFly BSD requires __BSD_VISIBLE set

Conflicts:
	ffplay.c
	ffprobe.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-24 03:41:22 +02:00
Jason Garrett-Glaser
15919ee48f bswap: use native types for av_bwap16().
This prevents a call to bytestream_get_be16() using a movzwl both before
and after the ror instruction, which is obviously inefficient. Arm uses
the same trick also.

Sintel decoding goes from (avg+SD) 9.856 +/- 0.003 to 9.797 +/- 0.003 sec.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-22 20:05:48 -04:00
Stefano Sabatini
22180e7a5a error: remove symbols which were deprecated before the big bump
The removal was not applied when merging the Libav patches, because
there was still code referencing the symbols.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-22 10:21:21 +02:00
Michael Niedermayer
8772156be0 Merge remote branch 'qatar/master'
* qatar/master:
  APIChanges: document git revision for CODEC_CAP_SLICE_THREADS addition.
  Introduce slice threads flag.
  FATE: allow forcing thread-type when doing threaded fate runs.
  Use av_log_ask_for_sample() where appropriate.
  error: sort, pack, and align error code and string definitions
  The stabilization period after version bumps should be one month, not one week.
  applehttp: Expose the stream bitrate via metadata
  doc: Add some initial docs on the applehttp demuxer
  Provide a fallback version of the libm function trunc
  libavdevice: Define _XOPEN_SOURCE for usleep
  lavc: provide deprecated avcodec_thread_init until next major version
  lavc: provide the opt.h header until the next bump
  error: change AVERROR_EOF value
  error: remove AVERROR_NUMEXPECTED
  error: add error code AVERROR_OPTION_NOT_FOUND, and use it in opt.c

Conflicts:
	libavcodec/h264.c
	libavutil/error.c
	libavutil/error.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-22 03:54:30 +02:00
Stefano Sabatini
8d67218bd7 error: sort, pack, and align error code and string definitions
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-21 16:48:29 +02:00
Martin Storsjö
23d3931a6a Provide a fallback version of the libm function trunc
This fixes compilation on DOS.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-21 14:13:09 +03:00
Anton Khirnov
a975dbc86b error: change AVERROR_EOF value
The current value is masking the POSIX error code EPIPE, which has a
different semantics.

This breaks API.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-21 07:10:16 +02:00
Stefano Sabatini
79157f400b error: remove AVERROR_NUMEXPECTED
AVERROR_NUMEXPECTED is used only in the image muxer and demuxer, and
has a too much specific meaning, which is better explained through a
log message. Thus it can be replaced by AVERROR(EINVAL).

This breaks API.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-21 07:10:16 +02:00
Stefano Sabatini
58f8463947 error: add error code AVERROR_OPTION_NOT_FOUND, and use it in opt.c
The new error code is better than AVERROR(ENOENT), which has a
completely different semantics ("No such file or directory").

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-21 07:10:16 +02:00
Michael Niedermayer
10d2ae8cf7 Merge remote branch 'qatar/master'
* qatar/master:
  Makefile: Include dependencies for test tools, too
  Remove a version check in av_log made unnecessary by the big bump.
  update last major version increase dates in APIchanges
  Reduce picture size for yadif.
  oggdec: use av_freep() instead of av_free()
  avio: Fix sanity checks in ffurl_read*
  libavformat: Free AVFormatContext->streams
  libavformat: Make protocols pass URLContext as log context where available
  asf: remove commented out code in asf_read_seek
not pulled:  libpostproc: Remove crufty code disabled by the big bump.
  Reflect 0.7_beta1 release in the Changelog
not pulled:  sws: remove disabled cruft.
  lavu: remove disabled ff_random_get_seed cruft.
  lavu: remove disabled sha1 cruft.

Conflicts:
	Changelog
	libavutil/sha1.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-21 03:37:05 +02:00
Diego Biurrun
63de9e7d80 Remove a version check in av_log made unnecessary by the big bump. 2011-04-20 18:19:04 +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
Anton Khirnov
975c273405 lavu: remove disabled ff_random_get_seed cruft. 2011-04-19 21:50:12 +02:00
Anton Khirnov
488d2b6349 lavu: remove disabled sha1 cruft. 2011-04-19 21:50:10 +02:00
Anton Khirnov
490a022d86 lavu: remove misc disabled cruft 2011-04-19 19:04:28 +02:00
Anton Khirnov
9e5c62c97f lavu: remove FF_API_OLD_IMAGE_NAMES cruft 2011-04-19 19:04:01 +02:00
Anton Khirnov
516fb5e40c lavu: remove FF_API_OLD_EVAL_NAMES cruft 2011-04-19 19:03:44 +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
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
Michael Niedermayer
256c5b08bf Fix BE/LE order of pix formats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-14 22:35:23 +02:00
Alexis Ballier
a3a0af4fb1 avutil: make aes and sha api public
The functions are already av_ prefixed and sha1 header is already provided.
Install libavutil/{aes,sha}.h

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-14 22:14:30 +02:00
Michael Niedermayer
ab8cfd45f8 Merge remote branch 'qatar/master'
* qatar/master:
  avio: add more documentation for AVIOContext.
  Parse sprite data for WMVP and WVP2, and decode sprites for the latter
  Replace outdated info on the FAQ
  Redefine sameq
  pad: fix example explanation
  gradfun: add notice from the MPlayer manual
  eval: add support for trunc, ceil, and floor functions
  documentation: add setdar and setsar description to filters.texi
  avio: document some members of AVIOContext.
  avio: document avio_close().
  avio: cosmetics, vertically align comments.
  avio: cosmetics, group the reading functions.
  avio: cosmetics, merge all the FF_API_OLD_AVIO blocks.
  avio: cosmetics, move AVIOContext to start of the file.
  avio: update file header.
  os: fix OpenBSD/PowerPC compilation
  pixfmt: add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE
  oggdec: fix demuxing chained audio streams
  fix typo

Conflicts:
	doc/filters.texi
	libavformat/avio.h
	libavutil/pixfmt.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-11 04:08:08 +02:00
Oskar Arvidsson
d4497f6dfb Add pixel formats for 9- and 10-bit yuv420p.
Also add support for these formats in libswscale.

Needed for high bit depth h264 decoding.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-10 22:33:41 +02:00
Stefano Sabatini
5ae4251c3b eval: add support for trunc, ceil, and floor functions
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-10 09:24:21 +02:00
Brad
3028b6ede6 os: fix OpenBSD/PowerPC compilation
When attempting to re-enable the AltiVec support it was noticed
that we need to undefine _POSIX_C_SOURCE to appease the headers
for ff_get_cpu_flags_ppc() to be able to compile.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-10 05:02:29 +02:00
Peter Ross
73389754c9 pixfmt: add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE
PIX_FMT_BGR48LE is used by PhantomCINE demuxer.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-10 04:44:37 +02:00
Alexis Ballier
dc41036105 Install libavutil/{aes,sha}.h
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 17:54:52 +02:00
Stefano Sabatini
25601bc564 eval: add support for trunc, ceil, and floor functions
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-05 15:34:16 +02:00
Michael Niedermayer
48ee302e0f Fix apparently exploitable race condition.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-25 02:24:32 +01:00
Michael Niedermayer
0a51362b3f log:Sanitize string of most control chars before printing.
This may be security relevant depending upon the used terminal.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-25 01:16:22 +01:00
Michael Niedermayer
2fd41c9067 Merge remote-tracking branch 'newdev/master'
* newdev/master:
  avio: make udp_set_remote_url/get_local_port internal.
  asfdec: also subtract preroll when reading simple index object
  matroskaenc: remove a variable that's unused after bc17bd9.
  avio: cosmetics - nicer vertical alignment.
  Remove unnecessary icc version checks
  Disable 'attribute "foo" ignored' warnings from icc
  rtsp: Don't use a locale dependent format string
  Add xd55 codec tag for XDCAM HD422 720p25 CBR files.
  configure: get libavcodec version from new version.h header
  lavc: move the version macros to a new installed header.
  matroskaenc: simplify get_aac_sample_rates by using ff_mpeg4audio_get_config
  Do not use format string "%0.3f" for RTSP Range field.
  Add apply_window_int16() to DSPContext with x86-optimized versions and use it in the ac3_fixed encoder.
  Document usage of import libraries created by dlltool
  configure: Set the correct lib target for arm/wince dlltool
  fate: simplify regression-funcs.sh
  fate: add support for multithread testing

Conflicts:
	libavformat/rtspdec.c
	libavutil/attributes.h
	libavutil/internal.h
	libavutil/mem.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-24 02:16:11 +01:00
Mans Rullgard
820818a330 Remove unnecessary icc version checks
With unknown attribute warnings disabled, these checks are no
longer needed.  Removing them improves readability while having
no effect on generated code.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-23 12:39:58 +00:00
Michael Niedermayer
4fa0e24736 Merge remote-tracking branch 'newdev/master'
* newdev/master: (33 commits)
  Fix an infinite loop when RoQ encoded generated a frame with a size greater than the maximum valid size.
  Add kbdwin.o to AC3 decoder
  Detect byte-swapped AC-3 and support decoding it directly.
  cosmetics: indentation
  Always copy input data for AC3 decoder.
  ac3enc: make sym_quant() branch-free
  cosmetics: indentation
  Add a CPU flag for the Atom processor.
  id3v2: skip broken tags with invalid size
  id3v2: don't explicitly skip padding
  Make sure kbhit() is in conio.h
  fate: update wmv8-drm reference
  vc1: make P-frame deblock filter bit-exact.
  configure: Add the -D parameter to the dlltool command
  amr: Set the AVFMT_GENERIC_INDEX flag
  amr: Set the pkt->pos field properly to the start of the packet
  amr: Set the codec->bit_rate field based on the last packet
  rtsp: Specify unicast for TCP interleaved streams, too
  Set the correct target for mingw64 dlltool
  applehttp: Change the variable for stream position in seconds into int64_t
  ...

Conflicts:
	ffmpeg.c
	ffplay.c
	libavcodec/ac3dec.c
	libavformat/avio.h
	libavformat/id3v2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-23 02:42:56 +01:00
Michael Niedermayer
d375c10400 Fake-Merge remote-tracking branch 'ffmpeg-mt/master' 2011-03-22 22:36:57 +01:00
Justin Ruggles
45ed822550 cosmetics: indentation 2011-03-22 09:11:07 -04:00
Justin Ruggles
eba586b0d9 Add a CPU flag for the Atom processor.
The Atom has SSSE3 support, which is useful in many cases, but sometimes the
SSSE3 version is slower than the SSE2 equivalent on the Atom, but is generally
faster on other processors supporting SSSE3. This flag allows for selectively
disabling certain SSSE3 functions on the Atom.
2011-03-22 09:11:07 -04:00
Peter Ross
60c68c0ab9 Remove unused pixel format (PIX_FMT_UNUSED) and swap PIX_FMT_BGR48LE and PIX_FMT_BGR48BE enum order
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-21 12:49:57 +01:00
Peter Ross
43dc31f746 Add unused pixel format (PIX_FMT_UNUSED) to make PIX_FMT_BGR48BE an odd-valued enumeration
This is required for the isBE() macro internal to libswscale.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-19 17:55:50 +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
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
Peter Ross
e309fdc701 Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 15:11:31 +01: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
Michael Niedermayer
6947b0c42e Merge remote-tracking branch 'newdev/master'
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-15 16:48:42 +01:00
Nicolas George
bafa4dd3e6 Add AVERROR_EXIT.
This is different from AVERROR(EINTR) because calls that fail with EINTR
should usually be restarted.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-15 08:09:19 -04:00
Carl Eugen Hoyos
d667be2cea Attribute used is correctly supported by the Intel C compiler since version 11.1. 2011-03-03 00:25:02 +01:00
Carl Eugen Hoyos
a5b13b1423 Use macro __INTEL_COMPILER instead of __ICC.
__ICC is not supported on all platforms, this is an Intel documentation
bug that is supposed to be fixed in a future release.
(Intel issue 612289)
2011-03-02 13:38:21 +01:00
Mans Rullgard
f1f792117f x86: use raw opcode for xgetbv instruction
This allows the CPU detection to work with assemblers not supporting
the xgetbv mnemonic.  These include clang and some BSD versions.

All AVX code will be written for yasm, where the main assembler
is not involved.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit ef66953875)
2011-02-22 02:38:41 +01:00
Mans Rullgard
cdeba2de82 x86: check for AVX support
This adds configure and runtime checks for AVX support on x86 CPUs.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 87f1355f9b)
2011-02-20 19:05:47 +01:00
Mans Rullgard
ef66953875 x86: use raw opcode for xgetbv instruction
This allows the CPU detection to work with assemblers not supporting
the xgetbv mnemonic.  These include clang and some BSD versions.

All AVX code will be written for yasm, where the main assembler
is not involved.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-20 17:31:23 +00:00
Mans Rullgard
87f1355f9b x86: check for AVX support
This adds configure and runtime checks for AVX support on x86 CPUs.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-20 13:20:42 +00:00
Jason Garrett-Glaser
545dc699f8 Force inlining of avutil common routines
On some versions of gcc, these weren't always getting inlined due to hitting
the inline cap limit in some files.  This is generally bad, as most of these
functions are smaller inlined than not.
(cherry picked from commit eb3755a5aa)
2011-02-18 19:52:41 +01:00
Anton Khirnov
0ef52334ec lavf, lavu: bump minor versions and add an APIChanges entry for av_ prefixes
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 09d171b988)
2011-02-18 19:52:34 +01:00
Anton Khirnov
1b98107c8d Move find_info_tag to lavu and add av_ prefix to it
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit ab0287fcbd)
2011-02-18 19:52:33 +01:00
Stefano Sabatini
40c3fe2c08 Deprecate parse_date() in favor of av_parse_time().
The new av_parse_time() is created in libavutil/parseutils.h, all the
internal functions used by parse_date are moved to
libavutil/parseutils.c and made static.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit f6c7375a17)
2011-02-18 19:52:30 +01:00
Jason Garrett-Glaser
eb3755a5aa Force inlining of avutil common routines
On some versions of gcc, these weren't always getting inlined due to hitting
the inline cap limit in some files.  This is generally bad, as most of these
functions are smaller inlined than not.
2011-02-17 15:25:25 -08:00
Anton Khirnov
09d171b988 lavf, lavu: bump minor versions and add an APIChanges entry for av_ prefixes
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-17 15:40:17 +01:00
Anton Khirnov
ab0287fcbd Move find_info_tag to lavu and add av_ prefix to it
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-17 15:35:18 +01:00
Stefano Sabatini
f6c7375a17 Deprecate parse_date() in favor of av_parse_time().
The new av_parse_time() is created in libavutil/parseutils.h, all the
internal functions used by parse_date are moved to
libavutil/parseutils.c and made static.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-16 23:39:56 +00: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
Justin Ruggles
b7195837cd Add check for Athlon64 and similar AMD processors with slow SSE2.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 74b1f96859)
2011-02-13 00:54:05 +01:00
Justin Ruggles
74b1f96859 Add check for Athlon64 and similar AMD processors with slow SSE2.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-11 16:58:18 -05:00
Alexander Strange
b38f008ea6 Frame-based multithreading framework using pthreads
See doc/multithreading.txt for details on use in codecs.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-11 02:53:58 +01:00
Alexander Strange
37b00b47cb Frame-based multithreading framework using pthreads
See doc/multithreading.txt for details on use in codecs.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-09 09:17:28 -05:00
Clément Bœsch
b9004bd50c Remove a few if (p) av_freep(&p) forms
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 523d9407d5)
2011-02-06 20:31:44 +01:00
Clément Bœsch
523d9407d5 Remove a few if (p) av_freep(&p) forms
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-04 10:00:49 +00:00
Clément Bœsch
0c8eb72ec5 Avoid pointless check before calling free
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit dc75d6dbf2)
2011-02-04 03:10:10 +01:00
Anton Khirnov
e921bd57e3 Add forgotten minor API bumps and APIChanges entries
The bumps are for adding version.h and avio_{get/put}_str functions in
lavf and making av_dlog public in lavu.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-04 03:09:57 +01:00
Clément Bœsch
dc75d6dbf2 Avoid pointless check before calling free
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-03 01:36:00 +00:00
Anton Khirnov
4868bebe5b Add forgotten minor API bumps and APIChanges entries
The bumps are for adding version.h and avio_{get/put}_str functions in
lavf and making av_dlog public in lavu.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-02 22:42:39 +01:00
Mans Rullgard
0374152f89 Rename attribute_used to av_used and move it to attributes.h
This is consistent with most of the other attribute macros.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 365e3c7878)
2011-01-31 18:25:48 +01:00
Mans Rullgard
365e3c7878 Rename attribute_used to av_used and move it to attributes.h
This is consistent with most of the other attribute macros.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-31 16:01:26 +00: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
Luca Barbato
dfd2a005eb Replace dprintf with av_dlog
dprintf clashes with POSIX.1-2008
2011-01-29 23:55:37 +01:00
Mans Rullgard
4c56b4bc01 intfloat_readwrite: include "mathematics.h" for fallback macros
This allows this file to build on systems lacking NAN or INFINITY
in math.h.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit e781c4e6ff)
2011-01-26 03:43:31 +01:00
Mans Rullgard
d112aa5acc MIPS: use inline asm only when supported by compiler
(cherry picked from commit 7a5a168abe)
2011-01-26 03:43:28 +01:00
Mans Rullgard
e781c4e6ff intfloat_readwrite: include "mathematics.h" for fallback macros
This allows this file to build on systems lacking NAN or INFINITY
in math.h.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-25 15:57:53 +00:00
Reimar Döffinger
032f406864 Handle input or output len of 0 properly in lzo decoder.
(cherry picked from commit 7d5082600e)
2011-01-24 21:25:43 +01:00
Reimar Döffinger
7d5082600e Handle input or output len of 0 properly in lzo decoder. 2011-01-24 18:52:08 +01:00
Mans Rullgard
7a5a168abe MIPS: use inline asm only when supported by compiler 2011-01-23 19:05:08 +00:00
Mans Rullgard
ec5f57192a cpu-test: include stdio.h only for test prog 2011-01-18 20:48:24 +00:00
Mans Rullgard
324e7ee260 Use INFINITY and NAN macros instead of 1/0 and 0/0 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
Daniel Verkamp
73f6d31e6c Win32 support for av_file_map()
Originally committed as revision 26221 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-05 05:16:33 +00:00
Daniel Verkamp
dfaa9f3cb3 Recognize FFMPEG_FORCE_NOCOLOR environment variable on Win32
Fixes issue 2461

Originally committed as revision 26186 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-01 20:08:15 +00:00
Stefano Sabatini
f02cbc4590 Fix av_file_map(): replace stat(filename, &st) with fstat(fd, &st).
The file might be replaced between open() and stat().
Spotted by Mans.

Originally committed as revision 26075 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-22 16:16:31 +00:00
Stefano Sabatini
1b31037d62 Replace lstat() with stat() in av_file_map(). The lstat() use was wrong.
Originally committed as revision 26074 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-22 15:32:13 +00:00
Stefano Sabatini
0328b9ea39 Add av_file_map() and av_file_unmap() functions.
Originally committed as revision 26073 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-22 14:13:04 +00:00
Nicolas George
0bc55f5d32 Add AVERROR_*_NOT_FOUND codes.
Originally committed as revision 26056 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-19 09:01:02 +00:00
Ramiro Polla
e3c011c836 fix building of cpu-test by including required header
Originally committed as revision 25917 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-07 15:25:44 +00:00
Stefano Sabatini
3011ecdeb7 Introduce FFMPEG_FORCE_NOCOLOR, with the same meaning and use of
NO_COLOR (but properly prefixed for avoiding namespace conflicts).

Originally committed as revision 25899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-06 21:47:10 +00:00
Etienne Buira
129983408d Allow to force colored output.
Patch by Etienne Buira, etienne d buira d lists a free d fr

Originally committed as revision 25888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-05 13:56:49 +00:00
Stefano Sabatini
bb4afa13dd Deprecate avcodec_pix_fmt_string() in favor of
av_get_pix_fmt_string(), added to libavutil/pixdesc.h.

Originally committed as revision 25879 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-04 12:56:21 +00:00
Michael Niedermayer
b47541c7a3 Change the argument of memory allocation functions from unsigned int to size_t
with the next major bump in libavutil.

Originally committed as revision 25871 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-04 04:00:12 +00:00
Carl Eugen Hoyos
086e997e34 Intel C compiler 12.0 does not suport these attributes: may_alias, force_align_arg_pointer and alloc_size.
Originally committed as revision 25716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-10 12:45:41 +00:00
Stefano Sabatini
d2af7205a1 Use hierarchic names convention (prefix them with av_expr) for the
eval API.

More grep-friendly and more consistent with the rest of the FFmpeg
API.

Originally committed as revision 25708 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-08 14:06:49 +00:00
Stefano Sabatini
20fcd0797e Implement isnan() function evaluation.
Originally committed as revision 25666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-03 19:44:00 +00:00
Stefano Sabatini
4cabef0a9d Make strmatch() return 1 only if the string compared against the
prefix does not contain other characters which may belong to an
identifier.

This allows to distinguish for example to have different constants
with the same prefix (e.g. "foo" and "foobar").

Originally committed as revision 25626 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-01 09:34:21 +00:00
Stefano Sabatini
2b59fbe9b1 Add st, ld, while examples/tests.
Originally committed as revision 25625 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-01 09:34:18 +00:00
Stefano Sabatini
8bb12e71af Add examples of unary operators.
Originally committed as revision 25624 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-01 09:34:15 +00:00
Stefano Sabatini
63b1630356 Fix evaluation of expressions of the form: E1;E2.
The pointer to the char ';' has to be increased before to evaluate
";E2".

Originally committed as revision 25623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-01 09:34:12 +00:00
Stefano Sabatini
4ddade62dd Install libavutil/opt.h, its API is public.
Fix issue #2265.

Originally committed as revision 25420 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-08 23:42:25 +00:00
Ramiro Polla
6f74fb03cd Check whether compiler supports xmm registers in asm clobber list
Originally committed as revision 25362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-06 01:26:13 +00:00
Stefano Sabatini
3a1429ec3c Update av_cmp_q() documentation after r25338.
Originally committed as revision 25340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-05 08:44:18 +00:00
Michael Niedermayer
59a3bf0e51 Add selftest code for av_cmp_q().
Originally committed as revision 25339 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-05 01:43:34 +00:00
Michael Niedermayer
dec1126915 Make av_cmp_q() work with infinities and NAN.
Originally committed as revision 25338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-05 01:43:31 +00:00
Stefano Sabatini
6b4ed22f75 Make av_d2q() manage the case in which the value to convert is inf.
Originally committed as revision 25332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-04 13:41:01 +00:00
İsmail Dönmez
9276bdddca snowdsp: Explicitly state the operand sizes
Fixes compilation with clang's builtin assembler

Patch by İsmail Dönmez, ismail at namtrac dot org

Originally committed as revision 25331 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-04 13:08:13 +00:00
Stefano Sabatini
1405782cf4 Avoid cast of double nan to int.
It may cause exceptions on some platform.

Originally committed as revision 25311 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-02 09:50:56 +00:00
Måns Rullgård
0795b86174 avassert: add missing #include <stdlib.h>
Originally committed as revision 25286 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-01 13:55:20 +00:00
Måns Rullgård
f23ceeb84d avassert: prettify macro
Originally committed as revision 25285 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-01 13:55:16 +00:00
Måns Rullgård
b64b4134d5 Rename libavutil/assert.h to avassert.h
This avoids conflicts with the system assert.h.

Originally committed as revision 25284 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-01 13:55:13 +00:00
Michael Niedermayer
8a47d90b29 Fix av_cmp_q() with negative denominators.
Originally committed as revision 25283 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-01 12:00:29 +00:00
Michael Niedermayer
c619572a7b Fix a typo in the nameing of av_assert0() in currently not compiled code.
Originally committed as revision 25279 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-30 22:52:29 +00:00
Michael Niedermayer
b926b6282d av_assert() system.
With this the developer can now choose if he wants an assert always enabled or at which
compile time assert level. This can thus replace the #define NDEBUG hacks

Originally committed as revision 25278 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-30 21:57:31 +00:00
Stefano Sabatini
584b8edb99 Add missing case for FF_OPT_TYPE_DOUBLE in av_opt_set_defaults2().
Originally committed as revision 25265 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-29 21:42:03 +00:00
Stefano Sabatini
c85eef4ed8 Move av_set_options_string() from libavfilter to libavutil.
Originally committed as revision 25236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-27 22:09:53 +00:00
Stefano Sabatini
372e288408 Move av_get_token() from libavfilter to libavutil.
Originally committed as revision 25225 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-27 16:23:43 +00:00
Stefano Sabatini
be0e596a57 Simplify include, since opt.c is now in libavutil there is no need
to use the library path prefix for eval.h.

Originally committed as revision 25220 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-27 10:34:03 +00:00
Stefano Sabatini
8f1afd3b37 Cosmetics: apply misc style fixes.
Originally committed as revision 25219 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-27 10:01:44 +00:00
Stefano Sabatini
41f87daaa3 Bump version and update APIchanges after r25210.
Originally committed as revision 25216 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-27 00:30:14 +00:00
Måns Rullgård
3288177150 ARM: change return type of AV_RN16() to unsigned
This prevents gcc inserting useless UXTH instructions, at least
in some cases.

Originally committed as revision 25212 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-26 21:01:20 +00:00
Michael Niedermayer
6ed040408b Move AVOptions from libavcodec to libavutil
Originally committed as revision 25210 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-26 14:25:22 +00:00
Michael Niedermayer
d7cd001ff2 indent
Originally committed as revision 25178 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-24 16:18:40 +00:00
Michael Niedermayer
8a19053361 Cosmetic (rename detect_repeats to is_atty which matches the truth)
Originally committed as revision 25177 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-24 16:18:10 +00:00
Michael Niedermayer
1c1c80f0a3 2nd try to fix av_log() repeated detection
Originally committed as revision 25174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-24 15:37:01 +00:00
Tomas Härdin
bc6f0af289 Add av_popcount() to libavutil/common.h and bump minor version
Originally committed as revision 25120 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-14 14:45:43 +00:00
Michael Niedermayer
c157fe6356 Limit av_log repeat detection to terminals so as to avoid filling files with
lots of mess.

Originally committed as revision 25117 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-14 00:17:58 +00:00
Stefano Sabatini
4660143a2c Apply minor simplification in av_read_image_line().
Originally committed as revision 25112 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-12 22:00:45 +00:00
Måns Rullgård
78b19cf029 pixdesc: indent
Originally committed as revision 25111 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-12 21:39:57 +00:00
Måns Rullgård
9525243f59 pixdesc: use 8-bit accesses when possible in av_read/write_image_line()
This fixes out of bounds accesses for big endian formats and should be
a little faster.

Originally committed as revision 25110 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-12 21:39:54 +00:00
Stefano Sabatini
4b9ac6dedc Cosmetics: use x ? y : z construct and merge intialization and
definition for the val variable in av_read_image_line(). Simplify.

Originally committed as revision 25109 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-12 21:31:39 +00:00
Måns Rullgård
65d45cea34 Add missing #include <string.h> in x86/cpu.c
Originally committed as revision 25088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-09 19:40:59 +00:00
Måns Rullgård
a3f0d2b967 Cache detected CPU flags
Originally committed as revision 25085 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-09 18:51:49 +00:00
Måns Rullgård
9275438a19 Clean up av_get_cpu_flag()
Instead of defining functions in per-arch header files included
by the main cpu.c, define them normally and call them from the
generic one.

Originally committed as revision 25084 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-09 18:51:45 +00:00
Stefano Sabatini
c6c98d0897 Move mm_support() from libavcodec to libavutil, make it a public
function and rename it to av_get_cpu_flags().

Originally committed as revision 25076 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-08 15:07:14 +00:00
Stefano Sabatini
e778e50f63 Sort AV_CPU_FLAG* by value.
Originally committed as revision 25047 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-06 00:04:03 +00:00
Stefano Sabatini
d593b4ed02 Fix typo.
Originally committed as revision 25046 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-06 00:04:01 +00:00
Stefano Sabatini
7160bb716b Rename FF_MM_ symbols related to CPU features flags as AV_CPU_FLAG_
symbols, and move them from libavcodec/avcodec.h to libavutil/cpu.h.

Originally committed as revision 25040 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-04 09:59:08 +00:00
Benoit Fouet
573af7545e Add missing parentheses to AV_NE macro.
Originally committed as revision 24885 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-23 15:31:50 +00:00
Måns Rullgård
6a36facc3d Fix out-of-tree build
Originally committed as revision 24816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-17 18:48:56 +00:00
Stefano Sabatini
4f2d2e4ed9 Define macro AV_NE() and use it in libavdevice.
Help further refactoring.

Originally committed as revision 24814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-17 18:25:34 +00:00
Michael Niedermayer
fd3064b65e Make sure "Last message repeated" is printed.
Originally committed as revision 24573 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-28 12:08:26 +00:00
Stefano Sabatini
448524777a Add the M_PHI constant, contains an approximation of the golden ratio
irrational number.

Originally committed as revision 24439 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 22:05:21 +00:00
Diego Pettenò
3fc548df28 Make ff_inverse stay with libavutil, and optional copy it to libavcodec.
The ff_inverse table is used by FASTDIV macro, defined in libavutil, but up
to now the table was defined only in libavcodec.

After this change, the main copy of ff_inverse is part of libavutil (just
like FASTDIV), but if CONFIG_SMALL is unset, then a different copy is made
available to libavcodec, to avoid the performance penalty of using an
external look up table.

Dynamic linking works, because the libraries are linked with -Bsymbolic, so
the local copy of the symbol has priority over the external; static linking
works because the table is on a standalone object file in both libraries,
so the linker is able to discard one of the two.

Tested on Linux/x86-64 and Mac OS X/x86-64.

Originally committed as revision 24383 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 12:37:37 +00:00
Carl Eugen Hoyos
eedc4ee5d8 Use attribute force_align_arg_pointer only on x86_32.
Originally committed as revision 24290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-17 16:35:01 +00:00
Stefano Sabatini
617d56cafa Update lavu minor and add APIchanges entry after r24174 (add bswap.h
and intreadwrite.h API public interface).

Originally committed as revision 24190 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 11:49:44 +00:00
Måns Rullgård
b91d08f4a3 Install bswap.h and intreadwrite.h
Originally committed as revision 24174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:22:07 +00:00
Måns Rullgård
8681669272 Make intreadwrite.h installation-safe
Originally committed as revision 24173 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:22:03 +00:00
Måns Rullgård
1fc81e73dd Make bswap.h safe to install as public API
Originally committed as revision 24171 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:21:55 +00:00
Måns Rullgård
8fc0162ac4 Add av_ prefix to bswap macros
Originally committed as revision 24170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:12:30 +00:00
Måns Rullgård
e6b22522c9 bswap: change ME to NE in macro names
Other parts of FFmpeg use NE (native endian) rather than ME (machine).
This makes it consistent.

Originally committed as revision 24169 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:09:01 +00:00
Måns Rullgård
7918375f88 intreadwrite: common.h is not needed, attributes.h is sufficient
Originally committed as revision 24155 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 00:40:59 +00:00
Måns Rullgård
f4d80ecb22 lfg: add missing includes
Originally committed as revision 24154 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 00:40:55 +00:00
Måns Rullgård
47bfd50a4b pixdesc: add missing includes
Originally committed as revision 24153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 00:40:53 +00:00
Stefano Sabatini
9699a96a80 Bump minor after read/write_line() to av_read/write_image_line()
rename, done in r24101.

Originally committed as revision 24128 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 22:13:32 +00:00
Stefano Sabatini
ee4355808c Reindent after r24101.
Originally committed as revision 24126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 22:05:33 +00:00
Michael Niedermayer
6a522c49c2 Fix infinite loop with clock() returning (clock_t)-1.
Originally committed as revision 24116 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 18:13:31 +00:00
Michael Niedermayer
b65c1ccfe1 Change i to unsigned in get_generic_seed().
This is clearer than comparing against an unsigned number to force an unsigned
comparison that we need.

Originally committed as revision 24114 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 17:49:39 +00:00
Diego Biurrun
e51f04968e Restore array sizes in doxygen parameter names.
Originally committed as revision 24108 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 13:35:46 +00:00
Michael Niedermayer
c84d5aa74f get_generic_seed() for the cases without /dev/random and AV_READ_TIME
Originally committed as revision 24102 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 23:47:48 +00:00
Stefano Sabatini
ce1cd1cba2 Rename read/write_line() to av_read/write_image_line().
The old names were not av_ prefixed, and they were causing linking
failure on many platforms.  The new names are also more descriptive.

Patch by Stefano Sabatini.

Originally committed as revision 24101 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 23:41:42 +00:00
Måns Rullgård
9077e29ecc ARM: optimised integer clip functions
Originally committed as revision 24089 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 17:27:51 +00:00
Måns Rullgård
edd7fa82d7 ARM: intmath.h cosmetics
Originally committed as revision 24088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 17:27:48 +00:00
Måns Rullgård
216b43aed2 Allow arch-overrides for all common.h clip and log2 functions
Originally committed as revision 24087 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 17:27:45 +00:00
Måns Rullgård
a955b59658 Remove macro duplication between common.h and intmath.h
Originally committed as revision 24086 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 17:27:43 +00:00
Måns Rullgård
2e874c7704 intmath: whitespace cosmetics
Originally committed as revision 24085 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 17:27:39 +00:00
Måns Rullgård
c184bb44db aes: fix array index out of bounds warning
Originally committed as revision 24048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 20:38:46 +00:00
Eli Friedman
b7cdddcd1f Silence "comparison of unsigned expression >= 0 is always true" warning.
Patch by Eli Friedman, eli d friedman a gmail

Originally committed as revision 24022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 17:06:12 +00:00
Reimar Döffinger
19c039ee3d Make mix function more readable.
Compiler output unchanged with gcc 4.4.

Originally committed as revision 24006 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 17:33:45 +00:00
Ramiro Polla
08b317a238 avutil: bump minor version for r23985 (install lfg.h)
Originally committed as revision 23997 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 14:23:17 +00:00
Ramiro Polla
89eec74a52 avutil: install lfg.h
Originally committed as revision 23985 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:12:06 +00:00
Diego Biurrun
e669590a0a Fix parameter name and position in av_crc_init Doxygen documentation.
Originally committed as revision 23981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:49:17 +00:00
Diego Biurrun
3fa7626863 Avoid square brackets in Doxygen comments; Doxygen chokes on them.
Originally committed as revision 23979 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:44:58 +00:00
Diego Biurrun
eee9119ad1 Add parameter names to av_log/av_vlog function declarations.
Doxygen gets confused without an explicit parameter name.

Originally committed as revision 23972 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:03:23 +00:00
Diego Biurrun
9a58234fea Fix misspelled parameter names in Doxygen documentation.
This fixes one Doxygen warning each.

Originally committed as revision 23970 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 10:49:29 +00:00
Stefano Sabatini
2b4abbd6f5 Move colorspace.h from libavcodec to libavutil.
Avoid a compile-time dependency of the pad filter on libavcodec.

Originally committed as revision 23940 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 18:49:44 +00:00
Måns Rullgård
16bfbfd078 random_seed: simplify
Originally committed as revision 23932 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 11:43:30 +00:00
Måns Rullgård
9958096ea2 Reindent
Originally committed as revision 23931 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 11:40:54 +00:00
Måns Rullgård
b7fa5c5abb random_seed: allow to block on /dev/random
If both /dev/random and /dev/urandom failed to return data, an
uninitialised value might be returned.  Since most systems have a
non-blocking /dev/urandom or have /dev/random with similar properties,
the chance of blocking is minimal, and the alternative of returning
non-random data is worse.

Originally committed as revision 23930 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 11:40:50 +00:00
Måns Rullgård
cae70f99a3 Improve FF_SYMVER documentation
Originally committed as revision 23911 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:09:55 +00:00
Måns Rullgård
2eaf7e49c7 Improve av_strerror() documentation
Originally committed as revision 23910 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:09:52 +00:00
Måns Rullgård
c2a5b4731b Improve GET_UTF{8,16} documentation
Originally committed as revision 23909 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:09:48 +00:00
Måns Rullgård
12633044b1 aes: improve av_aes_crypt() documentation
Originally committed as revision 23908 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:09:44 +00:00
Måns Rullgård
8201261996 adler32: add API documentation
Originally committed as revision 23907 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:09:40 +00:00
Måns Rullgård
ffd31cfef3 base64: improve documentation
Originally committed as revision 23905 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 20:09:32 +00:00
Måns Rullgård
49bd8e4b84 Fix grammar errors in documentation
Originally committed as revision 23904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 15:38:06 +00:00
Måns Rullgård
38e23c88db Make av_get_random_seed() non-blocking
Attempt to read from /dev/urandom and /dev/random with O_NONBLOCK set.
If neither succeeds, proceed with fallbacks.

Originally committed as revision 23903 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 10:38:04 +00:00
Reimar Döffinger
dd025f25da Change AES code to be strict-aliasing-safe.
Makes it give correct results with e.g. gcc 4.4.
For unknown reasons the generate asm code also changes
on e.g. gcc 4.3, making the code a bit larger but also
a bit faster.

Originally committed as revision 23896 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 04:50:35 +00:00
Reimar Döffinger
2ad4a3bc78 Pass subshift an argument of the proper type.
No changes in generated code.

Originally committed as revision 23856 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 17:19:55 +00:00
Reimar Döffinger
17c78b087a Use a consistent type for multbl array function parameters.
Originally committed as revision 23855 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 17:11:48 +00:00
Måns Rullgård
276fc8a4e2 Add missing avutil.h include to libavutil/mem.h
Originally committed as revision 23803 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-26 18:14:31 +00:00
Jai Menon
50061b6234 Print a space after the AVClass prefix.
This improves readability a bit.

Originally committed as revision 23767 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-25 04:36:17 +00:00
Ronald S. Bultje
45a1b86a05 Add av_clip_int8(), used in the upcoming VP8 decoder.
Originally committed as revision 23713 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22 19:11:33 +00:00
Benoit Fouet
1c7c0e2d40 Add missing parentheses in MKTAG and MKBETAG macros.
Originally committed as revision 23711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22 15:02:09 +00:00
Stefano Sabatini
eb928286de Add more tests to eval, help detecting some of the more apparent
errors, far from being a complete test system.

Originally committed as revision 23635 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-16 22:36:52 +00:00
Stefano Sabatini
7ec9b9beca Make av_parse_expr() fail if there are trailing chars at the end of
the provided expression.

Allow detection of mistyped expressions.

Originally committed as revision 23629 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-16 18:27:55 +00:00
Stefano Sabatini
2f62224bc0 Improve av_parse_eval() error reporting.
Originally committed as revision 23627 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-16 18:27:46 +00:00
Carl Eugen Hoyos
ed00fe49d7 icc 12 finally fixed attribute(used) so gcc's DECLARE_ASM_CONST can be used.
Originally committed as revision 23624 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-16 10:35:56 +00:00
Michael Niedermayer
33586ee770 Document FF_SYMVER and attribute_used
Originally committed as revision 23622 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-16 04:53:09 +00:00
Måns Rullgård
ccc87908a9 Fix symbol version compat wrappers on systems with export prefixes
Originally committed as revision 23615 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-15 15:24:28 +00:00
Måns Rullgård
b462d13262 Add compatibility wrappers for functions moved from lavf to lavc
When symbol versioning is enabled, moving symbols from one library to
another breaks binary compatibility.  This adds wrappers with the old
version tag for the av_*packet functions recently moved to lavc.

Originally committed as revision 23611 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-15 13:26:52 +00:00
Martin Storsjö
3c467bacaa Fix compilation on windows CE
Originally committed as revision 23600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-14 08:51:46 +00:00
Stefano Sabatini
297084275c Fix av_compare_mod() doxy.
Originally committed as revision 23593 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-13 09:06:50 +00:00
Stefano Sabatini
276b45afa0 Add APIchanges entry and bump minor after av_compare_mod() addition.
Originally committed as revision 23592 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-13 09:04:36 +00:00
Ramiro Polla
db16e3ca65 log.c: Use parameter passed to macro instead of the equivalent local variable
in the only function that uses the macro.

Originally committed as revision 23555 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-09 18:30:50 +00:00
Ramiro Polla
4855f8679e Add win32 console color output.
Based on patches by James Darnley <james dot darnley at gmail dot com>.

Originally committed as revision 23554 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-09 18:13:01 +00:00
Ramiro Polla
6e34a5582d Move ansi color array to outside of av_log_default_callback(). Do not pass
ansi color code to colored_fputs(), and pass instead the error level so the
proper color code may be used.

Originally committed as revision 23553 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-09 18:10:35 +00:00
Ramiro Polla
a1c027e9e4 Rename use_ansi_color to use_color so it is not ANSI-specific.
Originally committed as revision 23552 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-09 18:07:44 +00:00
Michael Niedermayer
65db0587a8 Add av_compare_mod()
Originally committed as revision 23551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-09 17:27:42 +00:00
Stefano Sabatini
0b99215c0e Move eval.c and eval.h from libavcodec to libavutil, and make the eval
API public.

Originally committed as revision 23485 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-05 12:01:28 +00:00
Stefano Sabatini
6532c6f929 Bump lavu minor and add APIchanges entry after AV_BASE64_SIZE()
addition.

Originally committed as revision 23484 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-05 11:28:02 +00:00
Howard Chu
784824a68c Use AV_BASE64_SIZE() macro
Originally committed as revision 23462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 01:15:41 +00:00
Howard Chu
31878fcf43 Add AV_BASE64_SIZE() macro
Originally committed as revision 23461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 01:15:07 +00:00
Michael Niedermayer
98aea87b1a Deprecate PIX_FMT_YUVJ*
Originally committed as revision 23451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-03 21:08:56 +00:00
David Conrad
31fdd64194 Convert NaN to 0/0 in av_d2q
This fixes aspect ratio calculation for encoding from files with 0/0 stored,
common with ogg/theora

Originally committed as revision 23280 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-24 00:44:02 +00:00
Martin Storsjö
99778631e9 Bump libavutil minor version for the addition of av_get_random_seed
Originally committed as revision 23255 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-23 09:45:34 +00:00
Martin Storsjö
576fb48e6d Make ff_random_get_seed public, rename to av_get_random_seed, export the header
Keep an old ff_ named function for binary compatibility until the
next major bump.

Originally committed as revision 23254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-23 08:53:40 +00:00
Michael Niedermayer
4880cfd952 Print parent log context too, if available.
Originally committed as revision 23200 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-19 22:51:38 +00:00
Michael Niedermayer
2c1bb26535 Make it possible for a log context to keep track of its parent context.
This is usefull to keep track and display relations where things are a
bit more complex (like AVProtocols or demuxers used by demuxers and such)

Originally committed as revision 23199 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-19 22:50:39 +00:00
Michael Niedermayer
8d2a5139da av_default_item_name() so Simply AVClasses need 1 function less.
Originally committed as revision 23198 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-19 22:45:04 +00:00
Stefano Sabatini
c75b3d2e8f Clarify description for the MONOWHITE and MONOBLACK pixel formats.
Originally committed as revision 23144 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-16 07:56:26 +00:00
Stefano Sabatini
9121b8ca6c Clarify descriptions for RGB4, BGR4, NV12, NV21,
RGB48BE, and RGB48LE pixel formats.

Originally committed as revision 23142 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-15 12:33:31 +00:00
Michael Niedermayer
a74d707cb7 av_alias is an attribute and belongs to attributes.h
also attributes.h is public and external api and can thus not depend
on configure tested compiler support thus this part is removed. A
different solution must be found if this breaks for some compiler
which i hope it does not.

Originally committed as revision 23115 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-13 16:30:58 +00:00
Måns Rullgård
cc6849ae50 bswap: 10L add missing parens around macro args
Originally committed as revision 23070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-09 20:32:35 +00:00
Michael Niedermayer
3fe1ec39c6 Add means to adjust the log level per context.
Originally committed as revision 23059 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-08 20:41:20 +00:00
Stefano Sabatini
e2959f4558 Make av_strerror() return -1 even in the case when av_strerror_r() is
not defined.

This allows applications to check if av_strerror() cannot provide a
meaningful representation for the provided error code, without having
to actually check the filled string.

Originally committed as revision 23031 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-05 21:44:47 +00:00
Stefano Sabatini
441ea0ce91 Make av_strerror() print an error message mentioning the error code
number if strerror_r() did not succeed for whatever reason.

This avoids the need for the application to fill the string in case
strerror_r() fails, for example because the error code is not known.

Originally committed as revision 23015 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-03 21:56:21 +00:00
Måns Rullgård
547b7bcbb7 bswap: add macros to byteswap constants
The normal byteswap functions might use inline asm which is suboptimal
with constants (and cannot be used in static initialisers), so special
macros for constants only is needed.

We should not rely on the gcc __builtin_constant_p() test since it is
not always available.

Originally committed as revision 22990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-29 14:41:20 +00:00
Jai Menon
707cd944d6 Fix typo.
Originally committed as revision 22988 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-28 20:08:02 +00:00
Michael Niedermayer
2308b6c19a Add version to AVClass so we can add to and use fields of AVClass without ABI issues.
Originally committed as revision 22987 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-28 20:00:23 +00:00
Stefano Sabatini
cf103fabbe Drop AVERROR_NOTSUPP at the next major bump, use AVERROR(ENOSYS)
instead which is semantically equivalent.

See the thread:
Subject: [FFmpeg-devel] [RFC] The meaning of AVERROR_NOTSUPP
Date: Sat, 27 Mar 2010 00:51:13 +0100

Originally committed as revision 22981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-27 22:26:08 +00:00
Ronald S. Bultje
90bc36b063 Reindent after r22968.
Originally committed as revision 22969 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-26 21:01:38 +00:00
Ronald S. Bultje
ad6408960b Write clip-related decimal numbers into hex, where they make more sense.
Originally committed as revision 22968 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-26 21:00:33 +00:00
Ronald S. Bultje
2d0525c27c Fix broken 32-bit clipping, and write numbers in hex instead of decimal so
they are easier to understand. Also give the add a 'u' postfix to silence
a pre-c99 compiler warning.

Originally committed as revision 22965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-26 13:36:17 +00:00
Michael Niedermayer
6204402409 4th try at getting ansi colors working with a default of color=yes_please.
Colors will only be used if the TERM env var is set and NO_COLOR is not set.

Originally committed as revision 22957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-23 21:27:26 +00:00
Måns Rullgård
07876e25c8 Workaround for missing llrintf()
Originally committed as revision 22954 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-23 16:28:10 +00:00
Michael Niedermayer
aebfb45774 Trying _WIN32 for win32 detection.
Originally committed as revision 22953 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-23 13:15:11 +00:00
Michael Niedermayer
7328cdfa58 Merge the 2 ANSI ESC codes.
Originally committed as revision 22952 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-23 08:11:53 +00:00
Michael Niedermayer
841073ce5e Reenable ANSI colors, use method from VLC as suggested by ramiro.
Please tell us asap if this breaks for your platform & terminal.

Originally committed as revision 22951 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-23 07:33:02 +00:00
Michael Niedermayer
2c4b87ea0e Disable ANSI color code until we figured out how to detect ANSI support in
the used terminal.

Originally committed as revision 22948 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-22 20:39:34 +00:00
Michael Niedermayer
51e026d115 Coloring the log with ANSI.
Ive checked this on black and white background and found no problem in terms
of readability.
flames welcome.

Originally committed as revision 22946 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-22 18:58:39 +00:00
Ronald S. Bultje
b1078e9fe6 Move clipping of audio samples (for those codecs outputting float) from decoder
to the audio conversion routines.

Originally committed as revision 22937 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-21 17:57:48 +00:00
Diego Biurrun
ba87f0801d Remove explicit filename from Doxygen @file commands.
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +00:00
Andreas Öman
4744f896e5 Add PIX_FMT_Y400A, 8bit gray, 8bit alpha
Originally committed as revision 22881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-14 20:15:19 +00:00
Alex Converse
b9f60bd8fd Add M_SQRT2 to the constants in mathematics.h.
Originally committed as revision 22825 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-09 23:29:47 +00:00
Stefano Sabatini
b9bd6589d7 Clarify doxy for av_fifo_alloc().
Originally committed as revision 22812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-06 22:31:59 +00:00
Michael Niedermayer
4ed39eedca av_builtin_constant_p()
Originally committed as revision 22770 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-02 01:03:27 +00:00
Stefano Sabatini
11491503c4 Move AVMediaType from libavcodec to libavutil.
This allows applications/libraries which require that symbol
(e.g. libavfilter) to be compiled without to depend on the presence of
libavcodec/avcodec.h, which may not be installed.

Originally committed as revision 22736 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:31:16 +00:00
Benoit Fouet
32e543f866 Replace @returns by @return.
Originally committed as revision 22729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 15:50:57 +00:00
Stefano Sabatini
87958234f9 Implement av_strerror().
Originally committed as revision 22684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 22:46:35 +00:00
Stefano Sabatini
0394c928db Prefer '///< ...' doxygen inline syntax over '/**< ... */'.
Originally committed as revision 22683 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 22:46:32 +00:00
Stefano Sabatini
b748b9d69b Use consistent punctuation rules for the error message descriptions.
Originally committed as revision 22682 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 22:46:28 +00:00
Stefano Sabatini
68006ed062 Drop AVERROR_NOFMT at the next libavutil major bump.
Originally committed as revision 22626 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-21 16:34:06 +00:00
Stefano Sabatini
72af5d8a02 Change the definition of AVERROR_INVALIDDATA at the next libavutil
major bump, using an FFmpeg specific error code rather than EINVAL,
which has a quite different semantics.

Originally committed as revision 22601 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-19 23:34:36 +00:00
Stefano Sabatini
0029156589 Extend description for AVERROR_INVALIDDATA.
Originally committed as revision 22600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-19 23:34:34 +00:00
Måns Rullgård
6d2877f47e error.h: test EDOM instead of EINVAL
C99 doesn't require EINVAL, only EDOM, EILSEQ, and ERANGE.

Originally committed as revision 22530 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 22:25:35 +00:00
Måns Rullgård
e4836e3c07 Add missing includes to libavutil/error.h
Originally committed as revision 22529 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 22:25:31 +00:00
Stefano Sabatini
73ddbd9d0e Change the definition of AVERROR_NUMEXPECTED at the next libavutil
major bump, using an FFmpeg specific error code rather than EDOM,
which has a quite different semantics.

Originally committed as revision 22528 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 21:16:29 +00:00
Stefano Sabatini
c6a7b97c8e Mark AVERROR_ENOENT for deletion at the next libavutil major bump.
The symbol is currently unused, AVERROR(ENOENT) must be used instead.

Originally committed as revision 22519 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 01:32:44 +00:00
Stefano Sabatini
9b359f517e Lexically sort the error code definitions.
Originally committed as revision 22518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 01:32:41 +00:00
Stefano Sabatini
7c074320ba Mark AVERROR_ENOMEM to be deleted at the next major bump.
AVERROR(ENOMEM) must be used instead, and there are no occurrences of
AVERROR_ENOMEM in the FFmpeg basecode so it can be safely dropped.

Originally committed as revision 22514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 19:19:46 +00:00
Stefano Sabatini
5ae092ee34 Replace all the occurrences of AVERROR_EIO with AVERROR(EIO), and mark
AVERROR_EIO for deletion at the next major bump.

Originally committed as revision 22513 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 19:19:44 +00:00
Stefano Sabatini
0edfa79b23 Make iff.c:decode_init return the value returned by
avctx->get_buffer() in case of error, rather than AVERROR_UNKNOWN
which is deprecated, and mark AVERROR_UNKNOWN for deletion at the next
major bump.

Originally committed as revision 22512 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 19:19:40 +00:00
Stefano Sabatini
dbfa5e7861 Add missing parentheses around the AVERROR_PATCHWELCOME macro
definition.

Originally committed as revision 22502 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 09:52:43 +00:00
Stefano Sabatini
60c144f700 Move error code definitions from libavcodec/avcodec.h to
libavutil/error.h.

Error code definitions and handling code belong to libavutil, where
they can be shared by all the libav* libraries.

See the thread:
Subject: [FFmpeg-devel] [PATCH] Move error codes definitions from lavc to lavu
Date: Sun, 19 Jul 2009 12:09:16 +0200

Originally committed as revision 22501 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 09:43:24 +00:00
Måns Rullgård
5de91783bf indent
Originally committed as revision 22451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 02:32:14 +00:00
Måns Rullgård
49e9287878 random_seed: try other alternatives if reading /dev/random fails
Originally committed as revision 22450 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 02:32:11 +00:00
Måns Rullgård
32f40ace25 sha: add missing include
Originally committed as revision 22449 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 02:32:08 +00:00
Måns Rullgård
2ed6f39944 Replace many includes of libavutil/common.h with what is actually needed
This reduces the number of false dependencies on header files and
speeds up compilation.

Originally committed as revision 22407 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 17:39:19 +00:00
Måns Rullgård
297bfb2fe6 libm.h needs attributes.h
Originally committed as revision 22405 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 16:17:59 +00:00
Måns Rullgård
335ee1aadd Move libm replacements to new header libm.h
ffmpeg.c uses lrintf(), which is missing on some systems.  Previously
it picked up the replacement via libavutil/internal.h due to
HAVE_AV_CONFIG_H being erroneously defined.

Moving these replacements to a separate header enables ffmpeg.c to
use them without being exposed to internal interfaces.

This use of a non-public header is justified by the header in question
not being part of the internal interface either.  It should rather be
considered as part of the build system, which is shared between the
libraries and the applications.

This header cannot be installed since the tested conditions depend on
the compiler.

Originally committed as revision 22399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 15:10:23 +00:00
Måns Rullgård
b90b1b4c3c Fix build on configurations without fast av_log2()
This is a bit hackish.  I will try to think of something nicer, but
this will do for now.

Originally committed as revision 22366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 01:19:28 +00:00
Måns Rullgård
f0a912d3b8 More descriptive names for av_stristr() parameters
Originally committed as revision 22349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 22:16:05 +00:00
Måns Rullgård
3369888aa5 cosmetics: indent
Originally committed as revision 22348 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 21:29:01 +00:00
Måns Rullgård
2acb5e10b9 Merge two adjacent ifdef blocks
Originally committed as revision 22347 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 21:28:58 +00:00
Måns Rullgård
2791730dbf Move gcc attribute macros to new header libavutil/attributes.h
Originally committed as revision 22346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 21:28:56 +00:00
Måns Rullgård
94ca624fbc Move ff_sqrt() to libavutil/intmath.h
Originally committed as revision 22345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 21:19:56 +00:00
Måns Rullgård
f89c14027a checkheaders: skip per-arch headers not meant for direct inclusion
Some of the per-arch headers are only meant to be used through
the parent header of the same name.  Testing these standalone
does not make sense.

Originally committed as revision 22341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 20:17:47 +00:00
Måns Rullgård
4a89e0a675 ARM: add some missing includes
Originally committed as revision 22340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 19:59:54 +00:00
Måns Rullgård
9c9a0840d0 Add lots of missing includes
Originally committed as revision 22337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 18:43:52 +00:00
Stefano Sabatini
c18fb6310d Bump minor number and add APIchanges entry after the inclusion of
av_stristr().

Originally committed as revision 22254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 20:07:52 +00:00
Måns Rullgård
ac6ef8682d Add av_stristr() function
This is a case-insensitive version of strstr().

Originally committed as revision 22251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 19:41:22 +00:00
Måns Rullgård
84dc2d8afa Remove DECLARE_ALIGNED_{8,16} macros
These macros are redundant.  All uses are replaced with the generic
DECLARE_ALIGNED macro instead.

Originally committed as revision 22233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 14:24:59 +00:00
Måns Rullgård
4b9905d1dc Move DECLARE_ALIGNED_{8,16} macros to mem.h
These macros naturally belong next to the generic DECLARE_ALIGNED
macro.

Originally committed as revision 22230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 12:40:43 +00:00
Janusz Krzysztofik
2b7cf1678e Add initial support for 12-bit color mode.
Patch by Janusz Krzysztofik jkrzyszt tis icnet pl
Original thread:
Subject: [FFmpeg-devel] [PATCH v2] Add initial support for 12-bit color mode.
Date: Mon, 1 Mar 2010 02:05:07 +0100

Originally committed as revision 22220 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-05 08:26:23 +00:00
Stefano Sabatini
ce7c717900 Declare the PIX_FMT_GRAY8 pixel format as a paletted format. This is
consistent with the allocation currently done for PIX_FMT_GRAY8
pictures.

No significant slow-downs have been measured.

See the thread:
Subject: [FFmpeg-devel] [PATCH] Is gray8 a paletted format?
Date: Sun, 15 Nov 2009 23:36:03 +0100

Originally committed as revision 22191 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 00:27:46 +00:00
Vitor Sessak
4b83fc0fe4 Plug memory leak in NUT muxer and demuxer
Originally committed as revision 22174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 17:31:24 +00:00
Måns Rullgård
3d7b94ba5a Fix build failure with fast_unaligned and non-gcc-compatible compilers
Originally committed as revision 22142 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-02 03:16:24 +00:00
Vitor Sessak
8a4d067dfc Revert r22119 and partially revert 22120.
Originally committed as revision 22135 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-01 18:16:10 +00:00
Vitor Sessak
fee6faa2b6 Implement av_tree_destroy_free_elem() to destroy a tree and free all the
values stored on it.

Originally committed as revision 22119 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 20:48:42 +00:00
Carl Eugen Hoyos
0fcbcad140 Include sha1.h from sha.c: It contains several prototypes.
Originally committed as revision 22099 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 02:32:16 +00:00
Stefano Sabatini
3314799368 Extend doxy for the src parameter of av_fifo_generic_write().
@patchby Tomas Härdin |tomas dot hardin at codemill dot se|

Originally committed as revision 22043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 23:52:52 +00:00
Michael Niedermayer
8ef4e65e94 AV_COPY16() & AV_ZERO16()
Originally committed as revision 22037 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 20:38:31 +00:00
Anton Khirnov
ae529ddb32 Add PUT_UTF16() macro.
Patch by Anton Khirnov <wyskas gmail com>.

Originally committed as revision 22030 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 18:08:30 +00:00
Michael Niedermayer
fc323a5480 Clarify non constness of src in av_fifo_generic_write()
Originally committed as revision 21997 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 12:14:13 +00:00
Måns Rullgård
ac73f1a816 ARM: change argument/return type of bswap_16() to unsigned 32-bit
This avoids unnecessary masking otherwise added by the compilers.

Originally committed as revision 21953 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 00:34:08 +00:00
Måns Rullgård
94a5218c10 More accurate value for log2(10)
Originally committed as revision 21946 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 20:47:10 +00:00
Måns Rullgård
e4a35244fa Replace log2f(10) with a constant
Originally committed as revision 21924 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-20 20:13:48 +00:00
Måns Rullgård
7ed63ca2e7 Add casts to correct return type in macros for missing libm funcs
Originally committed as revision 21922 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-20 16:02:48 +00:00
Carl Eugen Hoyos
8e339d4aa0 Gcc attribute may_alias is not supported (or silently ignored) by all supported compilers.
Originally committed as revision 21917 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-20 12:22:24 +00:00
Måns Rullgård
95c0d02ddc TOMI: 16- and 32-bit intreadwrite functions
Originally committed as revision 21890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 03:20:01 +00:00
Måns Rullgård
f4a7434f16 Add alias-safe aligned AV_[RW]N macros
Originally committed as revision 21880 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 13:44:38 +00:00
Måns Rullgård
7a6053ef72 Use alias-safe types in AV_COPY/SWAP/ZERO macros
Originally committed as revision 21879 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 13:40:24 +00:00
Måns Rullgård
0c76e635f5 Use alias-safe types in AV_[RW] macros
Originally committed as revision 21878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 13:40:21 +00:00
Måns Rullgård
d10458c9e2 Add alias-safe union typedefs
Originally committed as revision 21877 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-18 13:40:19 +00:00
Stefano Sabatini
f47a7cb777 Move read_line() and write_line() definition from pixdesc.h to
pixdesc.c, which are now not anymore marked as static inline.

Fix the inclusion of the private header intreadwrite.h in the public
header pixdesc.h.

Originally committed as revision 21854 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 20:17:50 +00:00
Kostya Shishkov
a768816c33 Simplify expression as suggested by Måns Rullgård
Originally committed as revision 21756 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-11 14:08:40 +00:00
Kostya Shishkov
045b60bf9b Make SHA digest function write digest value with AV_WN32 instead of assuming
that output may be written as uint32_t since output buffer may not be aligned
(and it's silly to force alignment on it) and it does not work in that case
properly on some architectures.

Originally committed as revision 21754 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-11 11:45:35 +00:00
Måns Rullgård
8e05f06912 Define missing llrint() as macro instead of inline function
This fixes building on some broken systems.

Originally committed as revision 21735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 22:55:16 +00:00
Michael Niedermayer
b687c1aaac Bump minor for av_compare_ts()
Originally committed as revision 21673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 17:13:59 +00:00
Michael Niedermayer
78b0182375 av_compare_ts()
Originally committed as revision 21671 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 16:26:50 +00:00
Stefano Sabatini
351aff72a4 Fix grammar: write to DST THING -> write THING to DST.
Originally committed as revision 21576 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 17:13:57 +00:00
Stefano Sabatini
22bf4592c8 Remove duplicated word in av_strlcat() doxy.
Originally committed as revision 21549 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 19:03:37 +00:00
Stefano Sabatini
80a07f6e47 Implement av_get_pix_fmt(), and deprecate avcodec_get_pix_fmt().
Originally committed as revision 21545 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 18:50:00 +00:00
Måns Rullgård
6c88973a75 Add AV_COPY32
Originally committed as revision 21524 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29 03:26:17 +00:00
Måns Rullgård
788627dea6 Define av_alias if supported by compiler
Originally committed as revision 21523 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29 03:26:14 +00:00
Måns Rullgård
4ae406856f Add --malloc-prefix to apply a prefix to malloc, free etc
This makes it easy to use a replacement allocator instead of the
system default one.

Originally committed as revision 21509 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 13:06:31 +00:00
Måns Rullgård
87fec35d8d Add macro AV_JOIN() for joining two tokens into one
Originally committed as revision 21482 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 17:38:53 +00:00
Måns Rullgård
34e52abb62 DECLARE_ALIGNED macro for TMS470 compiler
This compiler supports gcc-style alignment attributes for struct,
but not for global variables.  For the latter, alignment can be
specified with a pragma, which does not work for struct members or
local variables.  By using both pragma and attribute, one or the
other will always take effect.

Unfortunately, no means exists for aligning stack variables.

Originally committed as revision 21379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 03:25:25 +00:00
Måns Rullgård
d408b77a3a Add an AV_PRAGMA() macro for constructing _Pragma() directives
The seemingly equivalent _Pragma(AV_STRINGIFY(x)) is not accepted
by some compilers.

Originally committed as revision 21378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 03:25:21 +00:00
Måns Rullgård
c67278098d Move array specifiers outside DECLARE_ALIGNED() invocations
Originally committed as revision 21377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 03:25:11 +00:00
Måns Rullgård
8a24e98d50 Make DECLARE_ALIGNED macros work with external array specifiers
The macro implementation might need the name of the variable being
declared for compiler-specific syntax.  Moving array specifiers outside
the macro invocation allows this to work.

Originally committed as revision 21363 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 12:59:22 +00:00
Laurent Aimar
92c6a099ba H264 DXVA2 implementation
It allows VLD H264 decoding using DXVA2 (GPU assisted decoding API under
VISTA and Windows 7).
 It is implemented by using AVHWAccel API. It has been tested successfully
for some time in VLC using an nvidia card on Windows 7.

 To compile it, you need to have the system header dxva2api.h (either from
microsoft or using http://downloads.videolan.org/pub/videolan/testing/contrib/dxva2api.h)
 The generated libavcodec.dll does not depend directly on any new lib as
the necessary objects are given by the application using FFmpeg.

Originally committed as revision 21353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 18:54:51 +00:00
Måns Rullgård
5e7dfb7de1 Move COPY3_IF_LT to lavc/mathops.h
This obscure macro is only used in motion_est.c so having it in lavc
makes more sense.  See discussion here:
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-November/056561.html

Originally committed as revision 21346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 06:01:54 +00:00
Måns Rullgård
75fb5c24ed Move FASTDIV macro to intmath.h
Originally committed as revision 21335 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 23:25:36 +00:00
Måns Rullgård
1d52b4b390 Use avconfig.h in pixfmt.h
Originally committed as revision 21322 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 04:40:18 +00:00
Måns Rullgård
a3e02a8cad Create and install libavutil/avconfig.h
This file contains a safe subset of the config.h settings.
Only bigendian is included for now, more can be added as
need arises.

Originally committed as revision 21321 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 04:40:16 +00:00
Alexander Strange
f6d0390657 Add macros for 64- and 128-bit write-combining optimization to intreadwrite.h.
Add x86 implementation using MMX/SSE.

Originally committed as revision 21281 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 10:24:33 +00:00
Måns Rullgård
bdd19e29df Mark all intreadwrite functions av_always_inline
Originally committed as revision 21278 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 01:35:19 +00:00
Reimar Döffinger
3f37ab8e41 Make sure we do not export incorrect _NE pixformat descriptions by either
including config.h if available or not defining them if it isn't.

Originally committed as revision 21262 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 14:17:03 +00:00
Måns Rullgård
c25210278c Add missing parens in AV_WN macros
Originally committed as revision 21260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 12:47:06 +00:00
Måns Rullgård
a482e61bd6 Add symbol versioning for shared libraries
Based on patch by Reinhard Tartler <siretart tauware de>

Originally committed as revision 21236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 04:49:02 +00:00
Vitor Sessak
06cb7a1c8f Use macros instead of inline functions to replace the following missing C99
functions: exp2, exp2f, log2, log2f.

Should fix compilation in systems where these functions are defined in math.h
but not implemented.

Originally committed as revision 21231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 01:27:46 +00:00
Måns Rullgård
544f5a922f Optimise av_log2 with clz when available
10% faster flac decoding on x86 and ARM.

Originally committed as revision 21217 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-14 19:58:12 +00:00
Vitor Sessak
6b7c7703f4 Add replacements for log2f(), exp2() and exp2f() for platforms that lacks it.
Should fix build breakage on some platforms introduced in r21125.

Originally committed as revision 21155 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 02:19:51 +00:00
Stefano Sabatini
4160069067 Prefer "*FUNC_NAME(" over "* FUNC_NAME(" for XXX_configuration() and
XXX_license() functions, consistent with the rest of FFmpeg.

Originally committed as revision 21005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-03 14:31:25 +00:00
Stefano Sabatini
702d0a9e85 Remove residual use of the doxygen markup which is deprecated,
consistent with r19122.

Originally committed as revision 20989 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 12:28:18 +00:00
Michael Niedermayer
bac24dd2a5 2nd try on documenting av_gcd().
Originally committed as revision 20939 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-27 14:40:49 +00:00
Michael Niedermayer
03703cb3d1 Document av_gcd().
Originally committed as revision 20935 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-27 12:20:06 +00:00
Michael Niedermayer
b3e88ae84b Place { of the function where indent -kr wants it.
Also more consistent with the rest of the code.

Originally committed as revision 20851 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-14 01:15:02 +00:00
Michael Niedermayer
64b12fc317 Move #include where it belongs.
This as a sideeffect fixes the linking failure of ffplay.

Originally committed as revision 20832 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 18:42:39 +00:00
Michael Niedermayer
277c733237 Add a function to convert a number to a av_malloced string.
Originally committed as revision 20829 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 17:09:41 +00:00
Stefano Sabatini
3ba69a15c6 Implement av_bmg_next(), a Box-Muller Gaussian random generator.
See the thread:
"[FFmpeg-devel] [PATCH] Box-Muller gaussian generator".

Originally committed as revision 20808 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-12 16:24:37 +00:00
Ramiro Polla
e244f54e78 Make av_log_level static at next lavu major version bump.
Originally committed as revision 20721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-03 18:15:54 +00:00
Stefano Sabatini
382cb1154c Make av_pix_fmt_descriptors use the same pixel format names as defined
in libavcodec/imgconvert.c.

Avoid to break compatility when making the functions dealing with
pixel format names in imgconvert.c use the names defined in pixdescs.

Originally committed as revision 20624 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-26 20:58:37 +00:00
Stefano Sabatini
74a0059f2c Make the pixdesc API public.
Originally committed as revision 20603 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-24 23:33:41 +00:00
Stefano Sabatini
60fa95683d Clarify PIX_FMT_BE flag doxy. Increase consistency / pickiness.
Originally committed as revision 20592 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-23 20:14:47 +00:00
Stefano Sabatini
357561e73f Clarify relations between log2_chroma_w, log2_chroma_h and comp.
Originally committed as revision 20550 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-18 22:32:32 +00:00
Diego Biurrun
c173693698 Add functions to return library license and library configuration.
Originally committed as revision 20547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-18 17:15:17 +00:00
Stefano Sabatini
b8873c2a8f Rename AVPixFmtDescriptor.nb_channels to nb_components, the new name
is more clear and lexically more consistent with API and
documentation.

Originally committed as revision 20545 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-18 00:07:20 +00:00
Michael Niedermayer
b154ed5abe Fix indention after last commit.
Originally committed as revision 20538 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-14 19:15:09 +00:00
Michael Niedermayer
edabf35926 Fix crash with av_tree_enumerate(NULL).
Originally committed as revision 20537 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-14 19:14:14 +00:00