Age | Commit message (Collapse) | Author |
|
Bug-Id: 966
|
|
Adds a wrapper function for downmixing which detects channel count changes
and updates the selected downmix function accordingly.
Simplification and porting to current x86inc infrastructure by Diego Biurrun.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|
|
This is about 200% faster for in-decoder downmixing of 5.0 and 5.1 content.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|
|
Also use (float **) instead of (float (*)[2]). This matches the matrix
layout in libavresample so we can reuse assembly code between the two.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|
|
This fixes decoding corruption on 64 bit windows.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
This avoids SIMD-optimized functions having to sign-extend their
stride argument manually to be able to do pointer arithmetic.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
This avoids SIMD-optimized functions having to sign-extend their
stride argument manually to be able to do pointer arithmetic.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
ptrdiff_t is the correct type for array strides and similar.
Also rename all such parameters to "stride" for consistency.
|
|
25841dfe806a13de526ae09c11149ab1f83555a8
|
|
|
|
|
|
While outwardly bizarre, this change makes the behaviour consistent
with other VAAPI encoders which sync to the encode /input/ picture in
order to wait for /output/ from the encoder. It is not harmful on
i965 (because synchronisation already happens in vaRenderPicture(),
so it has no effect there), and it allows the encoder to work on
mesa/gallium which assumes this behaviour.
|
|
This improves behaviour with drivers which do not support packed
headers, such as AMD VCE on mesa/gallium.
|
|
This allows better checking of capabilities and will make it easier
to add more functionality later.
It also commonises some duplicated code around rate control setup
and adds more comments explaining the internals.
|
|
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|
|
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|
|
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
And use a macro to reduce the boilerplate.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
|
|
This will make the x86 asm simpler.
ARM conversion by Martin Storsjö <martin@martin.st> and Janne Grunau
<janne-libav@jannau.net>
|
|
The x86 version processes 16 floats per iteration, so len must be a
multiple of 16.
|
|
It has no effect, since the code is supposed to operate the same way for
any bit depth.
|
|
Also change shl to add, since it can be faster on some CPUs.
CC: libav-stable@libav.org
|
|
This version, which is the only one doing two processing cycles per loop
iteration, computes the load/store indices incorrectly for the second
cycle.
CC: libav-stable@libav.org
|
|
It is supported by the NVIDIA video SDK 7.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
Fix out of bounds read.
Bug-Id: 962
Found by: F4B3CD@STARLAB and Agostino Sarubbo
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
|
|
There should be an extra offset of 6 on bit_rate_scale and of 4 on
cpb_size_scale which were not accounted for here.
|
|
This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.
Also adjust parameter names to be "stride" everywhere.
|
|
|
|
|
|
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|
|
With some old libva versions <va/va.h> does not automatically include
the per-codec subsidiary headers, so we need to include the right one
explicitly ourselves.
|
|
Enables VP8 decoding - the decoder places the the bitstream version
in the profile field, which we want to ignore.
|
|
|
|
Also adds some extra fields to the main context structure that may
be needed by a hwaccel decoder.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
ptrdiff_t is the correct type for array strides and similar.
|
|
ptrdiff_t is the correct type for array pitches and similar.
|
|
ptrdiff_t is the correct type for array strides and similar.
|