Claudio Freire
7c71ada4ca
aacenc: Fix a rounding bug in aacpsy channel bitrate computation
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-14 12:42:03 +03:00
Matt Wolenetz
252c0bfdc0
lavc: Fix msvc compilation of utils.c with -WX (warnings treated as errors)
...
This fixes https://bugzilla.libav.org/show_bug.cgi?id=514 .
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-14 10:04:43 +03:00
Diego Biurrun
1399931d07
x86: dsputil: Rename dsputil_mmx.h --> dsputil_x86.h
...
The header is not (anymore) MMX-specific.
2013-05-12 22:28:07 +02:00
Diego Biurrun
245b76a108
x86: dsputil: Split inline assembly from init code
...
Also remove some pointless comments.
2013-05-12 22:28:07 +02:00
Diego Biurrun
46bb456853
x86: dsputil: Refactor pixels16 wrapper functions with a macro
2013-05-12 22:28:07 +02:00
Diego Biurrun
f54b55058a
configure: Rename cmov processor capability to i686
...
The goal is to make the capapility slightly more general and have it
cover the availability of the nopl instruction in addition to cmov.
2013-05-12 21:23:38 +02:00
Janne Grunau
94235f2ba2
indeo3: avoid writes without necessary alignment in copy_cell()
...
Cells starting at a position aligned to 8 pixels but wider than
4 blocks are copied with 3 blocks per loop. This creates problems on the
next loop iterations since the routine copying 2 blocks requires the
same alignment on some architectures like ARM NEON.
2013-05-10 12:02:09 +02:00
Christophe Gisquet
2c299d4165
x86: sbrdsp: implement SSE2 qmf_pre_shuffle
...
From 253 to 51 cycles on Arrandale and Win64.
44 cycles on SandyBridge.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-10 09:31:27 +02:00
Diego Biurrun
f243bf7aa2
x86: dsputil: Remove unused argument from QPEL_OP macro
2013-05-08 18:18:58 +02:00
Diego Biurrun
3d40c1ee74
x86: dsputil: Move TRANSPOSE4 macro to the only place it is used
2013-05-08 18:18:23 +02:00
Diego Biurrun
71469f3b63
x86: dsputil: Move constant declarations into separate header
2013-05-08 18:18:23 +02:00
Diego Biurrun
ed880050ed
x86: dsputil: Group all assembly constants together in constants.c
2013-05-08 01:04:04 +02:00
Diego Biurrun
8761466760
x86: dsputil: Move ff_pd assembly constants to the only place they are used
2013-05-08 01:04:04 +02:00
Diego Biurrun
1b343cedd7
x86: dsputil: Remove unused ff_pb_3F constant
2013-05-07 18:03:35 +02:00
Diego Biurrun
3334cbec0a
x86: dsputil: Remove unused MOVQ_BONE macro
2013-05-07 18:03:35 +02:00
Diego Biurrun
63bac48f73
x86: dsputil: Move rv40-specific functions where they belong
2013-05-07 18:03:35 +02:00
Diego Biurrun
92f8e06ecb
x86: dsputil hpeldsp: Move shared template functions into separate object
2013-05-07 18:03:34 +02:00
Diego Biurrun
7edaf4edb5
x86: rnd_template: Eliminate pointless OP_AVG macro indirection
2013-05-07 18:03:34 +02:00
Luca Barbato
e55e8b2c36
lavc: do not leak frames in avcodec_decode_audio4
...
Notwithstanding the return value the frame should be freed if
is not going to be used.
Reported-by: Matthew Wolenetz <wolenetz@chromium.org>
2013-05-07 14:37:32 +02:00
Anton Khirnov
a97d8cc16e
indeo3: use unaligned reads on reference blocks.
...
They are not guaranteed to be aligned.
Fixes Bug 503.
CC:libav-stable@libav.org
2013-05-07 12:29:56 +02:00
Janne Grunau
70f9661542
jpeg2000dec: initialize static data just once
2013-05-06 22:45:47 +02:00
Janne Grunau
45a1694fde
jpeg2000dec: cleanup properly after decoding errors
...
Fixes memory leak in fate-redcode-demux.
2013-05-06 22:27:33 +02:00
Nicolas Bertrand
28816f9db8
jpeg2000: Fix uninitialized data errors pointed out by valgrind/memcheck
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-05-06 13:07:00 +02:00
Diego Biurrun
110796739a
x86: hpeldsp: Move avg_pixels8_x2_mmx() out of hpeldsp_rnd_template.c
...
The function is only instantiated once, so there is no point
in keeping it in a template file.
2013-05-06 11:02:08 +02:00
Diego Biurrun
dc1b328d0d
x86: hpeldsp: Only compile MMX hpeldsp code if MMX is enabled
2013-05-06 11:02:08 +02:00
Diego Biurrun
9e5e76ef9e
x86: More specific ifdefs for dsputil/hpeldsp init functions
2013-05-06 11:02:07 +02:00
Diego Biurrun
2d5fd7886a
bgmc: Do not mark ff_bgmc_decode_init() as av_cold
...
The function is possibly called once per block.
2013-05-05 20:51:52 +02:00
Diego Biurrun
bd8ac88214
avcodec: Add av_cold attributes to end functions missing them
2013-05-05 20:51:28 +02:00
Diego Biurrun
6fee1b90ce
avcodec: Add av_cold attributes to init functions missing them
2013-05-04 21:09:45 +02:00
Diego Biurrun
a5f8873620
silly typo fixes
2013-05-03 18:26:12 +02:00
Christophe Gisquet
4a7af92cc8
sbrdsp: Unroll and use integer operations
...
This patch can be controversial, by assuming floats are IEEE-754 and
particular behaviour of the FPU will get in the way.
Timing on Arrandale and Win32 (thus, x87 FPU is used in the reference).
sbr_qmf_pre_shuffle_c: 115 to 76
sbr_neg_odd_64_c: 84 to 55
sbr_qmf_post_shuffle_c: 112 to 83
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-05-03 18:23:30 +02:00
Christophe Gisquet
8394d9a676
sbrdsp: Unroll sbr_autocorrelate_c
...
1410 cycles to 1148 on Arrandale/Win64
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-05-03 18:23:30 +02:00
Christophe Gisquet
5a97469a4f
x86: sbrdsp: Implement SSE2 qmf_deint_bfly
...
Sandybridge: 47 cycles
Having a loop counter is a 7 cycle gain.
Unrolling is another 7 cycle gain.
Working in reverse scan is another 6 cycles.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-05-03 18:23:14 +02:00
Masaki Tanaka
accde1bd87
vc1_parser: Set field_order.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-03 08:20:19 +02:00
Masaki Tanaka
f43c14d046
mpegvideo_parser: Set field_order.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-03 08:20:11 +02:00
Masaki Tanaka
507b1e454c
avcodec: Add field order information to AVCodecParserContext.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-03 08:16:10 +02:00
Anton Khirnov
803d21f38b
lavc: schedule AVCodecContext.lowres for removal on next bump.
...
It has been deprecated some time ago, but was forgotten during the last
bump.
2013-05-03 08:07:35 +02:00
Diego Biurrun
6b753015ca
aac: Remove aacpsy.h header, unused since 78e65cd772
2013-05-02 18:16:06 +02:00
Diego Biurrun
153f31b1af
cavs: Remove cavsdata.h header, unused since 88386feefd
2013-05-02 18:15:37 +02:00
Diego Biurrun
bf7c3c6b15
x86: dsputil: Move cavs and vc1-specific functions where they belong
2013-05-02 11:45:37 +02:00
Diego Biurrun
9328062321
x86: dsputil: Move avg_pixels16_mmx() out of rnd_template.c
...
The function does not do any rounding, so there is no point in
keeping it in a round template file.
2013-05-02 11:45:37 +02:00
Diego Biurrun
9c112a6158
x86: dsputil: Move avg_pixels8_mmx() out of rnd_template.c
...
The function is only instantiated once, so there is no point
in keeping it in a template file.
2013-05-02 11:45:37 +02:00
Diego Biurrun
9b3a04d306
x86: Move duplicated put_pixels{8|16}_mmx functions into their own file
2013-05-02 11:16:45 +02:00
Diego Biurrun
a650c906cb
ppc: Only compile AltiVec FFT assembly when AltiVec is enabled
2013-05-02 10:25:30 +02:00
Derek Buitenhuis
00b8e650e8
avcodec: doxy: Clarify how to use buf[] when implementing get_buffer2()
...
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-04-30 13:33:43 -04:00
Derek Buitenhuis
4cdb3c50b5
avcodec: doxy: Clarify what get_buffer2 must fill in buf[]
...
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-04-30 13:32:58 -04:00
Diego Biurrun
7f75f2f2bd
ppc: Drop unnecessary ff_ name prefixes from static functions
2013-04-30 16:10:06 +02:00
Diego Biurrun
f2e9d44a57
x86: Drop unnecessary ff_ name prefixes from static functions
2013-04-30 16:02:03 +02:00
Diego Biurrun
383fd4d478
arm: Drop unnecessary ff_ name prefixes from static functions
2013-04-30 16:02:03 +02:00
Diego Biurrun
088f38a4f9
avcodec: Drop unnecessary ff_ name prefixes from static functions
2013-04-30 16:02:02 +02:00
Diego Biurrun
38282149b6
ppc: More consistent arch initialization
2013-04-30 12:19:45 +02:00
Diego Biurrun
42b9150b0d
fft: Remove pointless #ifdefs around function declarations
2013-04-30 12:19:44 +02:00
Diego Biurrun
a053dbfcfb
ppc: Move AltiVec utility headers out of AltiVec ifdefs
...
Now that the headers themselves have ifdef protection this is no
longer necessary and more consistent with normal include handling.
2013-04-30 12:19:44 +02:00
Diego Biurrun
6b110d3a73
ppc: More consistent names for H.264 optimizations files
2013-04-30 12:19:43 +02:00
Diego Biurrun
643e433bf7
mpegaudiosp: More consistent names for ppc/x86 optimization files
2013-04-30 12:19:43 +02:00
Anton Khirnov
e036bb7899
lavc: clear AVBuffers on decoded frames if refcounted_frames is not set
...
Otherwise some code might mistakenly think it is allowed to unref those
buffers, which would lead to double unref.
2013-04-30 11:15:32 +02:00
Anton Khirnov
bda9e6d923
indeo3: use put_pixels instead of put_no_rnd_pixels in copy_cell()
...
They are the same in this case, except put_pixels also has blocksizes
smaller than 8.
2013-04-30 11:06:03 +02:00
Anton Khirnov
95220be1fa
indeo3: fix off by one in MV validity check
...
CC:libav-stable@libav.org
2013-04-30 11:06:03 +02:00
Diego Biurrun
97c56ad796
x86: dsputil: Remove a set of pointless #ifs around function declarations
2013-04-30 01:42:32 +02:00
Diego Biurrun
85f2f82af6
x86: dsputil: cosmetics: Group ff_{avg|put}_pixels16_mmxext() declarations
2013-04-30 01:41:05 +02:00
Diego Biurrun
20784aa678
x86: hpeldsp: Remove unused macro definitions
2013-04-29 15:57:00 +02:00
Luca Barbato
a943a132f3
aac: check the maximum number of channels
...
Broken bitstreams could report a larger than specified number of
channels and cause outbound writes.
CC:libav-stable@libav.org
2013-04-28 00:40:33 +02:00
Diego Biurrun
1b6f84a986
h264_refs: Do not print check_opcodes() return value
...
The return value provides no useful information and removing the printing
avoids the following warning:
libavcodec/h264_refs.c:788:15: warning: 'i' may be used uninitialized in this function [-Wuninitialized]
2013-04-27 19:13:45 +02:00
Diego Biurrun
7c00e9d8ae
x86: ac3dsp: Remove 3dnow version of ff_ac3_extract_exponents
...
The function requires increasing the fuzz factor for the ac3/eac3 encode
tests and even so makes fate fail. It only provides a slight encoding
speedup for legacy CPUs that do not support SS2. Thus its benefit is not
worth the trouble it creates and fixing it would be a waste of time.
2013-04-26 21:06:52 +02:00
Martin Storsjö
74685f6783
x86: Rename dsputil_rnd_template.c to rnd_template.c
...
This makes it less confusing when this template is shared both by
dsputil and by hpeldsp.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-25 23:03:09 +03:00
Martin Storsjö
486f76f029
x86: Get rid of duplication between *_rnd_template.c
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-23 23:30:17 +03:00
Hendrik Leppkes
feec9349d3
mpegvideo: unref cur/next/prev frames when flushing
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-04-23 19:11:59 +02:00
Martin Storsjö
6a8561dbd7
x86: Factorize duplicated inline assembly snippets
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-04-23 15:07:31 +02:00
Nicolas Bertrand
2e2d24667a
jpeg2000: Add mutlti-threading support to decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-04-23 11:53:04 +02:00
Diego Biurrun
c1ad70c3cb
x86: Move some conditional code around to avoid unused variable warnings
2013-04-22 17:50:02 +02:00
Janne Grunau
10f1a4d9bd
jpeg2kdec: output is native endian AV_PIX_FMT_XYZ12
2013-04-22 17:11:21 +02:00
Janne Grunau
94660c3524
threads: always call thread_finish_setup for intra codecs
...
Intra codecs do not need an update_thread_context() function and never
call ff_thread_finish_setup(). They rely on ff_thread_get_buffer()
calling it. So call it even if the get_buffer2 function pointer is
avcodec_default_get_buffer2 and it has not been called before.
2013-04-22 17:11:20 +02:00
Diego Biurrun
f13888afcc
avcodec: Bump minor for JPEG 2000 decoder
2013-04-22 15:52:43 +02:00
Nicolas Bertrand
c81a706381
JPEG 2000 decoder for DCinema
...
Based on the 2007 GSoC project from Kamil Nowosad <k.nowosad@students.mimuw.edu.pl>
Updated to current programming standards, style and many more small
fixes by Diego Biurrun <diego@biurrun.de>.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-04-22 15:38:29 +02:00
Diego Biurrun
0c15a9aa7e
sh4: Remove dubious aligned dsputil code
...
The code represents a considerable maintenance burden and it is not
clear that it gives a noticeable benefit to outweigh this after 10
years of improvements in compiler technology since its creation.
2013-04-22 12:12:24 +02:00
Diego Biurrun
b4ad7c54c8
x86: cavs: Refactor duplicate dspfunc macro
2013-04-22 12:05:09 +02:00
Diego Biurrun
fce99322b0
h264: Drop unused variable
2013-04-22 12:05:09 +02:00
Diego Biurrun
78fa0bd0f7
x86: cavs: Put mmx-specific code into its own init function
...
Before, this code was labeled as mmxext and enabled both for the
3dnow and the mmxext case.
2013-04-22 10:42:50 +02:00
Diego Biurrun
311a592dfc
x86: Remove some duplicate function declarations
2013-04-22 02:29:57 +02:00
Martin Storsjö
6d0fbebf94
ppc: hpeldsp: Include attributes.h
...
This fixes building in configurations where altivec is disabled.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-20 16:43:01 +03:00
Martin Storsjö
b71a0507b0
x86: Remove unused inline asm instruction defines
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-20 00:44:54 +03:00
Martin Storsjö
a60136ee57
vc1: Remove now unused variables
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-20 00:44:49 +03:00
Martin Storsjö
287c8db39e
cosmetics: bfin: Fix indentation in the dsputil init function
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Ronald S. Bultje
d4d186d185
dsputil: Remove non-8bpp draw_edge
...
It is never used.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Ronald S. Bultje
c9f5fcd08c
dsputil: Merge 9-10 bpp functions for get_pixels and draw_edge
...
These only care about pixel storage unit size, not actual bits
used (i.e. they don't clip).
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Ronald S. Bultje
619e0da191
dsputil: Remove unused 32-bit functions
...
Previously, if dct_bits was set to 32, we used separate 32-bit
versions of these functions. Since dct_bits now is removed,
remove the unused 32-bit versions of the functions.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Ronald S. Bultje
c443117f25
dsputil: Remove dct_bits
...
dct_bits is never set except in h264, where it is never used,
thus remove it.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Ronald S. Bultje
54cd5e4f92
dsputil: Remove hpel functions (moved to hpeldsp)
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Ronald S. Bultje
2957d29f05
alpha: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Ronald S. Bultje
78ce568e43
sparc: hpeldsp: Move vis half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:22 +03:00
Michael Niedermayer
278bd2054c
sh4: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:29:21 +03:00
Ronald S. Bultje
bfb41b5039
bfin: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:19:13 +03:00
Ronald S. Bultje
7384b7a713
arm: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:19:08 +03:00
Ronald S. Bultje
47e5a98174
ppc: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:59 +03:00
Ronald S. Bultje
8db00081a3
x86: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:53 +03:00
Ronald S. Bultje
28bc406c84
mjpeg: Use hpeldsp instead of dsputil for half-pel functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:38 +03:00
Ronald S. Bultje
1277dc07fb
svq1enc: Use hpeldsp instead of dsputil for half-pel functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:32 +03:00
Ronald S. Bultje
2f6bc5f7c1
svq3: Use hpeldsp instead of dsputil for half-pel functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:27 +03:00
Ronald S. Bultje
f4fed5a2f9
mpegvideo: Use hpeldsp instead of dsputil for half-pel functions
...
This also converts vc1, since that is mpegvideo-based.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:21 +03:00
Ronald S. Bultje
6caa44aa7d
svq1: Use hpeldsp instead of dsputil for half-pel functions
...
This makes svq1 independent of dsputil.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:14 +03:00