Alexander Strange
cb34867780
h264: fix memleak in error path.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Alexander Strange
147ee4cf06
pthread: Immediately release all frames in ff_thread_flush()
...
Before this, they were only added to the delayed release queue and not
freed until later. This could lead to unnecessary memory use or buffer
exhaustion.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Alexander Strange
6ef4063957
h264: Add check for invalid chroma_format_idc
...
Fixes a crash when FF_DEBUG_PICT_INFO is used.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Ronald S. Bultje
ec0ed97b04
utvideo: port header reading to bytestream2.
...
Fixes crash during slice size reading if slice_end goes negative.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
2ee01fbded
pthread: free progress if buffer allocation failed.
...
Else we run out of progress variables after a few failed buffer
allocations.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
13 years ago
Ronald S. Bultje
bc1ef85520
lavc/avconv: support changing frame sizes in codecs with frame mt.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
13 years ago
Kostya Shishkov
72dadaa957
utvideo: mark output picture as keyframe.
...
Spotted by Антон.
13 years ago
Aneesh Dogra
cc965300cb
sunrast: Add support for negative linesize.
...
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
13 years ago
Janne Salonen
14ba7472dc
vp8: fix update_lf_deltas in libavcodec/vp8.c
...
lf_delta.ref[i] and lf_delta.mode[i] were incorrectly reset to 0 if
specific delta value was not updated. Fixed to keep the previous value
if flag indicates that element in question is not updated.
Signed-off-by: Janne Salonen <jsalonen@google.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Kostya Shishkov
494bce6224
ralf: read Huffman code lengths without GetBitContext
...
Those descriptions are stored in nibbles, so they are easy to extract.
And this way we don't need to pad tables for possible bit reader overreads.
13 years ago
Janne Grunau
cb7190cd2c
rv34: error out on size changes with frame threading
13 years ago
Alex Converse
b00307ecd0
aacsbr: Add a debug check to sbr_mapping.
...
There have been multiple bugs caused by inconsistencies here.
Based on an idea from Michael Niedermayer.
CC: libav-stable@libav.org
13 years ago
Alex Converse
0cb93dacee
aac: Reset some state variables when turning SBR off
...
This makes sure the reset flag gets set when SBR gets turned back on
and sets control variables for unguided mode back to their defaults.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Alex Converse
a237b38021
aac: Reset PS parameters on header decode failure.
...
If the next header frame codes zero envelopes the previous frame's
values will be used. Consequently the invalid values must be cleared.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
71ea26811c
aacsbr: handle m_max values smaller than 4.
...
Prevents a signflip in the counter, and a subsequent crash because of
overreads/overwrites.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Janne Grunau
73ad4471a4
rv34: Handle only complete frames in frame-mt.
...
Correct handling of errors to prevent hags or crashes is very complex
otherwise.
The frame initializing is also moved from decode_slice() to
decode_frame() for clarity.
13 years ago
Janne Grunau
5ab506a5c8
MPV: set reference frame pointers to NULL when allocation of dummy pictures fails
13 years ago
Michael Niedermayer
afa6129016
zerocodec: factorize loop
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
13 years ago
Ronald S. Bultje
262196445c
wmavoice: fix stack overread.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
3c9267673e
wmalossless: error out if a subframe is not used by any channel.
...
Prevents infinite loop because min_channel_len never increments.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
75d7975268
vqa: check palette chunk size before reading data.
...
Prevents overreads beyond buffer boundaries.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
d462949974
wmalossless: reset sample pointer for each subframe.
...
Prevents overwrites when some subframes only encode some channels.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
326f7a68bb
wmalossless: error out on invalid values for order.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Anton Khirnov
677df4d2ef
pngenc: better upper bound for encoded frame size.
...
Fixes encoding very large pictures.
Thanks to Костя for providing the formula.
13 years ago
Kostya Shishkov
87818103a0
wmall: output packet only if we have decoded some samples
...
Also set CODEC_CAP_DELAY to indicate that decoder may still have some
undecoded data left in internal buffer.
13 years ago
Justin Ruggles
6aba117f12
adxenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
54e6cf8a94
adxenc: Use the AVFrame in ADXContext for coded_frame
13 years ago
Ronald S. Bultje
68fd077f68
indeo4: fix out-of-bounds function call.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
13 years ago
Justin Ruggles
5d4017b8f3
vorbisenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
e5aab2d7a4
libvorbis: use AVCodec.encode2()
13 years ago
Justin Ruggles
8ccf545b95
libopencore-amrnbenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
330d9d1b50
ra144enc: use AVCodec.encode2()
13 years ago
Justin Ruggles
f090428234
nellymoserenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
32173df3d2
roqaudioenc: use AVCodec.encode2()
...
The first frame pts must be saved until we have 8 frames since RoQ audio
requires 8 frames in the first packet.
13 years ago
Justin Ruggles
b03dcf07f6
libspeex: use AVCodec.encode2()
13 years ago
Justin Ruggles
57a52f258e
libvo_amrwbenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
db440fa12d
libvo_aacenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
27bacfeb57
wmaenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
b0f75ba272
mpegaudioenc: use AVCodec.encode2()
...
Update FATE references due to encoder delay.
13 years ago
Justin Ruggles
3d853d7ab3
libmp3lame: use AVCodec.encode2()
13 years ago
Justin Ruggles
1987a940b7
libgsmenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
d1afb2f94e
libfaac: use AVCodec.encode2()
...
Encoder output is delayed by several frames, so we keep a queue of input
frame timing info to match up with corresponding output packets.
13 years ago
Justin Ruggles
59041fd053
g726enc: use AVCodec.encode2()
13 years ago
Justin Ruggles
bb03b6f7b1
g722enc: use AVCodec.encode2()
...
FATE reference updated due timestamp rounding because of resampling from
44100 Hz to 16000 Hz in avconv.
13 years ago
Justin Ruggles
910bdb9a42
flacenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
24e74f0a0f
adpcmenc: update to AVCodec.encode2()
13 years ago
Justin Ruggles
aa872af5e3
ac3enc: update to AVCodec.encode2()
...
Update FATE references due to encoder delay.
13 years ago
Justin Ruggles
ad95307f92
aacenc: use AVCodec.encode2()
13 years ago
Justin Ruggles
4bf64961a9
avcodec: add code for a frame queue for use by audio encoders with delay
...
This simplifies matching of timestamps between input frames and output
packets.
13 years ago
Justin Ruggles
f63412fc74
oggdec: output correct timestamps for Vorbis
...
Takes encoder delay into account by comparing first the coded page
duration with the calculated page duration. Handles last packet duration
if needed, also by comparing coded duration with calculated duration.
Also does better handling of timestamp generation for packets in the
first page for streamed ogg files where the start time is not
necessarily zero.
13 years ago