| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
Otherwise the frame is uninitialized, so avcodec_get_frame_defaults()
cannot determine whether to free extended_data.
|
|
|
|
|
| |
AVFrame is used for both audio and video, so calling the argument 'pic'
is misleading.
|
| |
|
|
|
|
|
|
| |
This is required in chained muxers, if the SAR happens to be set.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
| |
Ensure that padded_frame is freed before returning when needed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Not all applications (e.g. MPlayer) set block_align, and
when using a different demuxer it might not even be
easily available.
So fall back to selecting mode based on bit rate as before
if block_align has not useful value.
It can't be worse than failing to decode completely.
(cherry picked from commit 1d0d63052b82c76e10c45cd38cdd27677de72e81)
CC: libav-stable@libav.org
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
|
| |
|
| |
|
|
|
|
| |
Fixes bug 372.
|
| |
|
|
|
|
|
|
|
| |
The Apple assembler refuses to assemble the 3-operand form
in Thumb2 even though it is valid syntax.
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
|
|
|
|
|
|
|
|
| |
When building Thumb2 code, the end of a function, where the PIC
offsets are placed, need not be aligned. Although the values
are only accessed with instructions allowing unaligned addresses,
keeping them aligned is preferable.
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
|
|
|
|
|
| |
This allows using a 16-bit opcode when generating Thumb2 code.
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
|
|
|
|
|
|
|
| |
v5.0 of the TI ARM compiler changes the version string.
This updates the detection to check for both the old and
the new strings.
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
|
|
|
|
|
| |
This occurs with fuzzed mpeg-ts files. set_codec_from_probe_data() is
called with a zeroed AVProbeData since no packet made through for
specific stream.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Inline functions declared without extern do not provide an external
definition in standard C99. This code only works because most
compilers do not implement the inline semantics correctly. With a
stricter compiler, linking fails with unresolved references to these
functions.
Declaring the functions extern inline works correctly with some
compilers while some others still fail to create external definitions.
For maximum portability, create a static inline version with an
externally visible wrapper for ff_get_mb_score. ff_epzs_motion_search
is so large that no sane compiler inlines it anyway, so there the
inline keyword can simply be dropped with no effect.
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Anton Khirnov <anton@khirnov.net>
|
|
|
|
|
|
|
|
|
| |
Frames described by this grouping are the starter of a closed or
an open GOP.
This is useful for open GOP of H.264 stream which is not described
by sync sample atom.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Support Matroska native formatting.
On demuxing prepend a Frame container atom (32bit big endian encoded
frame size and 'icpf' string).
On muxing remove it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support Matroska native formatting.
On demuxing reconstruct the 36-bytes QuickTime atom that the ALAC
decoder expects by prepending the "atom size", "tag" and
"tag version" fields missing from the Matroska's CodecPrivate
element.
On muxing remove the initial 12 bytes
Sample files are available:
http://www.bunkus.org/videotools/mkvtoolnix/samples/alac/alac-in-matroska.mka
and the CoreAudio file it was created from with today's mkvmerge:
http://www.bunkus.org/videotools/mkvtoolnix/samples/alac/alac-in-matroska-source.caf
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
|
|
|
| |
Stricter validation, explicitly exit on misparsing and some error
forwarding from the ebml parsing functions used.
|
| |
|
| |
|
|
|
|
|
| |
Make MATROSKA_TRACK_ENCODING_COMP_HEADERSTRIP behave like
the other encodings and spare few lines of boilerplate code.
|
|
|
|
| |
Make all the compression encodings behave the same way.
|
| |
|
|
|
|
| |
Tested with the GraphicsMagick TIFF archive and Libav generated files.
|
| |
|
|
|
|
|
|
|
| |
Adds a flag context_reinit to MpegEncContext to relieable keep track
of frame parameter changes which require a context reinitialization.
This is required for broken inputs which change the frame size but
error out before the context can be reinitialized.
|
| |
|
|
|
|
|
| |
Fixes triggering an assert in avcodec_default_release_buffer()
introduced in 1b3439b30.
|
|
|
|
| |
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
|
|
|
|
|
|
| |
This adds support for the TI and Microsoft (lib.exe) variants of
the ar utility.
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
|
|
|
|
| |
Specialised functionality for size changes with the advantage of
supporting frame size changes during frame-based multithreading.
|
|
|
|
|
|
| |
This is mainly required for frame parameter changes during frame based
multithreading but single threaded usage profits too from avoiding
ff_MPV_common_end()/ff_MPV_common_init() cycles.
|
|
|
|
|
| |
This is a preparation for supporting frame size changes during
frame-based multithreading.
|
|
|
|
|
|
|
| |
This allows creating canned shorthands for common combinations
of cc, ld etc.
Signed-off-by: Mans Rullgard <mans@mansr.com>
|
|
|
|
|
|
|
| |
This doesn't fix any build failure, but the smoothstreaming muxer
opens a chained ismv muxer.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
|
|
| |
This fixes stream copy from a format that already has incompatible
codec tags set. The chained ismv muxer exports this same codec tag
list, so set it on this one as well, to allow the caller (and
lavf common code) to set them correctly.
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
|
|
|
| |
A quite widespread pattern in the demuxer is read a 32bit unsigned
integer and then loop till this value is reached.
Checking for EOF prevents pathological situations.
|
| |
|
|
|
|
| |
Normal get_bits() already has overread protection.
|
|
|
|
| |
Use planar for DCT codec, interleaved for RDFT codec.
|
|
|
|
| |
Eliminates the need for vector_fmul_scalar() in each frame.
|
|
|
|
|
|
|
|
|
| |
The compiler fails to figure out that enc->codec_type can only
have 3 different values.
Thus when an if/else is encountered it triggers on the possibility
of the else case has not initialized the flags variable.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|