Ronald S. Bultje
9790b44a89
vp9mc/x86: sse2 MC assembly.
...
Also a slight change to the ssse3 code, which prevents a theoretical
overflow in the sharp filter.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
James Almer
67922b4ee4
vp9mc/x86: add AVX and AVX2 MC
...
Roughly 25% faster MC than ssse3 for blocksizes 32 and 64.
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
Clément Bœsch
3cda179f18
vp9mc/x86: rename ff_* to ff_vp9_*
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
James Almer
8be8444d01
vp9mc/x86: rename ff_avg[48]_sse to ff_avg[48]_mmxext
...
pavgb is an sse integer instruction, so the mmxext flag is enough
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
Clément Bœsch
6ab642d69d
vp9mc/x86: simplify a few inits.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
Ronald S. Bultje
3a09494939
vp9mc/x86: add 16px functions (64bit only).
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
Anton Khirnov
89466de4ae
vp9/x86: rename vp9dsp to vp9mc
...
It only contains the MC SIMD, other SIMD will go into different files.
9 years ago
Anton Khirnov
89aebc5bcc
lavc: align the linesize to 32 when AVX is enabled
9 years ago
Christophe Gisquet
3c504bc359
x86: deduplicate some constants
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
Anton Khirnov
d3e4d406b0
h264dec: reset nb_slice_ctx_queued for hwaccel decoding
...
Fixes hwaccel decoding of files with multiple slices.
Found-By: Mark Thompson <sw@jkqxz.net>
9 years ago
Diego Biurrun
3ccec334b8
sbrdsp: Move a misplaced #endif directive to the right spot
9 years ago
Diego Biurrun
e723dce6f8
dvbsubdec: Use NULL instead of 0 as pointer value
9 years ago
Martin Storsjö
9806b9ab5c
Revert "Don't use expressions with side effects in macro parameters"
...
This reverts commit 25bacd0a0c
.
Since 230b1c070
, the bytewise AV_W*() macros only expand their
argument once, so revert to the more readable version of these.
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years ago
Martin Storsjö
25bacd0a0c
Don't use expressions with side effects in macro parameters
...
AV_WB32 can be implemented as a macro that expands its parameters
multiple times (in case AV_HAVE_FAST_UNALIGNED isn't set and the
compiler doesn't support GCC attributes); make sure not to read
multiple times from the source in this case.
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years ago
Martin Storsjö
7ebdffc353
dxv: Check to make sure we don't overrun buffers on corrupt inputs
...
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years ago
Anton Khirnov
e328178da9
qsvdec: only access hwaccel_context is the pixel format is QSV
...
We do not strictly specify that hwaccel_context must be cleared if no
hwaccel is used.
Reported-By: wm4 <nfxjfg@googlemail.com>
9 years ago
Anton Khirnov
5ebef79abe
Fix instances of broken indentation found by gcc 6
9 years ago
Luca Barbato
8495d84f01
ac3dec: Add some inline hints
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years ago
Luca Barbato
3db51bf671
ac3dec: Simplify skipping
...
skip_bits_long() can skip up to 32-bit ranges.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years ago
Luca Barbato
f0ccc65bc9
ac3dec: Split coupling-specific code from decode_audio_block()
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years ago
Luca Barbato
a5ebe5d121
ac3dec: Split spx-specific code from decode_audio_block()
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years ago
Anton Khirnov
a115eb9e75
mimic: do not release the newly obsolete reference at the end of decoding
...
The reference frames are used in update_thread_context(), so modifying
them after finish_setup() is a race. The frame in question will be
released during the next decode call.
CC: libav-stable@libav.org
9 years ago
Diego Biurrun
48b80f8393
hpeldsp: Explain why put_no_rnd_pixels_tab is larger than necessary
9 years ago
Luca Barbato
b183abfb5b
vpx: Support color range
...
The range field has been introduced in version 1.6.0
9 years ago
Anton Khirnov
8e07c22e50
qsvenc: print warnings from encode/init
9 years ago
Anton Khirnov
0956fd4606
qsvenc: do not re-execute encoding on all positive status codes
...
It should only be done for DEVICE_BUSY/IN_EXECUTION
9 years ago
Anton Khirnov
95414eb2dc
qsv: print more complete error messages
...
Include the libmfx error code and its description
9 years ago
Anton Khirnov
d9ec3c6014
qsvenc: take only the allocated dimensions from the frames context
...
Other parameters, like the display size, should still be taken from the
codec context.
9 years ago
Anton Khirnov
37a9015ee8
qsvenc: add support for p010
9 years ago
Anton Khirnov
21962261c7
qsv: handle the semi-packed formats in map_fourcc as well
...
This will allow using this function for encoding as well, where the
input format is already the semi-packed version.
9 years ago
Anton Khirnov
f65285aba0
lavc: set sw_pix_fmt for hwaccel encoding
9 years ago
Anton Khirnov
d59641abfd
lavc: initialize AVCodecContext.sw_pix_fmt properly
...
Currently it's memset to 0, which is YUV420P. It should be initialized
to none.
9 years ago
Vittorio Giovara
a1f6a2dfda
ratecontrol: Reorder functions to avoid forward declarations
9 years ago
Vittorio Giovara
d639dcdae0
ratecontrol: Move Xvid-related functions to the place they are actually used
...
This will simplify the de-MpegEncContextualization.
9 years ago
Vittorio Giovara
44972e227d
ratecontrol: Move mpegenc-only function where it is used
9 years ago
Vittorio Giovara
b4bb959383
ratecontrol: Drop commented out cruft
9 years ago
Diego Biurrun
d06dfaa5cb
x86: huffyuv: Use EXTERNAL_SSSE3_FAST convenience macro where appropriate
9 years ago
Diego Biurrun
4efab89332
x86: Use *_FAST/*_SLOW CPU feature detection macros where appropriate
9 years ago
Diego Biurrun
0a39c9ac0b
x86: hpeldsp: Don't check for bitexact flag when initializing VP3-specific code
...
That code is only ever initialized with that flag set.
9 years ago
Diego Biurrun
95c1df929b
x86: hpeldsp: Drop unused function parameters
9 years ago
Diego Biurrun
c3e83ad3b7
x86: hpeldsp: Use EXTERNAL_SSE2_FAST where appropriate
9 years ago
Diego Biurrun
1dfc3cf89d
x86: hpeldsp: Split off VP3-specific bits into a separate file
9 years ago
Anton Khirnov
e344e65109
h264dec: do not call finish_setup() if we have not started a frame
...
Found-By: Jan Ruge <jan.s.ruge@gmail.com>
Bug-Id: 952
9 years ago
Anton Khirnov
76f7e70aa0
h264dec: handle zero-sized NAL units in get_last_needed_nal()
...
The current code will ignore the init_get_bits() failure and do an
invalid read from the uninitialized GetBitContext.
Found-By: Jan Ruge <jan.s.ruge@gmail.com>
Bug-Id: 952
9 years ago
Anton Khirnov
1f7b4f9abc
h264dec: make sure not to call finish_setup() more than once per frame
...
It does not break anything currently, but should not be done anyway.
9 years ago
Hendrik Leppkes
1ecb63cd1c
hevc: set profile based on the profile compatibility flags if needed
...
This fixes retrieving a valid profile for many of the FATE conformance samples,
allowing them to be properly decoded by the HWAccel after adding a profile check.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
James Almer
fca3c3b619
hevc: Add AVX2 DC IDCT
...
Originally written by Pierre Edouard Lepere <pierre-edouard.lepere@insa-rennes.fr>.
Integrated to Libav by Josh de Kock <josh@itanimul.li>.
Signed-off-by: Alexandra Hájková <alexandra@khirnov.net>
9 years ago
Mickaël Raulet
cc16da75c2
hevc: Add coefficient limiting to speed up IDCT
...
Integrated to libav by Josh de Kock <josh@itanimul.li>.
Signed-off-by: Alexandra Hájková <alexandra@khirnov.net>
9 years ago
Mickaël Raulet
a92fd8a062
hevc: Add DC IDCT
...
Integrated to Libav by Josh de Kock <josh@itanimul.li>.
Signed-off-by: Alexandra Hájková <alexandra@khirnov.net>
9 years ago
Mickaël Raulet
4f247de3b7
hevcdsp_template: Templatize IDCT
...
Integrated to Libav by Josh de Kock <josh@itanimul.li>.
Signed-off-by: Alexandra Hájková <alexandra@khirnov.net>
9 years ago