Andreas Cadhalpun
							
						 
						
							
							
							
								
							
								0ccddbad20 
								
							
								 
							
						 
						
							
							
								
								smacker: limit recursion depth of smacker_decode_bigtree  
							
							 
							
							 
							
							
								
							
							
							This fixes segmentation faults due to stack-overflow caused by too deep
recursion.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Sean McGovern <gseanmcg@gmail.com> 
							
						 
						9 years ago  
					 
				
					
						
							
							
								   Michael Niedermayer
							
						 
						
							
							
							
								
							
								cd4663dc80 
								
							
								 
							
						 
						
							
							
								
								smacker: add sanity check for length in smacker_decode_tree()  
							
							 
							
							 
							
							
								
							
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Bug-Id: 1098
Cc: libav-stable@libav.org 
Signed-off-by: Sean McGovern <gseanmcg@gmail.com> 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Diego Biurrun
							
						 
						
							
							
							
								
							
								5edded9df3 
								
							
								 
							
						 
						
							
							
								
								smacker: Improve error handling  
							
							 
							
							 
							
							
								
							
							
							Return sensible error values and forward error codes. 
							
						 
						8 years ago  
					 
				
					
						
							
							
								   Michael Niedermayer
							
						 
						
							
							
							
								
							
								b98f082d8d 
								
							
								 
							
						 
						
							
							
								
								smacker: Check that the data size is a multiple of a sample vector  
							
							 
							
							 
							
							
								
							
							
							Fixes out of array access
Fixes: ce19e41f0ef1e52a23edc488faecdb58/asan_heap-oob_2504e97_4202_ffa0df1baed14022b9bfd4f8ac23d0cb.smk
Bug-Id: CVE-2015-8365
CC: libav-stable@libav.org 
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 4a9af07a49 )
Signed-off-by: Diego Biurrun <diego@biurrun.de> 
							
						 
						10 years ago  
					 
				
					
						
							
							
								   Luca Barbato
							
						 
						
							
							
							
								
							
								73fc82f343 
								
							
								 
							
						 
						
							
							
								
								vlc: Add header #include when the types are used  
							
							 
							
							 
							
							
								
							
							
							Do not rely on indirectly including it from bitstream.h.
Signed-off-by: Diego Biurrun <diego@biurrun.de> 
							
						 
						8 years ago  
					 
				
					
						
							
							
								   Diego Biurrun
							
						 
						
							
							
							
								
							
								a25dac976a 
								
							
								 
							
						 
						
							
							
								
								Use bitstream_init8() where appropriate  
							
							 
							
							
								
							
							
						 
						9 years ago  
					 
				
					
						
							
							
								   Alexandra Hájková
							
						 
						
							
							
							
								
							
								6efbc88a5c 
								
							
								 
							
						 
						
							
							
								
								smacker: Convert to the new bitstream reader  
							
							 
							
							
								
							
							
						 
						9 years ago  
					 
				
					
						
							
							
								   Diego Biurrun
							
						 
						
							
							
							
								
							
								b668662939 
								
							
								 
							
						 
						
							
							
								
								get_bits: Move BITSTREAM_READER_LE definition before all relevant #includes  
							
							 
							
							 
							
							
								
							
							
							This avoids the danger that get_bits.h might get indirectly #included before
BITSTREAM_READER_LE is defined.
Also sort headers into canonical order where appropriate. 
							
						 
						9 years ago  
					 
				
					
						
							
							
								   Diego Biurrun
							
						 
						
							
							
							
								
							
								6b96d2dcda 
								
							
								 
							
						 
						
							
							
								
								cosmetics: Drop particularly redundant silly comments  
							
							 
							
							
								
							
							
						 
						9 years ago  
					 
				
					
						
							
							
								   Vittorio Giovara
							
						 
						
							
							
							
								
							
								def97856de 
								
							
								 
							
						 
						
							
							
								
								lavc: AV-prefix all codec capabilities  
							
							 
							
							 
							
							
								
							
							
							Express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> 
							
						 
						10 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								84099f51f3 
								
							
								 
							
						 
						
							
							
								
								smacker: use the AVFrame API properly.  
							
							 
							
							
								
							
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Diego Biurrun
							
						 
						
							
							
							
								
							
								b2bed9325d 
								
							
								 
							
						 
						
							
							
								
								cosmetics: Group .name and .long_name together in codec/format declarations  
							
							 
							
							
								
							
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Martin Storsjö
							
						 
						
							
							
							
								
							
								f3d57dc691 
								
							
								 
							
						 
						
							
							
								
								smacker: Free memory properly if the init function fails  
							
							 
							
							 
							
							
								
							
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Martin Storsjö
							
						 
						
							
							
							
								
							
								0679cec6e8 
								
							
								 
							
						 
						
							
							
								
								smacker: Make sure we don't fill in huffman codes out of range  
							
							 
							
							 
							
							
								
							
							
							Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org 
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Martin Storsjö
							
						 
						
							
							
							
								
							
								d002fce24a 
								
							
								 
							
						 
						
							
							
								
								smacker: Check malloc return values  
							
							 
							
							 
							
							
								
							
							
							Also try to free local allocations on errors.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Kostya Shishkov
							
						 
						
							
							
							
								
							
								bbb2945f2d 
								
							
								 
							
						 
						
							
							
								
								smacker: check the return value of smacker_decode_tree  
							
							 
							
							 
							
							
								
							
							
							Also prevent a memory leak.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org 
Signed-off-by: Luca Barbato <lu_zero@gentoo.org> 
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Kostya Shishkov
							
						 
						
							
							
							
								
							
								f52edef301 
								
							
								 
							
						 
						
							
							
								
								smacker: fix an off by one in huff.length computation  
							
							 
							
							 
							
							
								
							
							
							Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org 
Signed-off-by: Luca Barbato <lu_zero@gentoo.org> 
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Kostya Shishkov
							
						 
						
							
							
							
								
							
								268bb88544 
								
							
								 
							
						 
						
							
							
								
								smacker: add a clarification notice about audio decoding  
							
							 
							
							
								
							
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Kostya Shishkov
							
						 
						
							
							
							
								
							
								5f30c6c8ed 
								
							
								 
							
						 
						
							
							
								
								Revert "smackaud: clip output samples"  
							
							 
							
							 
							
							
								
							
							
							Smacker audio uses overflows instead of clipping.
This reverts commit 375ca0aca8 . 
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								3b199d29cd 
								
							
								 
							
						 
						
							
							
								
								lavc decoders: properly initialize AVFrame.  
							
							 
							
							
								
							
							
						 
						12 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								759001c534 
								
							
								 
							
						 
						
							
							
								
								lavc decoders: work with refcounted frames.  
							
							 
							
							
								
							
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								903b62cc0b 
								
							
								 
							
						 
						
							
							
								
								smackaud: decode directly to the user-provided AVFrame  
							
							 
							
							
								
							
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								df9b956751 
								
							
								 
							
						 
						
							
							
								
								lavc: fix decode_frame() third parameter semantics for video decoders  
							
							 
							
							 
							
							
								
							
							
							It's got_frame, not data size 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								594d4d5df3 
								
							
								 
							
						 
						
							
							
								
								lavc: add a wrapper for AVCodecContext.get_buffer().  
							
							 
							
							 
							
							
								
							
							
							It will be useful in the upcoming transition to refcounted AVFrames. 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								a903f8f087 
								
							
								 
							
						 
						
							
							
								
								Include libavutil/channel_layout.h instead of libavutil/audioconvert.h  
							
							 
							
							 
							
							
								
							
							
							Also reorder some other #include when applicable. 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								716d413c13 
								
							
								 
							
						 
						
							
							
								
								Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat  
							
							 
							
							
								
							
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								36ef5369ee 
								
							
								 
							
						 
						
							
							
								
								Replace all CODEC_ID_* with AV_CODEC_ID_*  
							
							 
							
							
								
							
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Mans Rullgard
							
						 
						
							
							
							
								
							
								779f8bc24e 
								
							
								 
							
						 
						
							
							
								
								smacker: remove some unused code  
							
							 
							
							 
							
							
								
							
							
							This removes some code apparently left over from vlc reader
debugging.
Signed-off-by: Mans Rullgard <mans@mansr.com> 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Martin Storsjö
							
						 
						
							
							
							
								
							
								00c3b67b8a 
								
							
								 
							
						 
						
							
							
								
								cosmetics: Align codec declarations  
							
							 
							
							 
							
							
								
							
							
							Also break some long lines, remove codec function placeholder comments
and add spaces in sample/pixel format lists.
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Franz Brauße
							
						 
						
							
							
							
								
							
								12cbbbb4ab 
								
							
								 
							
						 
						
							
							
								
								smacker audio: sign-extend the initial 16-bit predicted value  
							
							 
							
							 
							
							
								
							
							
							Fixes Bug #265 
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com> 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Diego Biurrun
							
						 
						
							
							
							
								
							
								a92be9b856 
								
							
								 
							
						 
						
							
							
								
								Replace memset(0) by zero initializations.  
							
							 
							
							 
							
							
								
							
							
							Also remove one pointless zero initialization in rangecoder.c. 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Ronald S. Bultje
							
						 
						
							
							
							
								
							
								b2af057a36 
								
							
								 
							
						 
						
							
							
								
								smacker: convert palette and header reading to bytestream2.  
							
							 
							
							
								
							
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Martin Storsjö
							
						 
						
							
							
							
								
							
								e96b4a53df 
								
							
								 
							
						 
						
							
							
								
								vlc/rl: Add ff_ prefix to the nonstatic symbols  
							
							 
							
							 
							
							
								
							
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Alex Converse
							
						 
						
							
							
							
								
							
								7181c4edee 
								
							
								 
							
						 
						
							
							
								
								cosmetics: Remove extra newlines at EOF  
							
							 
							
							
								
							
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Alex Converse
							
						 
						
							
							
							
								
							
								9adf25c1cf 
								
							
								 
							
						 
						
							
							
								
								smacker: Sanity check huffman tables found in the headers.  
							
							 
							
							 
							
							
								
							
							
							Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org  
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Alex Converse
							
						 
						
							
							
							
								
							
								90c0c83e14 
								
							
								 
							
						 
						
							
							
								
								smacker: remove dead store  
							
							 
							
							
								
							
							
						 
						13 years ago  
					 
				
					
						
							
							
								   Diego Biurrun
							
						 
						
							
							
							
								
							
								aaf47bcde7 
								
							
								 
							
						 
						
							
							
								
								Drop ALT_ prefix from BITSTREAM_READER_LE name.  
							
							 
							
							 
							
							
								
							
							
							The prefix is a historic remnant that probably meant "alternative".
Now that the A32 bitstream reader has been dropped it makes no sense anymore. 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								0eea212943 
								
							
								 
							
						 
						
							
							
								
								Add avcodec_decode_audio4().  
							
							 
							
							 
							
							
								
							
							
							Deprecate avcodec_decode_audio3().
Implement audio support in avcodec_default_get_buffer().
Implement the new audio decoder API in all audio decoders. 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								818a3bdedf 
								
							
								 
							
						 
						
							
							
								
								smackaud: use uint8_t* for 8-bit output buffer type  
							
							 
							
							 
							
							
								
							
							
							This matches the output sample format and the range of the output values. 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								375ca0aca8 
								
							
								 
							
						 
						
							
							
								
								smackaud: clip output samples  
							
							 
							
							
								
							
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								c86c3c8017 
								
							
								 
							
						 
						
							
							
								
								smackaud: use sign_extend() for difference value instead of casting  
							
							 
							
							
								
							
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								ff1f89de2d 
								
							
								 
							
						 
						
							
							
								
								smacker: validate channels and sample format.  
							
							 
							
							
								
							
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								cf044f8bff 
								
							
								 
							
						 
						
							
							
								
								smacker: check buffer size before reading output size  
							
							 
							
							
								
							
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Justin Ruggles
							
						 
						
							
							
							
								
							
								e190e453bd 
								
							
								 
							
						 
						
							
							
								
								smacker: validate number of channels  
							
							 
							
							
								
							
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Michael Niedermayer
							
						 
						
							
							
							
								
							
								5166376f24 
								
							
								 
							
						 
						
							
							
								
								smacker: fix a few off by 1 errors  
							
							 
							
							 
							
							
								
							
							
							stereo & 16bit is untested due to lack of samples
Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Laurent Aimar
							
						 
						
							
							
							
								
							
								6489455495 
								
							
								 
							
						 
						
							
							
								
								Check for invalid VLC value in smacker decoder.  
							
							 
							
							 
							
							
								
							
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Laurent Aimar
							
						 
						
							
							
							
								
							
								9676ffba83 
								
							
								 
							
						 
						
							
							
								
								Check and propagate errors when VLC trees cannot be built in smacker decoder.  
							
							 
							
							 
							
							
								
							
							
							Signed-off-by: Martin Storsjö <martin@martin.st> 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Anton Khirnov
							
						 
						
							
							
							
								
							
								ec6402b7c5 
								
							
								 
							
						 
						
							
							
								
								lavc: use designated initialisers for all codecs.  
							
							 
							
							 
							
							
								
							
							
							It's more readable and less prone to breakage. 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Stefano Sabatini
							
						 
						
							
							
							
								
							
								975a1447f7 
								
							
								 
							
						 
						
							
							
								
								Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.  
							
							 
							
							 
							
							
								
							
							
							Signed-off-by: Diego Biurrun <diego@biurrun.de> 
							
						 
						14 years ago  
					 
				
					
						
							
							
								   Stefano Sabatini
							
						 
						
							
							
							
								
							
								4f2954e232 
								
							
								 
							
						 
						
							
							
								
								smacker: remove unnecessary call to avctx->release_buffer in decode_frame()  
							
							 
							
							 
							
							
								
							
							
							The release_buffer was cleaning the provided frame, thus causing the
successive call to avctx->reget_buffer() to allocate a new frame.  In
case the returned frame was not the same one previously returned but a
new one with different data, it resulted in artifacts.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com> 
							
						 
						14 years ago