* commit '39dc4a6bb34baf833ce1e5eabad7d0dbf933237d':
x86: dca: Add missing multiple inclusion guards
gitignore: Add all examples below doc/examples
arm: Mark the stack as non-executable
doxygen: Replace @parblock syntax with manual linebreaks
doxygen: Add a number of missing function parameter descriptions
Conflicts:
.gitignore
libavformat/avformat.h
All changes are already in our 2.2 branch, this is just for metadata
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'a6a2d8eb8f125a2edb512a7a47df33dbd70d6b35':
qt-faststart: Add a note about the -movflags +faststart feature
qt-faststart: Avoid unintentionally sign extending BE_32
qt-faststart: Check offset_count before reading from the moov_atom buffer
qt-faststart: Check the ftello() return codes
qt-faststart: Fix the signedness of variables keeping the ftello return values
qt-faststart: Check fseeko() return codes
qt-faststart: Simplify code by using a MIN() macro
qt-faststart: Increase the copy buffer size to 64 KB
Conflicts:
tools/qt-faststart.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '1d1df82093fdacb2cbc443c70c80f8f801002d28':
pthread_frame: flush all threads on flush, not just the first one
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'de187e3e9ec4803575deb1c293ccad84d2a88da8':
h264: Fix a typo from the previous commit
h264: Lower bound check for slice offsets
hevc: Always consider VLC NALU type mismatch fatal
Prepare for 10_beta2 Release
build: The MPEG-4 video parser depends on h263dsp
Conflicts:
RELEASE
configure
All changes are already in our 2.2 branch, this is just for metadata
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Without this cast, the BE_32() expression is sign extended when
assigned to an uint64_t, since the uint8_t|uint8_t expression
is promoted to an int.
Also avoid undefined behaviour when left shifting an uint8_t
by 24 by casting it to an uint32_t explicitly before shifting.
Based on a patch by Michael Niedermayer.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit ea7f79f937)
If linking in an object file without this attribute set, the
linker will assume that an executable stack might be needed.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 543156d751)
avcodec_flush_buffers() must release all internally held references
according to its documentation, for which all the threads need to be
flushed.
CC:libav-stable@libav.org
Bug-Id: vlc/9665
(cherry picked from commit d1f9563d50)
And use the value from the specification.
Sample-Id: 00000451-google
Found-by: Mateusz j00ru Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit f777504f64)
These variables are assigned the return values of ftello, which
returns an off_t, which is a signed type. On errors, ftello returns
-1, thus make sure this error return value can be stored properly.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 03c2a66fcf)
qt-faststart doesn't use the normal libav headers at all since
it's supposed to be a completely standalone tool, so we implement
the macro locally in this file.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit ea15a9a5d8)
Copying data in chunks of 1 KB is a little wasteful.
64 KB should still easily fit on the stack, so there's no need
to allocate it dynamically.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 3cbc7ef3d6)
The new function has the ability to allocate the structure, allowing it to grow
without needing major bumps
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This structure is used in the interface between libs and thus cannot have
fields added in the middle without major bump
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Timings for Arrandale:
C SSE
win32: 2108 334
win64: 1152 322
Factorizing the inner loop with a call/jmp is a >15 cycles cost, even with
the jmp destination being aligned.
Unrolling for ARCH_X86_64 is a 20 cycles gain.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* commit '92e598a57a7ce4b8ac9ea56274af39f5fd888311':
prores: Drop DSP infrastructure for prores encoder bits
Conflicts:
libavcodec/Makefile
libavcodec/proresdsp.c
libavcodec/proresenc_kostya.c
Note, these changes only affect one of the 2 prores encoders we have
If someone wants to add optimizations to the affected encoder, or needs/wants
this infrastructure, then iam happy to revert this
Merged-by: Michael Niedermayer <michaelni@gmx.at>
AAC LOAS can have new audio config objects in the stream itself.
Make sure the decoder reconfigures itself when the first one arrives
midstream.
Bug-Id: 644
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
The vector dequantization has a test in a loop preventing effective SIMD
implementation. By moving it out of the loop, this loop can be DSPized.
Therefore, modify the current DSP implementation. In particular, the
DSP implementation no longer has to handle null loop sizes.
The decode_hf implementations have following timings:
For x86 Arrandale:
C SSE SSE2 SSE4
win32: 260 162 119 104
win64: 242 N/A 89 72
The arm NEON optimizations follow in a later patch as external asm. The
now unused check for the y modifier in arm inline asm is removed from
configure.
Based on a patch from Christophe Gisquet.
Unrolling of the m == 0 case avoids a possible use of the uninitilized
value sum when s->predictor_history is not set. I failed to find a
sample for it. It also reduced the cycle count from 220 to 150 on
sandy bridge, x86_64 linux, gcc 4.8.2 compared to his patch.