summaryrefslogtreecommitdiff
path: root/libavutil
Commit message (Collapse)AuthorAge
* parseutils: fix parsing of invalid alpha valuesMans Rullgard2012-10-06
| | | | | | | | | | An alpha specifier outside the valid range results in a conversion from double to long with undefined result. Range-checking the double and only converting it after it passes avoids this. Fixes fate-parseutils errors on some systems. Signed-off-by: Mans Rullgard <mans@mansr.com>
* Give all anonymously typedeffed structs in headers a nameDiego Biurrun2012-10-06
| | | | Anonymous structs cannot be forward declared and have no benefit.
* parseutils-test: Drop random colors from parsing testDiego Biurrun2012-10-06
| | | | This guarantees stable output for comparing test results.
* x86: get_cpu_flags: add necessary ifdefs around function bodyDiego Biurrun2012-10-04
| | | | | | | ff_get_cpu_flags_x86() requires cpuid(), which is conditionally defined elsewhere in the file. Surrounding the function body with ifdefs allows building even when cpuid is not defined. An empty cpuflags mask is returned in this case.
* x86: Drop CPU detection intrinsicsDiego Biurrun2012-10-04
| | | | | | Now that there is CPU detection in YASM, there will always be one of inline or external assembly enabled, which obviates the need to fall back on CPU detection through compiler intrinsics.
* x86: Add YASM implementations of cpuid and xgetbv from x264Diego Biurrun2012-10-04
| | | | | This allows detecting CPU features with builds that have neither gcc inline assembly nor the right compiler intrinsics enabled.
* x86: cpu: Break out test for cpuid capabilities into separate functionDiego Biurrun2012-10-04
|
* x86: ff_get_cpu_flags_x86(): Avoid a pointless variable indirectionDiego Biurrun2012-10-04
|
* samplefmt: make av_samples_alloc() initialize the data to silence.Anton Khirnov2012-10-04
| | | | Right now the buffer is zeroed, which does not represent silence for U8(P).
* xtea: Test inplace decryptionMichael Niedermayer2012-10-03
| | | | | | Based on test code by: Giorgio Vazzana <mywing81@gmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
* xtea: Fix CBC decryption when src==dstMichael Niedermayer2012-10-03
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* xtea: Factorize testing into a separate functionMartin Storsjö2012-10-03
| | | | | | Based on a patch by Michael Niedermayer. Signed-off-by: Martin Storsjö <martin@martin.st>
* Allow use of strncpy()Mans Rullgard2012-10-03
| | | | | | | | There are cases where strncpy() does exactly what is required. A blanket ban forces more convoluted solutions to be used in those cases and has been a cause of bugs. Signed-off-by: Mans Rullgard <mans@mansr.com>
* blowfish: Add more testsMartin Storsjö2012-10-03
| | | | | | Test inplace ECB, normal CBC and inplace CBC encryption/decryption. Signed-off-by: Martin Storsjö <martin@martin.st>
* blowfish: Fix CBC decryption with dst==srcMartin Storsjö2012-10-03
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* blowfish: Factorize testing into a separate functionMartin Storsjö2012-10-03
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* ARM: use numeric ID for Tag_ABI_align_preservedMans Rullgard2012-10-03
| | | | | | Some old assemblers still in use do not support named tags. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: bswap: drop armcc version of av_bswap16()Mans Rullgard2012-10-02
| | | | | | | This function causes several versions of armcc to miscompile code, and the performance impact is small. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: set Tag_ABI_align_preserved in all asm filesMans Rullgard2012-10-02
| | | | | | | | All our ARM asm preserves alignment so setting this attribute in a common location is simpler. This removes numerous warnings when linking with armcc. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: fix Thumb PIC on AppleMans Rullgard2012-10-02
| | | | | | | LDR with register offset and PC as base register is not available in the Thumb instruction set so the addition must be done separately. Signed-off-by: Mans Rullgard <mans@mansr.com>
* avformat: Remove non-compiling and/or silly commented-out printf/av_log ↵Diego Biurrun2012-10-01
| | | | statements
* ARM: use 2-operand syntax for ADD Rd, PC in Apple PIC codeMans Rullgard2012-09-21
| | | | | | | The Apple assembler refuses to assemble the 3-operand form in Thumb2 even though it is valid syntax. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: align PIC offset pools to 4 bytesMans Rullgard2012-09-21
| | | | | | | | | When building Thumb2 code, the end of a function, where the PIC offsets are placed, need not be aligned. Although the values are only accessed with instructions allowing unaligned addresses, keeping them aligned is preferable. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: swap source operands in some add instructionsMans Rullgard2012-09-20
| | | | | | This allows using a 16-bit opcode when generating Thumb2 code. Signed-off-by: Mans Rullgard <mans@mansr.com>
* flacdsp: arm optimised lpc filterMans Rullgard2012-09-15
|
* lavu/audioconvert: add a second low frequency channel.Tim Walker2012-09-12
| | | | | | Can be used by DTS-HD, TrueHD and E-AC-3, among others. Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
* mem: fix typo in check for __ICCMans Rullgard2012-09-10
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: Replace checks for CPU extensions and flags by convenience macrosDiego Biurrun2012-09-08
| | | | | This separates code relying on inline from that relying on external assembly and fixes instances where the coalesced check was incorrect.
* x86: float_dsp: fix ff_vector_fmac_scalar_avx() on Win64Justin Ruggles2012-09-07
| | | | | The SWAP macro does not work for explicit xmm/ymm usage, so instead just move the scalar value from xmm2 to xmm0.
* avopt: fix examples to match the same style about default values as the ↵Michael Niedermayer2012-09-05
| | | | | | actual code. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavu: add snprintf(), vsnprint() and strtod() replacements for MS runtime.Ronald S. Bultje2012-09-05
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Reorder the default_val struct, making i64 the first fieldMartin Storsjö2012-09-04
| | | | | | Also mention this change in APIchanges. Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Explicitly store rational option defaults in .dblMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Store defaults for AV_OPT_TYPE_INT in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Store defaults for AV_OPT_TYPE_FLAGS in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Store defaults for AV_OPT_TYPE_CONST in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* pixdesc: cosmeticsLuca Barbato2012-09-04
|
* x86: Add convenience macros to check for CPU extensions and flagsDiego Biurrun2012-09-04
|
* x86: Split inline and external assembly #ifdefsDiego Biurrun2012-08-31
|
* x86: cosmetics: Comment some #endifs for better readabilityDiego Biurrun2012-08-30
|
* vf_hqdn3d: x86 asmLoren Merritt2012-08-26
| | | | | 13% faster on penryn, 16% on sandybridge, 15% on bulldozer Not simd; a compiler should have generated this, but gcc didn't.
* AVOptions: store defaults for INT64 options in int64 union member.Anton Khirnov2012-08-24
| | | | | Double does not have enough precision to represent all int64 numbers exactly.
* lavr: x86: optimized 6-channel s16 to fltp conversionJustin Ruggles2012-08-23
|
* x86: remove FASTDIV inline asmMans Rullgard2012-08-22
| | | | | | | | | | | | | | | | | | | GCC 4.3 and later do the right thing with the plain C code. Earlier versions in 32-bit mode generate one extra instruction, needlessly zeroing what would be the high half of the shifted value. At least two gcc configurations miscompile the inline asm in some situations. In 64-bit mode, all gcc versions generate imul r64, r64 followed by shr. On Intel i7 and later, this imul is faster 32-bit mul. On older Intel and all AMD, it is slightly slower. On Atom it is much slower. Considering where the FASTDIV macro is used, any overall negative performance impact of this change should be negligible. If anyone cares, they should file a bug against gcc and get the instruction selection fixed. Signed-off-by: Mans Rullgard <mans@mansr.com>
* configure: Drop fastdiv optionDiego Biurrun2012-08-22
| | | | | | There is no point in having the user disable any fastdiv macros. Besides the condition implementation was broken and only disabled the C implementation, but no platform specific assembly versions.
* Add more missing includes after removing the implicit common.hMartin Storsjö2012-08-16
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Add some more missing includes after removing the implicit common.hMartin Storsjö2012-08-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Don't include common.h from avutil.hMartin Storsjö2012-08-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* ARM: intmath: use native-size return types for clipping functionsMans Rullgard2012-08-13
| | | | | | | This avoids having the compiler redundantly mask the values to the smaller size. Signed-off-by: Mans Rullgard <mans@mansr.com>
* libavutil: add saturating addition functionsMans Rullgard2012-08-13
| | | | | | | Fixed-point audio codecs often use saturating arithmetic, and special instructions for these operations are common. Signed-off-by: Mans Rullgard <mans@mansr.com>