Commit Graph

15297 Commits

Author SHA1 Message Date
Laurent Aimar
19e95b8845 Prevent NULL dereferences when missing the reference frame in the xan decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 00:49:25 +02:00
Laurent Aimar
039f3c33ff Check for out of bounds reads in sun rasterfile decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 00:24:51 +02:00
Laurent Aimar
61930119cb Check for corrupted extra data in wmavoice decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 00:20:04 +02:00
Laurent Aimar
e09ae22ab7 Check for out of bound writes in the wmavoice decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 00:18:38 +02:00
Laurent Aimar
66aae97a60 Prevent NULL dereferences when missing the reference frame in the bink decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 23:45:37 +02:00
Michael Niedermayer
2fbf691038 j2kenc: Fix use of value before its initialized.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 21:32:39 +02:00
Michael Niedermayer
398b5327a3 j2kenc: only list pixel formats that fully work currently.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 21:32:39 +02:00
Michael Niedermayer
2214a67de5 j2kenc: fix colors on yuv444
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 21:32:39 +02:00
Michael Niedermayer
34ac8ec2ea j2kenc: enable 4:2:0 YUV it works as "well" as the other subsampled yuv formats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:19 +02:00
Michael Niedermayer
c4b269c5c6 build system: enable j2kenc
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:19 +02:00
Michael Niedermayer
e6aed5f404 j2kenc: fix coded_frame and prevent null pointer dereference.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:19 +02:00
Michael Niedermayer
40923e1567 j2kenc: Update ff_j2k_init_component() arguments
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:19 +02:00
Michael Niedermayer
2f16b6a525 j2kenc: fix arguments for ff_j2k_getnbctxno()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:19 +02:00
Michael Niedermayer
0db973e0d7 j2kenc: mark as experimental.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:19 +02:00
Michael Niedermayer
1c20a0b354 j2kenc: s/CODEC_TYPE_VIDEO/AVMEDIA_TYPE_VIDEO/
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:18 +02:00
Michael Niedermayer
de89bc994c j2kenc: update codec name to modern ffmpeg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:18 +02:00
Michael Niedermayer
1e086fd730 j2kenc: cleanup() is not used outside thus it is static
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:18 +02:00
Michael Niedermayer
c153c00367 j2kenc: update function name.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 19:30:18 +02:00
Laurent Aimar
254af56dd1 Check for out of bound writes when building tree in bink decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 15:15:54 +02:00
Laurent Aimar
36bf135d4c Check for various out of bound writes in the bink decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 15:15:54 +02:00
Michael Niedermayer
7c1aba4f01 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  fate: allow testing with libavfilter disabled
  x86: XOP/FMA4 CPU detection support
  ws_snd: misc cosmetic clean-ups
  ws_snd: remove the 2-bit ADPCM table and just subtract 2 instead.
  ws_snd: use memcpy() and memset() instead of loops
  ws_snd: use samples pointer for loop termination instead of a separate iterator variable.
  ws_snd: make sure number of channels is 1
  ws_snd: add some checks to prevent buffer overread or overwrite.
  ws_snd: decode to AV_SAMPLE_FMT_U8 instead of S16.
  flacdec: fix buffer size checking in get_metadata_size()
  rtp: Simplify ff_rtp_get_payload_type
  rtpenc: Add a payload type private option
  rtp: Correct ff_rtp_get_payload_type documentation
  avconv: replace all fprintf() by av_log().
  avconv: change av_log verbosity from ERROR to FATAL for fatal errors.
  cmdutils: replace fprintf() by av_log()
  avtools: parse loglevel before all the other options.
  oggdec: add support for Xiph's CELT codec
  sol: return error if av_get_packet() fails.
  cosmetics: reindent and pretty-print
  ...

Conflicts:
	avconv.c
	cmdutils.c
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/oggparsecelt.c
	libavformat/utils.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 02:14:37 +02:00
Laurent Aimar
c2a016ad4d Reset internal state on corrupted blocks in wavpack decoder.
wavpack_decode_block() supposes that it is called back with the exact
same buffer unless it has returned with an error. With multi-channels
files, wavpack_decode_frame() was breaking this assumption.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 01:07:58 +02:00
Laurent Aimar
fc64434030 Validate the number of audio channels before using it in wmapro decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 01:07:58 +02:00
Justin Ruggles
3d371f417e ws_snd: misc cosmetic clean-ups 2011-09-26 16:23:58 -04:00
Justin Ruggles
659c719bc7 ws_snd: remove the 2-bit ADPCM table and just subtract 2 instead. 2011-09-26 16:23:15 -04:00
Justin Ruggles
618b067d21 ws_snd: use memcpy() and memset() instead of loops 2011-09-26 16:23:14 -04:00
Justin Ruggles
6896aa7a38 ws_snd: use samples pointer for loop termination instead of a separate
iterator variable.
2011-09-26 16:23:14 -04:00
Justin Ruggles
6a818cb3ff ws_snd: make sure number of channels is 1 2011-09-26 16:23:10 -04:00
Justin Ruggles
417364ce1f ws_snd: add some checks to prevent buffer overread or overwrite. 2011-09-26 15:49:50 -04:00
Justin Ruggles
2322ced8da ws_snd: decode to AV_SAMPLE_FMT_U8 instead of S16.
8-bit unsigned is the native sample format.
2011-09-26 15:49:50 -04:00
Justin Ruggles
4c5e7b27d5 flacdec: fix buffer size checking in get_metadata_size()
Adds an additional check before reading the next block header and avoids a
potential integer overflow when checking the metadata size against the
remaining buffer size.
2011-09-26 15:29:45 -04:00
Michael Niedermayer
d5a3635b2c libx264: free x4->sei
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-26 18:53:12 +02:00
Mike Scheutzow
e2dae1faa8 Fix a buffer overflow in libx264 interface to x264 encoder. Previous code ignored the compressed buffer size passed in. This change returns as many complete NALs as can fit in the buffer, and logs an error message.
Signed-off-by: Mike Scheutzow <mike.scheutzow@alcatel-lucent.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-26 18:48:38 +02:00
Nicolas George
4ca59d1948 oggdec: add support for Xiph's CELT codec
This patch also introduces CODEC_ID_CELT.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-09-26 13:51:29 +02:00
tipok
cbf914cf16 libaac+ support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-26 02:28:21 +02:00
Aurelien Jacobs
023e9960d7 mjpegenc: use named struct initializers 2011-09-26 00:24:38 +02:00
Michael Niedermayer
f85c9b7771 h264dec: fix decoding problems introduced with baad01d8b4.
This affected cases where extradata was not set.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:51:32 +02:00
Michael Niedermayer
537a9e5cc2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ppc: fix some pointer to integer casts
  ppc: fix 32-bit PIC build
  vmdaudio: fix decoding of 16-bit audio format.
  lavf: do not set codec_tag for rawvideo
  h264: check for out of bounds reads in ff_h264_decode_extradata().
  flvdec: Check for overflow before allocating arrays
  avconv: use correct output stream index when checking max_frames
  avconv: remove fake coded_frame on streamcopy hack

Conflicts:
	avconv.c
	libavcodec/h264.c
	libavcodec/ppc/asm.S
	libavcodec/vmdav.c
	libavformat/flvdec.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:30:25 +02:00
Laurent Aimar
508e47a575 Check for out of bound bands limit in mpc v8 decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:01:44 +02:00
Vitor Sessak
02aabd820f g729dec: avoid unnecessary struct copying
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:01:43 +02:00
Vitor Sessak
22dd24fc7d g729dec: remove useless headers
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:01:43 +02:00
Vitor Sessak
58c61492c6 g729dec: fix warnings:
libavcodec/g729postfilter.c: In function ‘long_term_filter’:
libavcodec/g729postfilter.c:114: warning: unused variable ‘n’

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 21:17:22 +02:00
Vitor Sessak
82d99e0b41 g729dec: Fix warnings:
libavcodec/g729dec.c: In function ‘decode_frame’:
libavcodec/g729dec.c:662: warning: passing argument 3 of ‘ff_g729_postfilter’ from incompatible pointer type
libavcodec/g729postfilter.h:96: note: expected ‘int16_t *’ but argument is of type ‘int *’

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 21:16:55 +02:00
Vitor Sessak
1c4712db81 g729dec: Add ff_ prefix to g729_postfilter() and g729_adaptive_gain_control()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 21:13:19 +02:00
Justin Ruggles
88f908fbdc cosmetics: reindent and pretty-print 2011-09-25 14:38:08 -04:00
Justin Ruggles
8febd6afbc libgsm: split init and close fuctions for encoder and decoder.
The decoder shouldn't be allocating coded_frame. It's also cleaner to split
them than to check avctx->codec->encode and avctx->codec->decode.
2011-09-25 14:38:08 -04:00
Mans Rullgard
6e4a35ced9 ppc: fix 32-bit PIC build
On 32-bit ppc, the GOT pointer must be loaded manually.
This adds a "get_got" assembler macro to compute the
GOT address.  The "movrel" macro is updated to take an
additional parameter containing the GOT address since
no register is reserved for this purpose on ppc32.
These changes have no effect on ppc64 builds.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-25 17:27:48 +01:00
Carl Eugen Hoyos
ef8756dab2 Support LZW and ZLIB compressed 4bpp tiff samples.
Fixes ticket #439 and ticket #440.
2011-09-25 17:21:46 +02:00
Alexander Strasser
baad01d8b4 h264: improve checks before calling ff_h264_decode_extradata
The ff_h264_decode_extradata routine now checks for the buffer size
and pointer internally. This makes it possible to remove the external
checks in ff_h264_decode_init.

  In decode_frame there was a size check missing because the buffer
gets tested prior to the invocation of ff_h264_decode_extradata().

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
2011-09-25 17:16:44 +02:00
Alexander Strasser
715f259bf9 h264: ff_h264_decode_extradata: check buffer args
The buffer size and pointer were not checked prior to testing the first
byte of the buffer. These were sometimes checked before calling, but it is
better to add it inside the function as it takes buf and size arguments.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
2011-09-25 17:16:44 +02:00
Jean First
251345a3fe cosmetics, remove unused and rename variables for consistency 2011-09-25 16:43:23 +02:00
Justin Ruggles
4568c2bf97 vmdaudio: fix decoding of 16-bit audio format.
The initial sample of each block is raw 16-bit PCM, not DPCM.
Fixes decoding of all samples in:
http://streams.videolan.org/samples/game-formats/sierra-vmd/Lighthouse/
2011-09-25 10:39:00 -04:00
Jean First
1a0770f3f7 tiffenc: Enable RGB48LE (16-bit) encoding support 2011-09-25 16:14:33 +02:00
Jean First
72381b2b47 tiffdec: add RGB48 (16bit) support 2011-09-25 16:00:04 +02:00
Laurent Aimar
d1186ff72d h264: check for out of bounds reads in ff_h264_decode_extradata().
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-25 15:04:58 +02:00
Michael Niedermayer
035320a52f dnxhdenc: remove unneeded entries from array.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 14:56:40 +02:00
Michael Niedermayer
b8bad984ef dnxhdenc: optimize whats left of dnxhd_switch_matrix()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 13:06:04 +02:00
Michael Niedermayer
a2eae0ffd4 amvenc: another quant table fix
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 12:29:20 +02:00
Michael Niedermayer
2aaf32f52f mpegvideo: support encoding with chroma intra tables that differ from luma.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 12:29:20 +02:00
Michael Niedermayer
a2f27818b5 amvenc: fix quant tables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 04:33:58 +02:00
Michael Niedermayer
f2f28861da AMV video encoder.
Authors are Vladimir Voroshilov and Dobrica Pavlinušić based on svn blame/log
For full details of authorship see http://code.google.com/p/amv-codec-tools/

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 04:33:16 +02:00
Laurent Aimar
35cb6854bb Fix potential pointer arithmetic overflows in rle_unpack() of vmd video decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 00:42:42 +02:00
Laurent Aimar
4749e07498 Fix out of bound reads in rle_unpack() of vmd video decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 00:42:06 +02:00
Laurent Aimar
e07377e736 Check for out of bound reads in vmd_decode() of vmd video decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 00:34:39 +02:00
Laurent Aimar
78cb39d2b2 Fix potential pointer arithmetic overflows in lz_unpack of vmd video decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 00:27:29 +02:00
Laurent Aimar
5127f465bd Prevent out of bound read in lz_unpack in vmd video decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 00:25:42 +02:00
Laurent Aimar
6a6383bebc Prevent NULL dereferences when the previous frame is missing in vmd video decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 23:42:49 +02:00
Laurent Aimar
e7aed1280e Check for invalid update parameters in vmd video decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 23:42:49 +02:00
Laurent Aimar
00cbe9e405 Fix potential overread in vmd audio decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 23:42:49 +02:00
Michael Niedermayer
eae3cf06a5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  flvdec: Fix invalid pointer deferences when parsing index
  configure: disable hardware capabilities ELF section with suncc on Solaris x86
  Use explicit struct initializers for AVCodec declarations.
  Use explicit struct initializers for AVOutputFormat/AVInputFormat declarations.
  adpcmenc: Set bits_per_coded_sample
  adpcmenc: fix QT IMA ADPCM encoder
  adpcmdec: Fix QT IMA ADPCM decoder
  permit decoding of multichannel ADPCM_EA_XAS
  Fix input buffer size check in adpcm_ea decoder.
  fft: avoid a signed overflow
  mpegps: Handle buffer exhaustion when reading packets.

Conflicts:
	libavcodec/adpcm.c
	libavcodec/adpcmenc.c
	libavdevice/alsa-audio-enc.c
	libavformat/flvdec.c
	libavformat/mpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 22:39:52 +02:00
Sascha Sommer
780d45473c Fix segfault in save_bits:
use put_bits_count to get the buffer fill state instead of
num_saved_bits as num_saved_bits is sometimes reset when
frames are lost
(Ticket 495)
2011-09-24 21:29:08 +02:00
Michael Niedermayer
43e05685f2 g729dec: disable all cpu acceleration, the code does not provide any alignment.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 21:11:01 +02:00
Michael Niedermayer
91c5f81b74 g729dec: set sample format.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 21:11:01 +02:00
Vladimir Voroshilov
5d5b3e527a Disable MMX 2011-09-24 21:11:01 +02:00
Vladimir Voroshilov
8db3b85616 Fix comments about implemented codecs 2011-09-24 21:11:01 +02:00
Vladimir Voroshilov
682337672c Adaptive gain control 2011-09-24 21:11:01 +02:00
Vladimir Voroshilov
aca516cd67 G.729 postfilter 2011-09-24 21:11:01 +02:00
Vladimir Voroshilov
16bbb8dfea Replace pitch_delay_int with array 2011-09-24 21:11:01 +02:00
Vladimir Voroshilov
bfbfe56f94 G.729 build environment 2011-09-24 21:11:00 +02:00
Michael Niedermayer
ce7c954800 g729dec: Make 2 functions static that are not used outside g729dec.c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
c458bff934 High-pass filter 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
e610c5f383 Add G.729D decoder 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
b7c7fc3359 Synthesis filter 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
4920a1a913 Indentation fix after gain codes decoding2 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
0b42463aec Gain pitch and gain code for G729D 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
12081d0599 Indentation fix 2 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
f7980a7bed Convert gain pitch and gain code to arrays 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
f830d1b7da Interolate excitation signal 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
0a3337883f Fixed- and adaptive-codebook gains 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
7fadc0151c Frame erasure support for fixed-codebook vectors 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
9297c7822f Fixed-codebook vector decoding 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
70efd101f1 Add packet_type 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
50cad25625 Frame erasure support for pitch delay decoding 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
d1a643e749 Doxy for LSF erasure case 2011-09-24 21:11:00 +02:00
Vladimir Voroshilov
b29e5a6780 doxy comments for LSF array 2011-09-24 21:10:59 +02:00
Vladimir Voroshilov
cd3e2820d3 Indentation fix in LSF 2011-09-24 21:10:59 +02:00
Vladimir Voroshilov
388f225561 Frame erasure support for LSF decoding 2011-09-24 21:10:59 +02:00
Michael Niedermayer
a5e0c4ddb5 Revert "g729: Merge g729.h into g729dec.c."
This reverts commit a2077b85da.
2011-09-24 21:10:27 +02:00
Michael Niedermayer
0b61af7382 Restore WIP g729 code that has been remvoed by diego biurrun.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 19:39:18 +02:00
Laurent Aimar
1aad9cd9d2 vp56:Fix error recovery code on size changes in vp5/6 decoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 19:13:37 +02:00