Commit Graph

1329 Commits

Author SHA1 Message Date
Ronald S. Bultje fe277b16f0 eval: fix memleak. 2011-07-05 18:18:10 -07:00
Mans Rullgard 94350ab986 eval: clear Parser instances before using
This prevents random values from the stack being used as
"variables" in expressions.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 12:31:47 +01:00
Kostya Shishkov 3e2aa268f6 sha: use AV_RB32() instead of assuming buffer can be cast to uint32_t*
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 11:16:52 +01:00
Mans Rullgard 9e52a40695 des: allow unaligned input and output buffers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 11:07:15 +01:00
Mans Rullgard d04d9f24a0 aes: allow unaligned input and output buffers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 11:07:15 +01:00
Mans Rullgard 6da812e4ee eval: make timing optional in test program
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 10:26:21 +01:00
Mans Rullgard abc78a5a7c Do not include log.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:07 +01:00
Mans Rullgard d49ea4afb4 Do not include pixfmt.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:07 +01:00
Mans Rullgard e91709ca17 Do not include rational.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:06 +01:00
Mans Rullgard 0ebcdf5cda Do not include mathematics.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:06 +01:00
Mans Rullgard ee8aecd23a Do not include intfloat_readwrite.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:06 +01:00
Mans Rullgard add41decd9 Remove return statements following infinite loops without break
These statements cannot be reached and are thus not needed.
This removes a number of compiler warnings.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:39:07 +01:00
Mans Rullgard 82494cad9d md5: cosmetics
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 18:19:19 +01:00
Mans Rullgard fa49fc72d9 md5: use AV_WL32 to write result
This is simpler, safer, and removes the undocumented requirement of
aligned output buffer.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 18:19:19 +01:00
Mans Rullgard 44496ff2d6 md5: include correct headers
This file needs stdint.h but not string.h

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 18:19:18 +01:00
Mans Rullgard edf4dbff33 md5: fix test program
This makes the md5-test program print something meaningful and not
smash the stack.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 18:19:18 +01:00
Diego Biurrun ff993cd7fc doxygen: Drop array size declarations from Doxygen parameter names.
Adding [] to a Doxygen parameter name clashes with Doxygen syntax.
2011-07-03 18:30:02 +02:00
Diego Biurrun 24c9babaaf doxygen: Fix parameter names to match the function prototypes. 2011-07-03 18:30:02 +02:00
Diego Biurrun 91c9aa0941 Move some conditionally used code below the appropriate #ifdef. 2011-07-03 18:30:01 +02:00
Mans Rullgard 8f175810be aes: fix for big endian systems
This was missed in 5d20f19 since CONFIG_SMALL was always broken
for big endian.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 13:41:42 +01:00
Mans Rullgard 66fe5970ab des: reduce number of iterations in test program
Testing a million random keys takes annoying long time.
1000 iterations should be enough.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 13:41:31 +01:00
Mans Rullgard 5d20f19be2 aes: fix invalid array indexing in init code
This makes the code work with clang/x86_32 and removes several warnings.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 03:09:22 +01:00
Mans Rullgard af2ea72495 aes: use direct assignments instead of memcpy() or loops
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 03:08:52 +01:00
Reinhard Tartler 21a19b7912 doxygen: Prefer member groups over grouping into modules
Before this, almost all module groups have been used for grouping functions
and fields in structures semantically. This causes them to not appear
properly in the file documentation and needlessly clutters up the "Modules"
index.

Additionally, this commit streamlines some spelling and appearances.
2011-07-02 13:52:29 +02:00
Reinhard Tartler 134557f3a4 doxygen: fix usage of @file directive in libavutil/{dict,file}.h 2011-07-01 15:12:33 +02:00
Reinhard Tartler 192bfbc1f1 avutil: elaborate documentation for av_get_random_seed 2011-06-30 21:19:16 +02:00
Mans Rullgard 4bfe064460 aes: whitespace cosmetics
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-30 16:50:27 +01:00
Mans Rullgard bd55da1c08 adler32: whitespace cosmetics
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-30 16:50:27 +01:00
Mans Rullgard c31bc5371e Fix cpu flags test program
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-30 14:19:51 +01:00
Diego Biurrun ce1e181b13 opt-test: Add missing braces to silence compiler warnings.
libavutil/opt.c:604:1: warning: missing braces around initializer [-Wmissing-braces]
2011-06-30 13:34:38 +02:00
Mans Rullgard 744765a9c5 aes: improve test program and add fate test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-30 09:47:32 +01:00
Mans Rullgard f6252b4845 adler32: make test program more useful and add fate test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-30 09:47:32 +01:00
Diego Biurrun 812f2376ee rational-test: Add proper main() declaration to fix gcc warnings. 2011-06-30 01:35:47 +02:00
Mans Rullgard cfa68a3381 Remove unused, never built libavutil/pca.[ch]
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-29 23:49:03 +01:00
Can Wu 86c3c1abf0 pixfmt: fix YUV422/444 wrong endian comment
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-06-29 11:56:56 +02:00
Mans Rullgard 57b4a3dd2b build: include sub-makefiles using full path instead of symlinks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 18:15:19 +01:00
Diego Biurrun bb00b15f9e avutil: Remove unused arbitrary precision integer code. 2011-06-28 13:14:46 +02:00
Diego Biurrun a6213f3dce build: Remove redundant config.mak includes from subdirectory Makefiles.
Calling Make from subdirectories is not supported and config.mak has
multiple inclusion guards anyway, so the top-level include is enough.
2011-06-25 13:02:51 +02:00
Diego Biurrun adbfc605f6 doxygen: Consistently use '@' instead of '\' for Doxygen markup.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-06-24 00:37:49 +02:00
Martin Storsjö 9abbe8cc13 Use av_printf_format to check the usage of printf style functions
This helps catching cases where the format string doesn't
match what is passed in, or injection bugs where user data
is passed in as format string.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-06-23 20:17:46 +03:00
Martin Storsjö 67e9ae14d9 Add av_printf_format, for marking printf style format strings and their parameters
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-06-23 20:17:44 +03:00
Mans Rullgard 8986fddc2b ARM: allow building in Thumb2 mode
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-23 07:31:54 +01:00
Uoti Urpala c98b928fa7 intreadwrite.h: fix AV_RL32/AV_RB32 signedness.
The output type of the AV_RL32/AV_RB32 macros was signed int. The
resulting overflow broke at least some ASF streams with large
timestamps. Fix by adding a cast to uint32_t.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-16 20:49:19 +02:00
Anton Khirnov 7c44d716e7 Add minor bumps and APIChanges entries for lavf private options. 2011-06-16 20:24:58 +02:00
Anton Khirnov 1b9b37b8a4 dict: add AV_DICT_APPEND flag. 2011-06-16 20:24:56 +02:00
Anton Khirnov dc59ec5e79 AVOptions: add av_opt_find() as a replacement for av_find_opt. 2011-06-16 20:24:56 +02:00
Anton Khirnov 7e83e1c511 AVOptions: add av_opt_set_dict() mapping a dictionary struct to a context.
This way the caller can pass all the options in one nice package.
2011-06-16 20:24:56 +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
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
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
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
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
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
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
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
Ronald S. Bultje e973557211 Move emms_c() from libavcodec to libavutil. 2011-05-24 14:48:49 -04: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
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
Mans Rullgard 1550f45a89 Add av_clip_uintp2() function
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-13 16:45:24 -04: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
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
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
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
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
Alex Converse 1a5e4fd8c5 Replace strncpy() with av_strlcpy(). 2011-05-03 21:20:13 -07: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
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
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 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
Diego Biurrun 63de9e7d80 Remove a version check in av_log made unnecessary by the big bump. 2011-04-20 18:19:04 +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
Diego Biurrun 6001dad6e2 Replace more FFmpeg references by Libav. 2011-04-17 19:31:49 +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
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
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
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
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
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
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
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 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 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 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 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 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 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 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 dfd2a005eb Replace dprintf with av_dlog
dprintf clashes with POSIX.1-2008
2011-01-29 23:55:37 +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
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