At least the new videotoolbox decoder does not actually set a frame if
end_frame fails. This causes the API to return success and signals that
a picture was decoded, even though AVFrame->data[0] is NULL.
Fix this by propagating end_frame errors.
Avoid duplicating the literal numeric values
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Change ALLOC_STACK to always align the stack before allocating stack space for
consistency. Previously alignment would occur either before or after allocating
stack space depending on whether manual alignment was required or not.
This is the same fix that Hendrik made to dxva2_hevc. It should be
equally required here, although I don't see any visual difference.
Nevertheless, best to stay consistent.
The latest nvidia 355.06 drivers fixes the interleaving bug when
video surfaces are rendered. It still seems to be broken for
read-back with getBits but that's sufficiently uninteresting that
I don't think we need to wait for it to remove the flag.
Only two functions that use xop multiply-accumulate instructions where the
first operand is the same as the fourth actually took advantage of the macros.
This further reduces differences with x264's x86inc.
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
ucNumDeltaPocsOfRefRpsIdx needs to contain the flat value from the SPS RPS,
and not the final computed value from the slice header RPS, as this calculation
is done internally by the driver again.
Sample-Id: http://trailers.divx.com/hevc/Sintel_4k_27qp_24fps_1aud_9subs.mkvi
* commit '979cb55103fa8e8274806e496901203742c686d1':
hevc: Split the sei parsing in 3 functions
Conflicts:
libavcodec/hevc_sei.c
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
* commit '043f46f5741e1a5caedf55d788e1a72aae3b7605':
hevc: Use switch instead of if-nests in decode_nal_sei_message
Conflicts:
libavcodec/hevc_sei.c
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
* commit '2cd841c0776535be56e4db67485fdd9509c9b9f4':
hevc: Use a proper enum for the SEI values
Conflicts:
libavcodec/hevc_sei.c
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
There is an SSE2 implementation so the SSE version is never used. The "SSE"
version also happens to contain SSE2 instructions on x86-64.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
This commit adds a short description to the aac_coder option of the
AAC encoder in order to be consistent with the other options.
Generally, right now, the 'FAAC' method works fine with speech and
low broadband spectrum audio. 'Fast' is just as the name suggests.
'ANMR' still needs work and 'Twoloop', the default, works well with
every type of audio.
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>