Commit Graph

22942 Commits

Author SHA1 Message Date
slhck
bfcc38ef48 libvpx: check if CQ level is in correct bounds
Check whether CQ level is within qmin..qmax and abort on error. If this isn't properly
set, encoding will fail at the first frame.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 20:13:10 +01:00
slhck
188947c32a libvpx: allow 0 as min quantizer value
Allow setting the min quantizer to 0 instead of 1 (libvpx allows 0); fixes #2136

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 20:10:14 +01:00
Michael Niedermayer
875f883185 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vorbisdec: Accept 0 amplitude_bits

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 12:58:31 +01:00
Michael Niedermayer
f7dc6aa5fe Merge commit '5b47c19bfda92273ae49e83db26a565afcaed80a'
* commit '5b47c19bfda92273ae49e83db26a565afcaed80a':
  vorbisdec: Add missing checks

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 12:52:45 +01:00
Michael Niedermayer
a0312a2e85 Merge commit 'fc386f2eea8d93ecd4f81e1646c835d1645c56a0'
* commit 'fc386f2eea8d93ecd4f81e1646c835d1645c56a0':
  vorbisdec: cosmetics

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 12:30:41 +01:00
Michael Niedermayer
cb72f698fe Merge commit '11dcecfcca0eca1a571792c4fa3c21fb2cfddddc'
* commit '11dcecfcca0eca1a571792c4fa3c21fb2cfddddc':
  vorbisdec: Error on bark_map_size equal to 0.
  dsputil_alpha.h: Add missing stddef.h header to fix standalone compilation

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 12:22:18 +01:00
Luca Barbato
23bd9ef4b2 vorbisdec: Accept 0 amplitude_bits
The specification does not prevent an encoder to write the amplitude 0
as 0 amplitude_bits.

Our get_bits() implementation might not support a zero sized read
properly, thus the additional branch.
2013-02-25 07:34:00 +01:00
Luca Barbato
5b47c19bfd vorbisdec: Add missing checks
Rate and order must not be 0 even if the specification does not say that
explicitly.
2013-02-25 07:34:00 +01:00
Luca Barbato
fc386f2eea vorbisdec: cosmetics
Use the commonly used "if (!var)" instead of "if (var == 0)".
2013-02-25 07:34:00 +01:00
Michael Niedermayer
11dcecfcca vorbisdec: Error on bark_map_size equal to 0.
The value is used to calculate output LSP curve and a division by zero
and out of array accesses would occur.

CVE-2013-0894

CC: libav-stable@libav.org

Reported-by: Dale Curtis <dalecurtis@chromium.org>
Found-by: inferno@chromium.org
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-02-25 07:33:59 +01:00
Stefano Sabatini
5085b46496 lavc: change type of AVFrame.channels field from int64_t to int
"channels" is an int in all the other places in the libraries, and the
av_frame_*_channels() accessors return and set an int, so this should not
implicate ABI breaks.
2013-02-24 23:14:46 +01:00
Reimar Döffinger
c65eb7907c mpeg12: Fix non-hwaccel VDPAU decode.
Previously avctx->hwaccel would have been set to a dummy value,
now an explicit check is necessary instead.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-02-24 19:49:06 +01:00
Diego Biurrun
3d035d5a6a dsputil_alpha.h: Add missing stddef.h header to fix standalone compilation 2013-02-24 18:51:40 +01:00
Michael Niedermayer
f7c4b76c48 Merge commit 'd7c450436fcb9d3ecf59884a574e7684183e753d'
* commit 'd7c450436fcb9d3ecf59884a574e7684183e753d':
  ac3dec: validate channel output mode against channel count

Conflicts:
	libavcodec/ac3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 16:53:09 +01:00
Paul B Mahol
7b12554c5a exr: make sure that data_size is not bigger than expected
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Paul B Mahol
74a78bfe6c exr: simplify filling channel_buffer[]
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Paul B Mahol
645f96f129 exr: check color channel subsampling too
If there is unsupported subsampling encountered abort
early instead of failing decoding later.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Paul B Mahol
1a08758e7c exr: slice threading
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Michael Niedermayer
2fc662ae63 Merge commit '040c565e51985477a8fa5e42d2ddfb26ebde6608'
* commit '040c565e51985477a8fa5e42d2ddfb26ebde6608':
  doc: developer: Allow tabs in the vim configuration for Automake files
  Remove pointless av_cold attributes in header files

Conflicts:
	libavcodec/h264.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 14:32:55 +01:00
Michael Niedermayer
5ecf8189c6 pnm: use av_pix_fmt_desc_get()
Using the table directly may cause problems on some platforms like msvc

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 14:27:39 +01:00
Michael Niedermayer
198ea7a96f Merge commit 'b5f536d24b5ae360503935c34d5d59fa5181b94d'
* commit 'b5f536d24b5ae360503935c34d5d59fa5181b94d':
  pnm: add high-bitdepth PGMYUV support for both encoder and decoder

Conflicts:
	libavcodec/pnm.c
	libavcodec/pnmdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 14:14:28 +01:00
Michael Niedermayer
a77a27a24b Merge commit '2f325a6fd4421c4dd4e26d7065e5d4bf26ed52f2'
* commit '2f325a6fd4421c4dd4e26d7065e5d4bf26ed52f2':
  libx264: change i_qfactor to use x264cli's default
  qtrle: use AV_LOG_ERROR in an error message.

Conflicts:
	libavcodec/libx264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 14:05:16 +01:00
Michael Niedermayer
6f5f0671f3 Merge commit '7b4f91155bd4ef5a8d4e9af65c48b42bfa5b52c6'
* commit '7b4f91155bd4ef5a8d4e9af65c48b42bfa5b52c6':
  qtrle: cosmetics, reformat CHECK_PIXEL_PTR() macro

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 13:55:44 +01:00
Michael Niedermayer
9ba38e6273 Merge commit 'e10659244782b26061e7d52c06437de32a43a7af'
* commit 'e10659244782b26061e7d52c06437de32a43a7af':
  qtrle: add more checks against pixel_ptr being negative.

Conflicts:
	libavcodec/qtrle.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 13:49:37 +01:00
Michael Niedermayer
9748cac565 Merge commit '4f3b058c84f570e261d743c7c22f865617fd28ac'
* commit '4f3b058c84f570e261d743c7c22f865617fd28ac':
  cavs: initialize various context tables to 0
  mlpdec: do not try to allocate a zero-sized output buffer.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 13:24:43 +01:00
Michael Niedermayer
663ebae79a Merge commit '56daf10e0313c5e36f43e773f457d2a99ff0df10'
* commit '56daf10e0313c5e36f43e773f457d2a99ff0df10':
  mov: use the format context for logging.
  flicvideo: avoid an infinite loop in byte run compression

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 13:15:59 +01:00
Michael Niedermayer
33796645dc loco: check the last plane too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 13:08:52 +01:00
Michael Niedermayer
714ff44858 Merge commit '067432c1c95882c7221e694f33d9f3bdbe46de7f'
* commit '067432c1c95882c7221e694f33d9f3bdbe46de7f':
  loco: check that there is data left after decoding a plane.
  lagarith: avoid infinite loop in lag_rac_refill()

Conflicts:
	libavcodec/loco.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 13:08:42 +01:00
Michael Niedermayer
4ba35194a9 Merge commit 'f935aca44c674d30e3ed940ef73bbad1228a5855'
* commit 'f935aca44c674d30e3ed940ef73bbad1228a5855':
  av_memcpy_backptr: avoid an infinite loop for back = 0
  4xm: check the return value of read_huffman_tables().

Conflicts:
	libavcodec/4xm.c
	libavutil/mem.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 12:22:51 +01:00
Nicolas George
ccc7bcc4fc lavc: check return values consistency when decoding subtitles. 2013-02-24 12:18:57 +01:00
Justin Ruggles
d7c450436f ac3dec: validate channel output mode against channel count
Damaged frames can lead to a mismatch, which can cause a segfault
due to using an incorrect channel mapping.

CC:libav-stable@libav.org
2013-02-23 16:59:39 -05:00
Diego Biurrun
94ee7da08d Remove pointless av_cold attributes in header files
The init functions marked as av_cold have to be executed in any case,
so there is no gain from trying to mark paths leading to such functions
as unlikely.
2013-02-23 20:13:47 +01:00
Kostya Shishkov
b5f536d24b pnm: add high-bitdepth PGMYUV support for both encoder and decoder 2013-02-23 16:49:22 +01:00
Michael Niedermayer
c10c2aed47 h264: Silence warning: comparison of distinct pointer types lacks a cast
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-23 14:09:04 +01:00
Michael Niedermayer
5270cb39ba bmp: Fix warning X may be used uninitialized in this function
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-23 14:03:18 +01:00
John Van Sickle
2f325a6fd4 libx264: change i_qfactor to use x264cli's default
This also allows libx264 to modify its i_qfactor value
when using the "-tune" setting. Previously it had a static
value of 1.25

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-02-23 13:34:52 +01:00
Anton Khirnov
d8a74d1d95 qtrle: use AV_LOG_ERROR in an error message. 2013-02-23 13:06:12 +01:00
Anton Khirnov
7b4f91155b qtrle: cosmetics, reformat CHECK_PIXEL_PTR() macro 2013-02-23 13:06:08 +01:00
Anton Khirnov
e106592447 qtrle: add more checks against pixel_ptr being negative.
CC:libav-stable@libav.org
2013-02-23 13:05:54 +01:00
Anton Khirnov
4f3b058c84 cavs: initialize various context tables to 0
Avoids crashes with corrupted files.

CC:libav-stable@libav.org
2013-02-23 13:05:43 +01:00
Anton Khirnov
0dff40bfb9 mlpdec: do not try to allocate a zero-sized output buffer.
CC:libav-stable@libav.org
2013-02-23 13:05:31 +01:00
Michael Niedermayer
23c9180c00 aacdec: Fix warning: initialization from incompatible pointer type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-23 12:16:28 +01:00
Anton Khirnov
ddfe1246d9 flicvideo: avoid an infinite loop in byte run compression
When byte_run is 0, pixel_countdown is not touched and the loop will run
forever.

CC:libav-stable@libav.org
2013-02-23 09:22:30 +01:00
Anton Khirnov
067432c1c9 loco: check that there is data left after decoding a plane.
CC:libav-stable@libav.org
2013-02-23 09:20:42 +01:00
Anton Khirnov
de6dfa2bb8 lagarith: avoid infinite loop in lag_rac_refill()
range == 0 happens with corrupted files

CC:libav-stable@libav.org
2013-02-23 09:16:32 +01:00
Anton Khirnov
8097fc9a2d 4xm: check the return value of read_huffman_tables().
CC:libav-stable@libav.org
2013-02-23 09:13:08 +01:00
Malcolm Bechard
239b88c284 Improve QTRLE encoding performance, no change to output file size/content.
Avoid searching for the lowest bulk cost for each pixel that isn't a repeat/skip. Instead store the lowest cost as we go along each pixel, and use it as needed.

Signed-off-by: Malcolm Bechard <malcolm.bechard@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-22 21:41:54 +01:00
Paul B Mahol
89c77b6b15 exr: shorter channel buffer names
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 19:31:00 +00:00
Paul B Mahol
7a930f310a exr: remove superfluous check
get_header_variable_length() already check for
out of array read and returns 0 in such case.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:55 +00:00
Paul B Mahol
fefd4b0924 exr: cosmetics: reindent
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:55 +00:00