Commit Graph
100 Commits
Author SHA1 Message Date
Mans Rullgard 9776e25db9 ARM: jrevdct_arm: simplify stack usage
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-13 12:30:22 +01:00
Mans Rullgard 13743c7ab0 ARM: jrevdct_arm: use push/pop mnemonics
Use push/pop instead of stmdb/ldmia for stack operations.  This
is the preferred syntax.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-13 12:30:22 +01:00
Mans Rullgard 77cdfde73e ARM: jrevdct_arm: misc cleanup
- use 'const' macro to define coeff table
- add missing endfunc
- remove superflous directives

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-13 12:30:22 +01:00
Mans Rullgard 5c46ad1da0 ARM: optimised mpadsp_apply_window_fixed
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-13 11:33:44 +01:00
Mans Rullgard 151c584188 build: fix "make install" with documentation disabled
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-11 20:35:53 +01:00
Mans Rullgard 623ffe8c82 build: simplify some conditional targets
Use intermediate targets instead of variables for conditional
parts of "all" and "install" targets.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-11 19:35:47 +01:00
Mans Rullgard b9c6c7cb25 build: remove empty $(OBJS) target
This target was added to prevent some files being deleted
by make when using chains of implicit rules.  This is no
longer required.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-07 01:28:40 +01:00
Mans Rullgard 6d170962bd build: make rule for linking ff* apply only to these targets
This ensures that the special link command using cmdutils.o
only applies to the targets it should.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-07 01:28:15 +01:00
Mans Rullgard d93d7349ce build: rearrange some lines in a more logical way
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 23:21:12 +01:00
Mans Rullgard 21c6512542 ARM: remove MUL64 and MAC64 inline asm
Current GCC versions know how to generate these instructions
properly and avoiding inline asm gives better code.  The MULH
function for ARMv5 uses the same instruction and is also not
needed any more.

The MLS64 macro remains since negating an input would normally
not be allowed as it would fail for INT_MIN.  In our uses, the
inputs never have this value and thus negating is safe.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 17:33:40 +01:00
Mans Rullgard 0018b7f043 build: clean up .PHONY lists
This removes nonexisting targets from phony lists and puts them
all in one place.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 16:56:53 +01:00
Mans Rullgard d7a72d250b build: move all (un)install* target aliases to toplevel Makefile
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 16:56:53 +01:00
Mans Rullgard 171ae1eb0d build: remove stale dependency
This dependency is implicitly covered elsewhere.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:52:23 +01:00
Mans Rullgard 5eaba041a0 build: do not add CFLAGS-yes to CFLAGS
CFLAGS-yes is never set so this serves no purpose.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:48:44 +01:00
Mans Rullgard 8477f2deef configure: simplify source_path setup
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:16:23 +01:00
Mans Rullgard dc435c4e9d configure: remove --source-path option
This option does not work, and the implied functionality is
at best pointless.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:16:15 +01: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 594fbe42c6 ARM: remove MULL inline asm
Reasonable gcc versions get this one right on their own.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-04 21:33:23 +01:00
Mans Rullgard 95912731c2 mathops: use MUL64 macro where it forms part of other ops
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-04 20:10:20 +01:00
Mans Rullgard 42abb9a80d cmdutils: add missing const qualifier
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-04 18:09:01 +01:00
Mans Rullgard 67ace7f047 musepack: remove unnecessary #include from mpcdata.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-04 17:03:59 +01:00
Mans Rullgard 91b4941c17 musepack: remove extraneous mpcdata.h inclusions
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-04 17:03:59 +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 dc6632f119 build: simplify commands for clean target
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-03 19:33:32 +01:00
Mans Rullgard 5e1166b31b Mark some variables with av_unused
Most of these variables are only used in av_dlog statements, some
are required but not used by other macros.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-03 12:59:05 +01:00
Mans Rullgard 551dfdde70 targa: fix big-endian build 2011-06-02 21:18:04 +01:00
Mans Rullgard 4c1e56ede8 oma: check avio_read() return value 2011-06-02 20:06:18 +01:00
Mans Rullgard 14086341bf nutdec: remove unused variable 2011-06-02 20:06:18 +01:00
Mans Rullgard e65ab9d94f Remove unused variables 2011-06-02 20:06:00 +01:00
Mans Rullgard 8e112df409 ARM: ac3dsp: optimised update_bap_counts()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-01 15:45:13 +01:00
Mans Rullgard c51695dbf6 ARM: fix MUL64 inline asm for pre-armv6
Prior to ARMv6, the destination registers of the SMULL instruction
must be distinct from the first source register.  Marking the
output early-clobber ensures it is allocated unique registers.

This restriction is dropped in ARMv6 and later, so allowing overlap
between input and output registers there might give better code.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-31 22:21:00 +01:00
Mans Rullgard fdf18e33bb mpegaudiodec: remove unusued code and variables
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-31 18:52:02 +01:00
Mans Rullgard 6f1ec38ce2 mpegaudio: clean up compute_antialias() definition
This merges the float and fixed-point versions of the compute_antialias
function, fixes invalid array indexing, and eliminates a dead copy of
csa_table.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-31 15:30:21 +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 371266daa3 ARM: enable UAL syntax in asm.S
This enables UAL syntax for all asm files instead of only those
which happen to be incompatible with the old, deprecated syntax.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-29 15:42:56 +01:00
Mans Rullgard 798b264678 build: remove BUILD_ROOT variable
This variable is unnecessary as absolute paths are not required.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-29 12:36:16 +01:00
Mans Rullgard 4276112277 vp8: use av_clip_uintp2() where possible
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-29 02:10:05 +01:00
Mans Rullgard 90da52f01f ac3enc: fix LOCAL_ALIGNED usage in count_mantissa_bits()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 21:42:31 +01:00
Mans Rullgard edfa89b260 ARM: unbreak build
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 18:41:20 +01:00
Mans Rullgard e01e05ee66 get_bits: add av_unused tag to cache variable
This silences numerous compiler warnings from skip_bits(),
where the cache variable is not used.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 17:04:47 +01:00
Mans Rullgard 7d8c17b5f6 ARM: aacdec: fix constraints on inline asm
This adds output operands for modified memory allowing the
volatile qualifiers to be dropped.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 15:00:17 +01:00
Mans Rullgard 84e4804ad0 ARM: remove unnecessary volatile from inline asm
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 15:00:17 +01:00
Mans Rullgard 5726ec171b ARM: add "cc" clobbers to inline asm where needed
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 15:00:17 +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
Mans Rullgard 7f7726c7a2 ac3enc: use LOCAL_ALIGNED macro
Aligned local variables must use the LOCAL_ALIGNED macro to ensure
correct alignment on all systems.  The unusual size argument to
memset is required since the implementation of LOCAL_ALIGNED may
use a pointer to an array.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-28 15:00:16 +01:00
Mans Rullgard 79aeade6f6 ARM: disable ff_vector_fmul_vfp on VFPv3 systems
This function uses old-style vector operations deprecated in VFPv3.
Some implementations, e.g. Cortex-A9, support them only through
slow software emulation.  Cortex-A8 does have this functionality
in hardware, but as it also has NEON, this function is not used
there regardless.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-27 20:33:06 +01:00
Mans Rullgard 93eb8e4d7c ARM: check for VFPv3
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-27 20:33:05 +01: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
Mans Rullgard 9bbd6a4cd8 configure: enable memalign_hack automatically when needed
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-25 00:47:05 +01:00
Mans Rullgard a1d0dcc713 configure: make executable again
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 18:11:31 +01:00
Mans Rullgard 6da57043ea fate: disable threading for encoding
This explicitly disables threading for encoding as slices are otherwise
automatically activated.  This should be dropped once option resetting
between files is fully implemented.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 13:50:52 +01:00
Mans Rullgard 5ffccc0056 fate: add comment field
This adds a comment field to the report header, suitable for
extra information not covered by the automatic fields.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 13:50:52 +01:00
Mans Rullgard eb8da636af fate: allow overriding default build and install dirs
This is useful e.g. for building in a different filesystem than
where the source is kept.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 13:50:52 +01:00
Mans Rullgard f255a28d14 mpegaudio: clean up #includes
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 11:05:19 +01:00
Mans Rullgard 0199e00bc8 mpegaudio: move all header parsing to mpegaudiodecheader.[ch]
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 11:05:07 +01:00
Mans Rullgard 89a2098735 Fix ff_mpa_synth_filter_fixed() prototype
The prototype should use the same typedefs as the definition, or it
will fail where int32_t is not int (DOS apparently).

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-20 01:20:53 +01:00
Mans Rullgard 272874c9db Simplify trig table rules
This collapses the make rules for the trig tables into a pattern
rule.  Based on a patch by Diego, modified to avoid using fragile
make constructs and allow future addition of fixed-point sin tables.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 19:45:06 +01:00
Mans Rullgard 0b5e44ed29 mpegaudiodsp: fix x86 and ppc makefiles
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 16:32:24 +01:00
Mans Rullgard c2a16e44f8 mpegaudio: remove unused version of SAME_HEADER_MASK
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 14:06:25 +01:00
Mans Rullgard d7d21c9f4b mpegaudio: remove useless #undef at end of file
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 13:30:22 +01:00
Mans Rullgard b122c65107 asfdec: add missing #include for av_bswap32()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 12:38:43 +01:00
Mans Rullgard c7bbc6cd7a mpegaudio: merge two #if CONFIG_FLOAT blocks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 12:25:36 +01:00
Mans Rullgard 918d0584a4 mpegaudio: move some struct definitions from mpegaudio.h
These structs are only used in mpegaudiodec.c, so move them there
and remove no longer needed #include lines from mpegaudio.h.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 12:25:36 +01:00
Mans Rullgard c4f5c2d6f4 Move some mpegaudio functions to new mpegaudiodsp subsystem
This separation allows these functions to be used in a cleaner
fashion from other codecs (e.g. qdm2) and simplifies creating
optimised versions of them.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-19 12:25:34 +01:00
Mans Rullgard f907ad9b85 Remove unused make variable SEEK_REFFILE
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-18 20:21:27 +01:00
Mans Rullgard 164c24c858 fate: remove redundant aref and vref references
The ref targets are included in the FATE_[AV]CODEC lists created
by configure so they do not need to be listed separately in the
makefile.  Filter them out when setting dependencies to avoid make
warnings about circular deps.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-18 19:24:35 +01:00
Mans Rullgard 1a14a27603 fate: remove do_ffmpeg_nocheck function
This function is essentially an alias for run_ffmpeg and is only
used in one place.  This patch removes the function and replaces
the call with the equivalent (simpler) run_ffmpeg call.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-18 15:38:26 +01:00
Mans Rullgard d4a7df423c fate: do not collect -benchmark output
The old regtest scripts pass -benchmark and collect the utime values.
As these values are never used, this machinery can be removed.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-18 15:38:25 +01:00
Mans Rullgard a06bf6368b mpegaudiodec: remove decode_end() function
This function is not needed since 721d6f2dc5 removed the DCT table
allocations for the configuration used here.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-18 15:38:19 +01:00
Mans Rullgard 70378ea190 fate: run aref and vref as regular tests
These tests create reference files used for psnr calculation in
the other codec tests.  Treating them as (mostly) regular tests
simplifies the makefile and makes them visible in the fate reports.
The latter makes errors in these runs easier to identify.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-18 14:45:46 +01:00
Mans Rullgard dede36bd02 mpegaudio: sanitise compute_antialias_* names
This makes the compute_antialias functions use the same naming
convention as everything else.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-18 13:16:59 +01:00
Mans Rullgard 4bac1bbc3b mpegaudio: add _fixed suffix to some names
This adds a _fixed suffix to the fixed-point versions of things
with both float and fixed-point variants.  This makes it more
consistent with other dual-implementation things, e.g. fft.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-17 20:17:36 +01:00
Mans Rullgard 6f2309ed2e dct: build dct32 as separate object files
This builds the float and fixed-point versions of dct32 separately
instead of #including the file in dct.c and mpegaudiodec.c.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-17 13:57:23 +01:00
Mans Rullgard 1362a291c9 qdm2: include correct header for rdft
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-17 13:51:09 +01:00
Mans Rullgard 005db47011 mathops: remove ancient confusing comment
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-16 21:34:39 +01:00
Mans Rullgard bdefbf3e88 mpegaudio: move OUT_FMT macro to mpegaudiodec.c
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-16 17:49:25 +01:00
Mans Rullgard 92ea249d7d mpegaudio: remove OUT_MIN/MAX macros
These macros are no longer needed after the s32 output was removed.
Change the relevant code to use av_clip_int16() instead of using
explicit limits.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-16 17:49:25 +01:00
Mans Rullgard 5026f946fd Add missing #includes to mp3_header_(de)compress bsf
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-16 17:10:46 +01:00
Mans Rullgard 9503fbb859 dct: fix indentation
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-16 16:20:27 +01:00
Mans Rullgard 721d6f2dc5 dct: bypass table allocation for DCT_II of size 32
The size-32 DCT_II has a special implementation which doesn't use
the normal tables.  Skipping allocation of these in this case saves
some memory.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-16 16:20:18 +01:00
Mans RullgardandRonald S. Bultje 1550f45a89 Add av_clip_uintp2() function
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-13 16:45:24 -04:00
Måns RullgårdandDiego Biurrun ced9556b61 configure: Enable libpostproc automatically if GPL code is enabled.
Enabling libpostproc automatically should give it more compile coverage
and save the FATE box maintainers some configuration hassles.
2011-05-12 15:32:57 +02:00
Mans Rullgard a88ef93b4a mpegaudiodec: group #includes more sanely
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-09 22:27:16 +01:00
Mans Rullgard 0d849074a4 mpegaudio: remove #if 0 blocks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-09 22:22:12 +01:00
Mans Rullgard 6bb6fb05ba mpegaudio: remove CONFIG_MPEGAUDIO_HP option
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>
2011-05-09 17:30:12 +01:00
Mans Rullgard ecfc5e0b72 regtest: fix wma tests
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>
2011-05-09 12:48:18 +01:00
Mans Rullgard 3a2e80ecbc mpegaudio: remove CONFIG_AUDIO_NONSHORT
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>
2011-05-09 10:12:47 +01:00
Mans Rullgard eeadaa6bc0 regtest: separate flags for encoding and decoding
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>
2011-05-09 10:12:39 +01:00
Mans Rullgard fc7314b31c regtest: remove redundant flags in jpg test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-08 10:58:51 +01:00
Mans Rullgard 765f72f8c4 regtest: use run_ffmpeg in do_image_formats
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-08 10:58:46 +01:00
Mans Rullgard 2728fd9053 regtest: simplify encoding functions
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>
2011-05-08 10:58:32 +01:00
Mans Rullgard 762f95e4cb configure: warn if pkg-config is missing
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-05 18:29:55 +01:00
Mans Rullgard eddd580b74 matroskaenc: fix memory leak
This fixes a memory leak occurring when no cue points are defined
since commit 91819763.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-04 18:06:45 +01:00
Mans Rullgard 5f2e6c0fd1 ac3enc: NEON optimised extract_exponents
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-04-05 01:11:16 +01:00
Mans Rullgard 2310ee4b1c ac3enc: move extract_exponents inner loop to ac3dsp
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-04-04 18:27:22 +01:00
Mans Rullgard 906fd03070 fate: fix partial run when no samples path is specified
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>
2011-04-03 23:16:45 +01:00
Mans Rullgard f7653904c8 ARM: NEON fixed-point forward MDCT
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-04-03 22:39:52 +01:00
Mans Rullgard dba9852935 ARM: NEON fixed-point FFT
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-04-03 22:39:52 +01:00