| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Results of IDCT can by far outreach the range of ff_cropTbl[], leading
to overreads and potentially crashes.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes overflows for large image sizes.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
|
| | | |
|
| | |
| | |
| | |
| | | |
Useful for testing.
|
| | | |
|
| | |
| | |
| | |
| | | |
Signed-off-by: Martin Storsjö <martin@martin.st>
|
| | |
| | |
| | |
| | |
| | | |
avcodec_encode_video2() return value is 0 on success, encoded frame size
is stored in the packet.
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | |
| | | |
amv_encode_picture()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | |
| | | |
'const uint8_t *' (aka 'const unsigned char *') discards qualifiers"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes an issue in the code to check the size that will
be written to match the actual code writing. In the long
term it would make sense to change this so the counting and
writing code are the same so they dont need to be kept in sync.
It also increases the array size, which was too small either way
and adds a redudnant saftey check.
This issue does not affect any FFmpeg release as it has been
introduced Jan 31 which is narrowly after our last release.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Fixes ticket #962.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes some arith decoder overreads and a potential infinite loop.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* qatar/master: (31 commits)
cdxl demux: do not create packets with uninitialized data at EOF.
Replace computations of remaining bits with calls to get_bits_left().
amrnb/amrwb: Remove get_bits usage.
cosmetics: reindent
avformat: do not require a pixel/sample format if there is no decoder
avformat: do not fill-in audio packet duration in compute_pkt_fields()
lavf: Use av_get_audio_frame_duration() in get_audio_frame_size()
dca_parser: parse the sample rate and frame durations
libspeexdec: do not set AVCodecContext.frame_size
libopencore-amr: do not set AVCodecContext.frame_size
alsdec: do not set AVCodecContext.frame_size
siff: do not set AVCodecContext.frame_size
amr demuxer: do not set AVCodecContext.frame_size.
aiffdec: do not set AVCodecContext.frame_size
mov: do not set AVCodecContext.frame_size
ape: do not set AVCodecContext.frame_size.
rdt: remove workaround for infinite loop with aac
avformat: do not require frame_size in avformat_find_stream_info() for CELT
avformat: do not require frame_size in avformat_find_stream_info() for MP1/2/3
avformat: do not require frame_size in avformat_find_stream_info() for AAC
...
Conflicts:
doc/APIchanges
libavcodec/Makefile
libavcodec/avcodec.h
libavcodec/h264.c
libavcodec/h264_ps.c
libavcodec/utils.c
libavcodec/version.h
libavcodec/x86/dsputil_mmx.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
It is used to parse fixed sized fields out of a single octet. The code
is simpler without it.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also, do not keep trying to find and open a decoder in try_decode_frame() if
we already tried and failed once.
Fixes always searching until max_analyze_duration in
avformat_find_stream_info() when demuxing codecs without a decoder.
|
| | |
| | |
| | |
| | | |
Use the estimated duration only to calculate missing timestamps if needed.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also, do not give AVCodecContext.frame_size priority for muxing.
Updated 2 FATE references:
dxa-feeble - adds 1 audio frame that is still within 2 seconds as specified
by -t 2 in the FATE test
wmv8-drm-nodec - durations are not needed. previously they were estimated
using the packet size and average bit rate.
|
| | | |
|
| | |
| | |
| | |
| | | |
It is not necessary
|
| | |
| | |
| | |
| | | |
It is not necessary
|
| | |
| | |
| | |
| | | |
It is not necessary
|
| | |
| | |
| | |
| | |
| | | |
also, properly set AVCodecContext.bits_per_coded_sample, AVStreasm.start_time,
and AVPacket.duration.
|
| | |
| | |
| | |
| | | |
it is not necessary.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It is unnecessary. Also, for some codecs we're reading more than 1 frame per
packet. Instead we use a private context variable to calculate the bit rate,
stream duration, and packet durations.
Updated FATE seek test, which has slightly different timestamps due to a
more accurate bit rate calculation.
|
| | |
| | |
| | |
| | | |
It is not necessary.
|
| | |
| | |
| | |
| | | |
prevents lavf from setting incorrect packet durations.
|
| | |
| | |
| | |
| | | |
avformat_find_stream_info() no longer hangs while waiting for AAC frame_size
|
| | |
| | |
| | |
| | |
| | | |
In Ogg/CELT, frame_size is found in the same place as the sample_rate and
channels, so we do not need to force the frame_size to be parsed.
|
| | |
| | |
| | |
| | |
| | | |
It was only needed to avoid a bad time base (and thus non-monotone timestamps)
for stream copy to avi.
|
| | |
| | |
| | |
| | | |
We already will get the needed info because of CODEC_CAP_CHANNEL_CONF
|
| | |
| | |
| | |
| | |
| | | |
This way we can do stream copy without having the demuxer wait until
frame_size has been set.
|
| | |
| | |
| | |
| | |
| | | |
It is more reliable than AVCodecContext.frame_size for codecs with constant
packet duration.
|
| | |
| | |
| | |
| | |
| | |
| | | |
For encoding, frame_size is not a reliable indicator of packet duration.
Also, we don't want to have to force the demuxer to find frame_size for
stream copy to work.
|
| | |
| | |
| | |
| | |
| | | |
This is a utility function for the user to get the frame duration based on
the codec id, frame size in bytes, and various AVCodecContext parameters.
|
| | |
| | |
| | |
| | |
| | |
| | | |
This only returns bits per sample when it is exactly correct. That is, the
codec contains only raw samples with no frame headers or padding. This applies
to basically all PCM codecs and a small subset of ADPCM codecs.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Split off packet parsing into a separate function. Parse full packets at
once and store them in a queue, eliminating the need for tracking
parsing state in AVStream.
The horrible unreadable loop in read_frame_internal() now isn't weirdly
ordered and doesn't contain evil gotos, so it should be much easier to
understand.
compute_pkt_fields() now invents slightly different timestamps for two
raw vc1 tests, due to has_b_frames being set a bit later. They shouldn't
be more wrong (or right) than previous ones.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make packet buffer a parameter, don't hardcode it to be
AVFormatContext.packet_buffer.
Also move the function higher in the file, since it will be called from
read_frame_internal().
|
| | | |
|
| | |
| | |
| | |
| | | |
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This splits ff_dsputil_init_mmx() into multiple functions, one for
each MMX/SSE level, somewhat simplifying the nested conditions.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
|