It is useful for applications that hand input data directly to lavf via
a ByteIOContext.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 3940caad02)
There is no need to pass the ByteIOContext via a pointer to a pointer
anymore.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit aad216fd7e)
Currently (since the data_offset fix) the ogg demuxer assumes that
after the first non-header packets in any stream no more header packets
will follow.
This is not guaranteed, so change the code back again to wait until it
has finished the headers for all streams before returning from ogg_get_headers.
This fixes issue 2428.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 6bd69e6ada)
Haiku does not have a separate libm, so do not try to link to it.
Signed-off-by: François Revol <revol@free.fr>
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit f59c4bd625)
In all 3 cases, the decoding continues and thus a warning would be sufficient.
Helps application that catch them with own log handers to handle them
accordingly.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit ae2104791f)
This adds NEON optimised versions of all functions in VP8DSPContext.
Based on initial work by Rob Clark.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit a1c1d3c003)
This validate the length of a mkv element directly after reading
it.
This has the advantage that it is easy to add new limits and makes
it less likely to forget to add checks and also avoids issues like
bits of the length value above the first 32 being ignored because
the parsing functions only takes an int.
Previously discussed in the "mkv 0-byte integer parsing" thread.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 95ec3d4cac)
Change int64_t into a int, which caused this compiler warning:
libavformat/oggparseskeleton.c:64: warning: passing argument 2 of ‘av_reduce’ from incompatible pointer type
(cherry picked from commit 69ff149204)
Use avio functions instead of bytestream ones (also drops dependency on
lavc and removes a bunch of warnings).
Drop custom version of avio_get_str16 and use that instead.
Tested on mewmew-ssa.avi sample.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 47fdf00a77)
Makes playing QDMC files in MPlayer work when using the libavformat demuxer.
Problem was that the extradata was not passed from demuxer to decoder.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit ed19fafd48)
NASM versions older than 2.08 fail to build ffmpeg with several
"error: operation size not specified" errors but this is not caught in
configure.
Fix that by checking if "pextrd [eax], xmm0, 1" works in configure.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 48545a8f72)
Due to being pants-on-head retarded, libavcodec defaults this to zero, which
results in broken output. This didn't affect ffmpeg.c, which sets it itself,
but caused problems for other calling apps using VBV.
Fix emu_edge_v_extend_15 to be <128 bytes on Win64, by being more strict
on the size of registers and which registers are being used for operations
where multiple are available. This fixes segfaults in emulated_edge()
function calls on Win64.
Currently (since the data_offset fix) the ogg demuxer assumes that
after the first non-header packets in any stream no more header packets
will follow.
This is not guaranteed, so change the code back again to wait until it
has finished the headers for all streams before returning from ogg_get_headers.
This fixes issue 2428.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Haiku does not have a separate libm, so do not try to link to it.
Signed-off-by: François Revol <revol@free.fr>
Signed-off-by: Mans Rullgard <mans@mansr.com>
In all 3 cases, the decoding continues and thus a warning would be sufficient.
Helps application that catch them with own log handers to handle them
accordingly.
Signed-off-by: Mans Rullgard <mans@mansr.com>
In some places, dvbsubdec passes improper input buffer size to
bitstream reading functions, not accounting for reading pointer
updates.
Fixed by using buffer_end - buffer pointer instead of fixed buffer length.
Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>