The low quality mode is off by default and never tested. The high
quality mode is also plenty fast enough.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This adds $DEC_OPTS to the wma decode commands, making tests pass
on systems where the bitexact flag is needed.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This fake option cannot be enabled by normal means, and the
floating-point decoder should provide the higher quality this
option presumably was intended for.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This separates encoding and decoding flags, and passes them together
with the related file argument instead of all at the start of the
command line.
Signed-off-by: Mans Rullgard <mans@mansr.com>
The video encoding options were needlessly split in two parameters
which are merged. The do_audio_encoding function did not use its
second argument, so this can be removed.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This restores the behaviour of running only the builtin
regression tests when no path to external samples is given.
aa3805a inadvertently broke this by always setting SAMPLES
to something. Using := makes the ifdef test work as expected
when the FATE_SAMPLES environment variable is empty.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This makes the AC3 encoder use the shared fixed-point MDCT rather
than its own implementation. The checksum changes are due to
different rounding in the MDCT.
Signed-off-by: Mans Rullgard <mans@mansr.com>
These expressions are equivalent since levels is always odd, and
overflow is impossible due to the constraints set by the assert().
Signed-off-by: Mans Rullgard <mans@mansr.com>
These fields are only used in quantize_mantissas() and reset
on each call, no need to store them in the main context.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Stripping is generally best left to package management tools, and
since unstripped copies are kept in the build tree, any arguments
about saving space (no matter how insignificant) are void.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This moves the check for --as-needed linker support before all
library tests, ensuring consistent behaviour between the checks
and the actual link step.
Signed-off-by: Mans Rullgard <mans@mansr.com>
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>
ICC lies about the version of gcc it emulates, which results
in unsupported attributes sometimes being used. The warning
is an annoyance and should be disabled.
Signed-off-by: Mans Rullgard <mans@mansr.com>
These windows do not really belong in fft/mdct files and were
easily confused with the similarly named tables used by rdft.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This function is not tightly coupled to mdct, and it's in the way
of making a fixed-point mdct implementation.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This removes the rather pointless wrappers (one not even inline)
for calling the fft_calc and related function pointers.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Since initially committed in 2004, this codec has only been touched
for maintenanance. Functionally, it contains no novel ideas and
its intended audience is better served by existing mature codecs.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This updates the seek test reference to match de11ee9. Before this
change, most of the seeks requested positions before the supposed
start of the file (the preroll time), resulting in the first packet
being returned. With the preroll subtracted, some of these seeks
will land within the file and some beyond the end, thus returning
a different set of packets.
Signed-off-by: Mans Rullgard <mans@mansr.com>
There are several places where a buffer is byte-swapped in 16-bit units.
This allows them to share code which can be optimised for various
architectures.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This makes existing pkg-config uses as well as the libsdl checks
use the new pkg-config helper functions, which should be more
robust against broken systems.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This adds helper functions for checking packages with pkg-config
and managing the associated flags.
Note that pkg-config use is still discouraged due to widespread
poor practices resulting in broken flags in many situations. A
few badly designed packages require flags only obtainable using
pkg-config, and these functions are intended for those cases.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This makes it possible to pass a space-separated list of functions
to check_func_headers and check_lib2. If any function is missing,
none are enabled as available, so this should only be used for
all-or-nothing sets, i.e. groups in which none will be used if any
one is missing.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This fixes compilation with preprocessors which do not add whitespace
around replaced tokens, resulting in invalid expressions like 1--1.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This moves setting the thread count to a minimum of 1 to
frame_thread_init(), allowing a value of zero to propagate
through to the codec if frame threading is not used. This
makes auto-threads work in libx264.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Although not documented, clang does support the --sysroot flag, and it
does the right thing. Use this flag intead of -isysroot which only
applies to header file searches, not the linker.
Signed-off-by: Mans Rullgard <mans@mansr.com>
The assembler emits literal pools too far from the load instructions,
so we must do it explicitly at a suitable location.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Use the FATE_SAMPLES environment variable if samples location
is not set with the --samples configure option or on the make
command line.
Signed-off-by: Mans Rullgard <mans@mansr.com>
GCC 4.3 and later are more particular about signedness matching
in vector operations. The operations under if(rangered) were
missing assignments and thus had no effect.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This ensures the tools are rebuilt when necessary. Specifically,
lavfi-showfiltfmts was sometimes not rebuilt causing spurious test
failures.
Signed-off-by: Mans Rullgard <mans@mansr.com>
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>
The colon operator of expr always anchors the pattern at the start
of the string. An explicit ^ in the pattern has unspecified
behaviour, so remove it.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This makes the cc_ident value, which is used in FATE reports, include
all interesting parts of the gcc version string.
Signed-off-by: Mans Rullgard <mans@mansr.com>
When built with gcc 4.6, the MMX rgb24 to yuv conversion gives
wrong output. The compiler produces this warning:
libswscale/swscale_template.c:1885:5: warning: use of memory input without lvalue in asm operand 4 is deprecated
Changing the memory operand to a register makes it work.
Signed-off-by: Mans Rullgard <mans@mansr.com>
The early disabling of irrelevant arch extensions is no longer
required, and removing it makes dependencies involving these
work as expected.
Signed-off-by: Mans Rullgard <mans@mansr.com>
The avcodec_thread_free() compatibility wrapper calls ff_thread_free(),
which is not defined when threading is disabled. Make this call
conditional.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This makes "make documentation" build the man/html pages only for
the tools enabled in the build. It also fixes the dependency
tracking for the built man pages.
Signed-off-by: Mans Rullgard <mans@mansr.com>