1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-12 19:18:44 +02:00
Commit Graph

23296 Commits

Author SHA1 Message Date
Michael Niedermayer
eab49f4fb5 Revert "aacdec: Reconfigure output as needed, disable pop_output_configuration()"
This reverts commit 60dbf2eff9.

This is not needed anymore, Ticket 1694 has been fixed differently
2013-03-08 14:21:40 +01:00
Michael Niedermayer
8978c743fb aacsbr: Check for envelope scalefactors overflowing
This prevents various values from becoming stuck at NAN and
output to become silent
If someone knows a cleaner solution, thats welcome!

Fixes Ticket2335

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 14:21:40 +01:00
Anton Khirnov
7c45087b84 lavc: update the fallback versions of ff_thread_*
Fixes build without threads after
759001c534.
2013-03-08 10:22:10 +01:00
Yusuke Nakamura
19dd4017ab libopencore-amr: Add the missing 3rd argument of ff_get_buffer()
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-08 11:09:31 +02:00
Anton Khirnov
f86d66bcfa vmdaudio: fix invalid reads when packet size is not a multiple of chunk size
CC:libav-stable@libav.org
2013-03-08 08:12:41 +01:00
Anton Khirnov
4c0080b7e7 wmaprodec: return an error, not 0, when the input is too small.
Returning 0 may result in an infinite loop in valid calling programs. A
decoder should never return 0 without producing any output.

CC:libav-stable@libav.org
2013-03-08 08:12:26 +01:00
Anton Khirnov
cacad1c058 wmaprodec: require block_align to be set.
Avoids an infinite loop in the calling programs with decoder not
consuming any input and not returning output.

CC:libav-stable@libav.org
2013-03-08 08:12:16 +01:00
Anton Khirnov
ea1136baaf wmadec: require block_align to be set.
Avoids an infinite loop in the calling programs with decoder not
consuming any input and not returning output.

CC:libav-stable@libav.org
2013-03-08 08:12:03 +01:00
Anton Khirnov
3ba40ebb6c ivi_common: do not call MC for intra frames when dc_transform is unset
CC:libav-stable@libav.org
2013-03-08 08:11:46 +01:00
Anton Khirnov
3e2f200237 roqvideodec: fix a potential infinite loop in roqvideo_decode_frame().
When there is just 1 byte remanining in the buffer, nothing will be read
and the loop will continue forever. Check that there are at least 8
bytes, which are always read at the beginning.

CC:libav-stable@libav.org
2013-03-08 08:11:35 +01:00
Anton Khirnov
8a49d2bcbe xxan: fix invalid memory access in xan_decode_frame_type0()
The loop a few lines below the xan_unpack() call accesses up to
dec_size * 2 bytes into y_buffer, so dec_size must be limited to
buffer_size / 2.

CC:libav-stable@libav.org
2013-03-08 08:11:22 +01:00
Anton Khirnov
d243896987 ffv1: fix calculating slice dimensions for version 2
It got broken in 0f13cd3187.

CC:libav-stable@libav.org
2013-03-08 08:10:02 +01:00
Anton Khirnov
7b89cd20d8 eamad: allocate a dummy reference frame when the real one is missing
CC:libav-stable@libav.org
2013-03-08 08:09:51 +01:00
Anton Khirnov
542b83fc90 Replace some forgotten instances of PIX_FMT_* with AV_PIX_FMT_*. 2013-03-08 07:42:09 +01:00
Anton Khirnov
d8b31be6ca Add the bumps and APIchanges entries for reference counted buffers changes. 2013-03-08 07:41:49 +01:00
Anton Khirnov
8df23e938b lavc: postpone the removal of request_channels API.
Its replacement is still not ready.
2013-03-08 07:41:42 +01:00
Anton Khirnov
ddcca4ba07 lavc: stop setting AVFrame.motion_subsample_log2
It is not used inside lavc anywhere and now it makes no sense to export
it.
2013-03-08 07:41:14 +01:00
Anton Khirnov
37045e4229 mpegvideo: drop vismv code
It has been broken for over a year without anyone complaining or
noticing, thus proving that nobody ever uses it.
2013-03-08 07:40:41 +01:00
Anton Khirnov
2eba9087f3 lavc: make up a fake frame channel layout when there is no real one.
This should ensure that a valid channel layout is always set on a frame,
until a better solution is implemented.
2013-03-08 07:40:06 +01:00
Anton Khirnov
192f1984b1 lavc: limit maximum number of channels to 63
This is the most that can be represented with the current channel layout
system. This limit should be raised/removed when a better system is
implemented.
2013-03-08 07:39:53 +01:00
Anton Khirnov
15ec0450b4 lavc: allow decoders to override frame parameters. 2013-03-08 07:39:44 +01:00
Anton Khirnov
3b199d29cd lavc decoders: properly initialize AVFrame. 2013-03-08 07:39:37 +01:00
Anton Khirnov
759001c534 lavc decoders: work with refcounted frames. 2013-03-08 07:38:30 +01:00
Anton Khirnov
6e7b50b427 mpegvideo_enc: drop support for reusing the input motion vectors.
This misfeature is most likely completely useless and conflicts with
removing the mpegvideo-specific fields from AVFrame. In the improbable
case it is actually useful, it should be reimplemented in a better way.
2013-03-08 07:37:45 +01:00
Anton Khirnov
7ecc2d403c Move AVFrame from lavc to lavu.
Add AVBuffer-based reference counting API to it.
2013-03-08 07:36:15 +01:00
Anton Khirnov
ad0c9f2d5d lavc: move AVFrame.hwaccel_picture_private to Picture.
This field is private and should not be present in a public struct. It
is only used in DXVA with mpegvideo-based decoders currently.
2013-03-08 07:36:01 +01:00
Anton Khirnov
1a5e913016 pthread: avoid copying input packets when possible. 2013-03-08 07:35:14 +01:00
Anton Khirnov
1afddbe59e avpacket: use AVBuffer to allow refcounting the packets.
This will allow us to avoid copying the packets in many cases.

This breaks ABI.
2013-03-08 07:33:45 +01:00
Alexander Kojevnikov
eae0879d96 mp3dec: Fix VBR bit rate parsing
When parsing the Xing/Info tag, don't set the bit rate if it's an Info tag.

When parsing the stream, don't override the bit rate if it's already set,
otherwise calculate the mean bit rate from parsed frames. This way, the bit
rate will be set correctly both for CBR and VBR streams.

CC:libav-stable@libav.org

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-08 07:32:11 +01:00
Alexander Kojevnikov
d30ee5ef59 mpegaudio_parser: Don't ignore information from the first frame
Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 23:07:04 +01:00
Michael Niedermayer
60dbf2eff9 aacdec: Reconfigure output as needed, disable pop_output_configuration()
Fixes Ticket1694

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 19:50:31 +01:00
Michael Niedermayer
fee5da6b0a psymodel: dont apply lowpass filters with a cutoff close to the nyquist
The IIR filter numerically diverges in such cases, this could easily be
fixed but would make the filter slower on some platforms

Fixes Ticket2246

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 19:28:30 +01:00
Diego Biurrun
dbd2a34ba5 build: cosmetics: Group hw accelerator Makefile entries together 2013-03-07 15:36:21 +01:00
Martin Storsjö
d88738e403 mpegvideo: Conditionally build error_resilience bits
This breaks the dependency of mpegvideo on error_resilience allowing
compilation of components that depend on the former w/o the latter.
2013-03-07 15:04:49 +01:00
Diego Biurrun
5f401b7b71 Add missing error_resilience includes to files that use ER 2013-03-07 15:04:49 +01:00
Reimar Döffinger
efa7f42020 Use the avstring.h locale-independent character type functions
Make sure the behavior does not change with the locale.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 15:16:36 +02:00
Michael Niedermayer
8cc5481d51 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: Deprecate the deinterlace functions in libavcodec
  h264: Integrate draw_horiz_band into ff_h264_draw_horiz_band

Conflicts:
	configure
	ffmpeg_opt.c
	libavcodec/avcodec.h
	libavcodec/h264.c
	libavcodec/imgconvert.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 11:50:17 +01:00
Michael Niedermayer
47f1af47b6 Merge commit '70762508ec5919474edb92a5b1f266fd06640f9c'
* commit '70762508ec5919474edb92a5b1f266fd06640f9c':
  lavc: Prettify printing of codec tags containing non alphanumeric characters
  h264: Rename the jpeg_420 pixfmt list to match the common naming structure

Conflicts:
	libavcodec/h264.c
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 11:29:11 +01:00
Ronald S. Bultje
54b298fe56 lavc: Deprecate the deinterlace functions in libavcodec
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 09:35:24 +02:00
Ronald S. Bultje
64e4386974 h264: Integrate draw_horiz_band into ff_h264_draw_horiz_band
This makes the decoder independent of mpegvideo.

This copy of the draw_horiz_band code is simplified compared to
the "generic" mpegvideo one which still has a number of special
cases for different codecs.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 09:31:44 +02:00
Stefano Sabatini
70762508ec lavc: Prettify printing of codec tags containing non alphanumeric characters
Make av_get_codec_tag_string() show codec tag string characters in a more
intelligible ways. For example the ascii char "@" is used as a number, so
should be displayed like "[64]" rather than as a printable character.

Apart alphanumeric chars, only the characters ' ' and '.' are used
literally in codec tags, all the other characters represent numbers.

This also avoids relying on locale-dependent character class functions.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 08:50:29 +02:00
Martin Storsjö
d65522e826 h264: Rename the jpeg_420 pixfmt list to match the common naming structure
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 08:40:04 +02:00
Bojan Zivkovic
1f5b5b8062 libavcodec: changed mathematical functions in aacpsy.c
This patch changes existing mathematical functions with faster
ones. Speeds up encoding more than 10%. Tested on x86 and
MIPS platforms.

Signed-off-by: Bojan Zivkovic <bojan@mips.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 03:23:33 +01:00
Michael Niedermayer
fa3a7b55ec Merge commit '5da51284937649a8ebb84fa951c235438fcbf8ae'
* commit '5da51284937649a8ebb84fa951c235438fcbf8ae':
  cavs: Add a dependency on h264chroma
  lavc: Split out ff_hwaccel_pixfmt_list_420[] over individual codecs

Conflicts:
	libavcodec/h263dec.c
	libavcodec/h264.c
	libavcodec/mpeg12.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 00:18:22 +01:00
Michael Niedermayer
ff9b607489 Merge commit '5a4e9fe855282a99586050a507d0a486ad39df5b'
* commit '5a4e9fe855282a99586050a507d0a486ad39df5b':
  avcodec/internal: Fix #if DECODE_AUDIO / ENCODE_AUDIO name mismatch
  shorten: use the unsigned type where needed

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-07 00:01:32 +01:00
Michael Niedermayer
90f8b2ce48 Merge commit '4c364eb2b856fc33cf7b42f7c7b979e69fde5f3a'
* commit '4c364eb2b856fc33cf7b42f7c7b979e69fde5f3a':
  shorten: report meaningful errors

Conflicts:
	libavcodec/shorten.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 23:47:10 +01:00
Michael Niedermayer
09131ebb56 Merge commit 'a2ad554def214d2d03b7c16f68dc081a8622f9ca'
* commit 'a2ad554def214d2d03b7c16f68dc081a8622f9ca':
  shorten: K&R formatting cosmetics

Conflicts:
	libavcodec/shorten.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 23:39:52 +01:00
Michael Niedermayer
be493ca2a8 Merge commit 'c10da30d8426a1f681d99a780b6e311f7fb4e5c5'
* commit 'c10da30d8426a1f681d99a780b6e311f7fb4e5c5':
  shorten: set invalid channels count to 0
  vorbisdec: check memory allocations
  h264: check for luma and chroma bit dept being equal

Conflicts:
	libavcodec/shorten.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 23:27:09 +01:00
James Zern
bcaf64b605 normalize calls to ff_alloc_packet2
- check ret < 0
- remove excessive error log

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 22:11:46 +01:00
Ronald S. Bultje
8d061989dd lavc: Split out ff_hwaccel_pixfmt_list_420[] over individual codecs
Not all hwaccels implement all codecs, so using one single list for
multiple such codecs means some codecs will be represented in the list,
even though they don't actually handle that codec. Copying specific
lists in each codec fixes that.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-06 21:18:50 +02:00
Ronald S. Bultje
c257fe1fde Move ff_cropTbl and ff_zigzag_direct from dsputil to mathtables.
These are widely used throughout libavcodec, nothing dsputil-specific.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 19:28:11 +01:00
Michael Niedermayer
a3e0fc9803 snowenc: fix indention
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 19:28:11 +01:00
Michael Niedermayer
70a2a4934a snowenc: add forgotten emms_c()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 19:28:11 +01:00
Diego Biurrun
5a4e9fe855 avcodec/internal: Fix #if DECODE_AUDIO / ENCODE_AUDIO name mismatch 2013-03-06 16:48:03 +01:00
Michael Niedermayer
188c082477 snowenc: initialize edges
This fixes a regression caused by changes to the buffer initialization code.
Fixes valgrind warnings

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 16:35:47 +01:00
Michael Niedermayer
2dd2ee96eb vc1dec: use av_log_ask_for_sample for odd sprites
Suggested-by: Reimar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 13:51:18 +01:00
Paul B Mahol
037adf589a libilbc: use ff_alloc_packet2
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-06 10:52:28 +00:00
James Zern
1811f1d840 libopusenc: use ff_alloc_packet2
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-06 10:31:56 +00:00
Michael Niedermayer
baf10ad186 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  hwaccel: consistent name prefixes for start_frame/end_frame/decode_slice

Conflicts:
	libavcodec/vda_h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 10:34:14 +01:00
Michael Niedermayer
28adecf0fa Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
  Move the iconv test to the bottom of configure.
  Make 32bit zmbv colour-space opaque.
  Use uint8_t instead of uint16_t pointer in kega decoder.
  kgv1dec: Simplify kega decoding by using memcpy instead of loops

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 05:37:14 +01:00
Michael Niedermayer
a3541896c6 qdm2: check "AC" codewords
Fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 05:04:39 +01:00
Michael Niedermayer
5c8ffbaa7f qdm2: simplify arithmetic coder tables generation
Someone should rename the variables, theres nothing random in there

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 04:56:33 +01:00
Michael Niedermayer
bb01be8046 rv20: Fix handling of frame skip.
Fixes division by zero

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 04:06:45 +01:00
Michael Niedermayer
7bab631f7d mss2dsp/upsample_plane: fix 0x0 handling
Fixes invalid memcpy and out of array accesses

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 01:38:26 +01:00
Luca Barbato
4c364eb2b8 shorten: report meaningful errors 2013-03-06 01:04:02 +01:00
Luca Barbato
a2ad554def shorten: K&R formatting cosmetics 2013-03-06 01:04:02 +01:00
Luca Barbato
5cf7c72757 shorten: use the unsigned type where needed
get_uint returns an unsigned value, use an unsigned to store
blocksize to make sure the comparison logic is correct and report
correctly the error for the channel count not supported.
2013-03-06 01:04:02 +01:00
Michael Niedermayer
c10da30d84 shorten: set invalid channels count to 0
Prevent the loop shorten_decode_close from writing and freeing out of
the array boundary.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-03-06 01:04:01 +01:00
Luca Barbato
02055b6d40 vorbisdec: check memory allocations 2013-03-06 01:04:01 +01:00
Carl Eugen Hoyos
b45e85ab7e Make 32bit zmbv colour-space opaque. 2013-03-06 00:38:12 +01:00
Carl Eugen Hoyos
96d2e4d61a Use uint8_t instead of uint16_t pointer in kega decoder.
This change allows to remove a few casts and avoids
a potential pointer aliasing violation.
2013-03-06 00:35:08 +01:00
Reimar Döffinger
940b06aeb8 kgv1dec: Simplify kega decoding by using memcpy instead of loops
Fixes decoding errors with icc 13.1

Signed-off-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
2013-03-06 00:25:18 +01:00
Michael Niedermayer
058e1f8dd7 vc1dec: odd sized sprites are unsupported
It should be easy to add support but without a sample we would
not know if they work.

Fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-06 00:09:54 +01:00
Luca Barbato
4987faee78 h264: check for luma and chroma bit dept being equal
The decoder assumes a single bit depth for all the planes
while the specification allows different bit depths for luma
and chroma.

Avoid the possible problems described in CVE-2013-2277

CC: libav-stable@libav.org
2013-03-05 22:18:02 +01:00
Alexander Kojevnikov
29d8cd265a mp3dec: Fix VBR bit rate parsing
When parsing the Xing/Info tag, don't set the bit rate if it's an Info tag.

When parsing the stream, don't override the bit rate if it's already set,
otherwise calculate the mean bit rate from parsed frames. This way, the bit
rate will be set correctly both for CBR and VBR streams.

Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-05 13:06:01 +01:00
Paul B Mahol
d7f9f34dc6 zmbv: stop doing colorspace conversion
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-05 10:27:09 +00:00
Diego Biurrun
c57a593670 hwaccel: consistent name prefixes for start_frame/end_frame/decode_slice
Some hwaccels use name prefixes, some do not, others only use them for
some codecs.  Add prefixes everywhere for consistency.
2013-03-05 11:22:45 +01:00
Michael Niedermayer
e398990eb8 msrledec: fix output_end checks
Fixes out of array accesses

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-05 03:29:04 +01:00
Michael Niedermayer
dae38a66eb dnxhddec: return the correct number of bytes from decode_frame
Fixes Ticket2022

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-04 18:17:47 +01:00
Michael Niedermayer
144da7eeca Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
  buildsys: only include log2_tab per library for shared builds
  Add h264chroma dependency for cavs decoder to configure.
  Add h264qpel dependency for snow codec to configure.
  Add h264chroma dependency for vp5 and vp6 decoder to configure.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-04 14:45:52 +01:00
Michael Niedermayer
03148fd174 buildsys: only include log2_tab per library for shared builds
Fix linking failures with -all_load due to multiple log2_tabs

Signed-off-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
2013-03-04 12:25:02 +01:00
Reimar Döffinger
88d55b827d Remove incorrect use of ctype.h functions.
As far as I can tell the code should not change behaviour
depending on locale in any of these places.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-03-03 21:44:10 +01:00
Ronald S. Bultje
2cffe38df3 Deprecate deinterlaced in libavcodec.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-03 21:11:48 +01:00
Michael Niedermayer
d210e9741e rv34: fix aspect ratio
Fixes part of Ticket1550

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-03 18:40:57 +01:00
Michael Niedermayer
6c6dc8ccea wmadec: check nb_frames
Improves error message for Ticket968

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-03 16:50:47 +01:00
Ronald S. Bultje
d98aa7cdc1 h264: put call to ff_print_debug_info2 under CONFIG_MPEGVIDEO.
The code is located in mpegvideo, and it's likely that in a minimal
config, we don't want to include debug info anyway.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-03 12:19:29 +01:00
Ronald S. Bultje
d4e649cca6 h264: make it possible to compile without error_resilience.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-03 12:19:15 +01:00
Ronald S. Bultje
454c5d10b2 h264: add a copy of draw_horiz_band.
This makes the decoder independent of mpegvideo.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-03 00:45:45 +01:00
Michael Niedermayer
4f0d4acc70 libxvid: cleanup on error pathes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 20:39:38 +01:00
Michael Niedermayer
667bf15652 libxvid: check & clear encoder_handle
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 20:32:21 +01:00
Michael Niedermayer
8fe59240a1 libxvid: use av_freep() for saftey
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 20:31:07 +01:00
Michael Niedermayer
6a8f6c773d libxvid: remove temporary files at the end
Fixes Ticket924

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 20:30:28 +01:00
Michael Niedermayer
03bc7a004e mjpegdec: fix endiansoup
Fixes Ticket2175

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 19:12:06 +01:00
James Almer
1d5b35cc07 lavc/flacdec: Add frame CRC calculation
Fixes ticket #2266

Signed-off-by: James Almer <jamrial@gmail.com>
2013-03-02 17:22:18 +00:00
Michael Niedermayer
5167bb2e8e er: Fix slice threading check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 14:28:20 +01:00
Michael Niedermayer
547042a8cd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h264: set ref_count to 0 for intra slices.

Conflicts:
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 12:10:52 +01:00
Michael Niedermayer
2d2e6db7cf Merge commit '668e16a0dd1ff56d4beeff5c658d8a2a08dbfac8'
* commit '668e16a0dd1ff56d4beeff5c658d8a2a08dbfac8':
  h264: on reference overflow, reset the reference count to 0, not 1.

Conflicts:
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 11:53:19 +01:00
Michael Niedermayer
ec203cd69b Merge commit 'e671d3ad6cd7fe1d02e9b35b889a25d8c059fce9'
* commit 'e671d3ad6cd7fe1d02e9b35b889a25d8c059fce9':
  h264: do not copy ref count/ref2frm when updating per-frame context
  flvdec: Check the return value of a malloc

Conflicts:
	libavformat/flvdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-02 11:41:31 +01:00
Anton Khirnov
437211ae73 h264: set ref_count to 0 for intra slices.
CC:libav-stable@libav.org
2013-03-02 10:27:13 +01:00
Anton Khirnov
668e16a0dd h264: on reference overflow, reset the reference count to 0, not 1.
Since decode_slice_header() returns before the reference lists are
constructed, there are zero valid references.

CC:libav-stable@libav.org
2013-03-02 10:27:03 +01:00
Anton Khirnov
e671d3ad6c h264: do not copy ref count/ref2frm when updating per-frame context
They are filled in decode_slice_header() anyway.
2013-03-02 10:26:50 +01:00
Michael Niedermayer
cc38ca6748 avcodec/utils: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 23:18:23 +01:00
Michael Niedermayer
30806ddcbc avcodec/rawdec: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 23:18:22 +01:00
Michael Niedermayer
f59ff8faa2 pngdec: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 23:18:22 +01:00
Michael Niedermayer
ff080346c6 gifdec: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 23:18:22 +01:00
Michael Niedermayer
7d7fb70129 cpia: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 23:18:22 +01:00
Michael Niedermayer
f232659130 tiff: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 23:18:22 +01:00
Michael Niedermayer
e0f716a9d9 ac3dec: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 23:18:22 +01:00
Michael Niedermayer
bf90ef0314 avcodec: add ff_frame_get_metadatap()
This is needed for av_dict_*

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 22:40:50 +01:00
Paul B Mahol
5b802cf567 lavc/codec_desc: add/fix .props for SGI/DPX/X-face/BRender PIX image
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-01 15:22:02 +00:00
Joseph Artsimovich
4a6bd34637 Handle an invalid extra mpeg2 picture header following a frame-encoded picture.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 16:04:31 +01:00
Paul B Mahol
6c7d1608dd sgidec: use unchecked bytestream2 functions where it makes sense
Overreads can not happen as header size of 512 bytes is required.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-01 14:59:33 +00:00
Paul B Mahol
5a232e5078 exr: use bytestream functions in pxr24_uncompress()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-01 13:16:29 +00:00
Michael Niedermayer
1a7166a58d Merge commit 'e8c52271c45ec27d783e74238dcfad0c2008731c'
* commit 'e8c52271c45ec27d783e74238dcfad0c2008731c':
  Revert "Move H264/QPEL specific asm from dsputil.asm to h264_qpel_*.asm."

Conflicts:
	libavcodec/x86/dsputil.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 13:39:47 +01:00
Michael Niedermayer
76f8d3c8d9 Merge commit '9d4da474f5f40b019cb4cb931c8499deee586174'
* commit '9d4da474f5f40b019cb4cb931c8499deee586174':
  lls: move to the private namespace

Conflicts:
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 13:19:00 +01:00
Michael Niedermayer
1d178710b4 libvpxenc: dont redundantly zero fields, the whole context is zeroed on init
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 00:11:53 +01:00
Pascal Massimino
3c3a8c1489 libvpxenc: add psnr support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-28 23:29:53 +01:00
Diego Biurrun
e8c52271c4 Revert "Move H264/QPEL specific asm from dsputil.asm to h264_qpel_*.asm."
This reverts commit f90ff772e7.

The code should be put back in h264_qpel_8bit.asm, but unfortunately
it is unconditionally used from dsputil_mmx.c since 71155d7.
2013-02-28 21:50:02 +01:00
Paul B Mahol
33240dfa9a exr: pxr24 decompression
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:15 +00:00
Paul B Mahol
9f3c90a366 exr: fix error message when pixel type is not set
This only happens with missing chlist attribute from header.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:15 +00:00
Paul B Mahol
4751c6c270 exr: s/bits_per_color_id/pixel_type
Previous naming was misleading.

Also fix wrong message about missing
support for 32-bit unsigned int pixel type.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:15 +00:00
Paul B Mahol
a71926a548 exr: track channels properties
Needed for proper decoding of channels with subsampling
and also for remaining compression methods.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:14 +00:00
Nicolas George
bf63a474ca lavc/exr: use size_t instead of int for sizes.
Fix a segfault on 64-bits archs.
2013-02-28 19:13:58 +01:00
Michael Niedermayer
c4735eef03 loco: silence warning: decoded may be used uninitialized in this function
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-28 18:10:49 +01:00
Luca Barbato
9d4da474f5 lls: move to the private namespace
The functions are private.
2013-02-28 17:39:24 +01:00
Martin Storsjö
86611ff123 pnm: Use av_pix_fmt_desc_get instead of accessing the array directly
This fixes boken fate tests with MSVC with DLLs, broken since
b5f536d24.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-28 18:29:03 +02:00
Clément Bœsch
7b2d50f81e build: make iconv build configurable. 2013-02-28 01:23:24 +01:00
Nicolas George
13811b19d6 lavc/libopusenc: report an error if global_quality is set. 2013-02-27 19:01:34 +01:00
Paul B Mahol
9774145fe5 exr: simplify decompression path
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-27 16:28:32 +00:00
Michael Niedermayer
5c924c9b7d dv: Correctly identify CDVC profile
Fixes Ticket2177

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 17:19:51 +01:00
Michael Niedermayer
50c2738883 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: dsputil: Drop some unused function #defines

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 12:35:18 +01:00
Michael Niedermayer
cdb9752a0f Merge commit '845cfc92f908791714b8c4c8a49c91b8c64b685e'
* commit '845cfc92f908791714b8c4c8a49c91b8c64b685e':
  x86: dsputil: Drop aliasing of ff_put_pixels8_mmx to ff_put_pixels8_mmxext

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Note, the commit message is wrong, there are no mmxext instructions as
claimed in the function. The change should do no harm though

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 12:22:10 +01:00
Michael Niedermayer
04ec796bda Merge commit '096cc11ec102701a18951b4f0437d609081ca1dd'
* commit '096cc11ec102701a18951b4f0437d609081ca1dd':
  x86: vc1dsp: Move ff_avg_vc1_mspel_mc00_mmxext out of dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 11:59:31 +01:00
Michael Niedermayer
f2bbc2ffc3 Merge commit '31a23a0dc663bd42bf593275971b4277a479b73d'
* commit '31a23a0dc663bd42bf593275971b4277a479b73d':
  x86: dsputil_mmx: Remove leftover inline assembly fragments

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 11:50:51 +01:00
Michael Niedermayer
0dcecf45d8 avcodec: mbd has a range of 0..2
Fixes Ticket2219

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 03:04:04 +01:00
Michael Niedermayer
1672624ddc mpegvideo_enc: fix gray flag with 444 jpeg
Fixes Ticket2155

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 02:56:06 +01:00
Diego Biurrun
ebc701993f x86: dsputil: Drop some unused function #defines 2013-02-26 23:36:24 +01:00
Diego Biurrun
845cfc92f9 x86: dsputil: Drop aliasing of ff_put_pixels8_mmx to ff_put_pixels8_mmxext
The external assembly function uses mmxext instructions and should not be
masqueraded as an mmx-only function. Instead, use the mmx-only inline
assembly function.
2013-02-26 23:36:24 +01:00
Diego Biurrun
096cc11ec1 x86: vc1dsp: Move ff_avg_vc1_mspel_mc00_mmxext out of dsputil_mmx.c 2013-02-26 23:36:24 +01:00
Martin Storsjö
31a23a0dc6 x86: dsputil_mmx: Remove leftover inline assembly fragments
These became unused in 71155d7b.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-27 00:17:05 +02:00
Michael Niedermayer
997a36238f mpeg12: Detect MXF essence stuff at the end of frames
Fixes some of the issues with segment.mov

See: 0226 15:16 Joseph Artsimov (2.1K) [FFmpeg-devel] Two problems with MPEG2 decoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 18:56:32 +01:00
Michael Niedermayer
c6d3b3be15 aacsbr: Silence warning: max_qmf_subbands may be used uninitialized in this function
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 16:36:29 +01:00
Michael Niedermayer
a984efd104 Merge commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f'
* commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f':
  Remove unnecessary dsputil.h #includes

Conflicts:
	libavcodec/ffv1.c
	libavcodec/h261dec.c
	libavcodec/h261enc.c
	libavcodec/h264pred.c
	libavcodec/lpc.h
	libavcodec/mjpegdec.c
	libavcodec/rectangle.h
	libavcodec/x86/idct_sse2_xvid.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 13:05:10 +01:00
Michael Niedermayer
9b1a0c2ee8 Merge commit '76b19a3984359b3be44d4f7e4e69b7b86729a622'
* commit '76b19a3984359b3be44d4f7e4e69b7b86729a622':
  Fix a number of incorrect intmath.h #includes.
  avconv: remove an unused variable

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 12:56:55 +01:00
Michael Niedermayer
6fbddc80d6 Merge commit 'e8da807537e314d74cb6d93598f1dcfb891fa655'
* commit 'e8da807537e314d74cb6d93598f1dcfb891fa655':
  cmdutils: only use libavresample when it is enabled
  libschroedinger: cosmetics: rename variable avccontext to avctx
  vorbisenc: cosmetics: rename variable avccontext to avctx

Conflicts:
	cmdutils.c
	libavcodec/libschroedinger.c
	libavcodec/libschroedingerenc.c
	libavcodec/vorbisenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 12:50:34 +01:00
Michael Niedermayer
13fa074173 Merge commit 'e951b6d94c441d46b396ef12da1428297d77251d'
* commit 'e951b6d94c441d46b396ef12da1428297d77251d':
  vorbisdec: cosmetics: rename variable avccontext to avctx
  configure: Identify icc compiler with a less ambiguous pattern

Conflicts:
	libavcodec/vorbisdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 12:39:26 +01:00
Michael Niedermayer
f6fff8e546 ac3enc_template: silence may be used uninitialized in this function warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 02:49:14 +01:00
Michael Niedermayer
5bcb379ffe motion-test: fix warning: dsp_mask is deprecated
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 02:49:05 +01:00
Michael Niedermayer
bfcc21a472 libavcodec/motion-test: set the bitexact flag
this is needed for testing mmx2 functions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 02:48:18 +01:00
Diego Biurrun
c242bbd8b6 Remove unnecessary dsputil.h #includes 2013-02-26 00:51:34 +01:00
Diego Biurrun
76b19a3984 Fix a number of incorrect intmath.h #includes. 2013-02-26 00:51:34 +01:00
Justin Ruggles
e951b6d94c vorbisdec: cosmetics: rename variable avccontext to avctx
This is consistent with the rest of libavcodec.
2013-02-25 15:15:21 -05:00
Justin Ruggles
699d02b839 libschroedinger: cosmetics: rename variable avccontext to avctx
This is consistent with the rest of libavcodec.
2013-02-25 15:15:21 -05:00
Justin Ruggles
09031b4639 vorbisenc: cosmetics: rename variable avccontext to avctx
This is consistent with the rest of libavcodec.
2013-02-25 15:15:21 -05:00
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
Paul B Mahol
9c75c24de4 exr: check if line offset table is complete only once per frame
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
cc0bd78413 exr: support more line orders
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
1178868683 exr: fix overflow check in lineoffset processing
Also read data size for raw compressions too and
make sure its value is sane.

Remove code that fills missing blocks with zeroes.
It is marginally useful and make implementation
of actually useful features harder.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
88d7259fd2 exr: merge multiple if () blocks
Remove useless comments.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
3456891291 exr: check version too
Separate version from flags.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Michael Niedermayer
6f77122bf5 aac: reconfigure output on pop
Fixes Ticket1918

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-22 18:19:42 +01:00
Michael Niedermayer
21f68528e3 aacdec: dont pop random configurations
Fixes out of array accesses

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-22 14:46:17 +01:00
Michael Niedermayer
b16bf913d8 dxva2: move _WIN32_WINNT handling to public header
This removes duplicate code

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-22 01:37:14 +01:00
Michael Niedermayer
29436c1ab2 libavcodec/mips/aacsbr_mips: fix ;;
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 23:06:30 +01:00
Mirjana Vulin
46d52a0b09 mips: optimization for float aac decoder (ps module)
Signed-off-by: Mirjana Vulin <mvulin@mips.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 22:43:26 +01:00
Mirjana Vulin
8d2eb5fe58 mips: optimization for float aac decoder (sbr module)
Signed-off-by: Mirjana Vulin <mvulin@mips.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 22:43:08 +01:00
Matt Wolenetz
82a4a4e7ca Fix Win64 AVX h264_deblock by not using redzone on Win64
Thanks-to: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 22:38:56 +01:00
Michael Niedermayer
04220b473e h264: ensure that get_format() is called when changing format but not otherwise.
Fixes Ticket2288

Tested-by: Stefano Pigozzi <stefano.pigozzi@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 22:36:33 +01:00
Michael Niedermayer
8a6449167a avcodec_decode_audio4: check got_frame_ptr before handling initial skip
Fixes out of array accesses

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 22:01:14 +01:00
Michael Niedermayer
8036ba299d h264: move next/last picture init to decode_slice_header
This is a regression introduced from the h264/mpegvideo split
Fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 20:24:31 +01:00
Michael Niedermayer
669d50b445 ec: check that reference pictures have matching parameters before using them.
Fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 16:38:24 +01:00
Michael Niedermayer
bdeb61ccc6 h264: check that luma and chroma depth match
Fixes out of array access

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 15:02:09 +01:00
Matt Wolenetz
311443f6c7 x86: h264: Don't use redzone in AVX h264_deblock on Win64
This fixes crashes in chromium on win64 on machines with AVX
(crashes that apparently aren't triggered by fate).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-21 15:02:16 +02:00
Paul B Mahol
59015c1118 exr: constify s in rle_uncompress()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-21 12:02:18 +00:00
Paul B Mahol
a3d890527e exr: reset compression in decode_frame()
This fixes decoding of images if compression changes.
Regression since b040ffc84c.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-21 12:02:18 +00:00
Michael Niedermayer
6b8f21190d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dxva2: Add missing #define to make header compile standalone
  arm: vp8: Add missing #includes for header to compile standalone
  doc: filters: Correct BNF FILTER description

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 12:59:38 +01:00
Michael Niedermayer
551d8b58eb brender_pix: use a grayscale palette as fallback instead of a uninitialized one.
Improves: 3-0-CORPSE.PIX

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 00:26:50 +01:00
Michael Niedermayer
47e92153b6 mjpegdec: check for packed rgb mjpeg.
Fixes null pointer dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 00:03:36 +01:00
Carl Eugen Hoyos
c4dc6c4c86 Fix bits_per_coded_sample when encoding png with frame-level multithreading.
Fixes ticket #2290.
2013-02-20 22:54:21 +01:00
Michael Niedermayer
da7672b20a h264: Fix handling of changing reference counts between slices
Fixes out of array accesses

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 19:53:54 +01:00
Michael Niedermayer
039f55c803 h264: call alloc_scratch_buffers() only once linesize is known
Fixes out of array accesses

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 19:53:54 +01:00
Diego Biurrun
a0a1ac0f09 dxva2: Add missing #define to make header compile standalone 2013-02-20 14:24:07 +01:00
Diego Biurrun
3e85b46ecf arm: vp8: Add missing #includes for header to compile standalone 2013-02-20 14:24:07 +01:00
Michael Niedermayer
39b03932c2 Merge commit '8a11ce43d08352f7a290355ebb5b29c495ad9609'
* commit '8a11ce43d08352f7a290355ebb5b29c495ad9609':
  build: Ensure that output directories for header objects are created
  h264: Get rid of unnecessary casts

Conflicts:
	common.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 11:54:06 +01:00
Michael Niedermayer
088f20a332 Merge commit '2ed008204d5467be03a0a3af1e293b2f7038d0a0'
* commit '2ed008204d5467be03a0a3af1e293b2f7038d0a0':
  h264: Add add_pixels4/8() to h264dsp, and remove add_pixels4 from dsputil

Conflicts:
	libavcodec/dsputil.c
	libavcodec/h264.c
	libavcodec/h264_mb_template.c
	libavcodec/h264addpx_template.c
	libavcodec/h264dsp.c
	libavcodec/h264dsp.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 11:17:32 +01:00
u-bo1b@0w.se
8d1dd5bd50 cinepak: More correct Cinepak decoder.
change the treatment of the strip y coordinates which previously did
not follow the description (nor did it behave like the binary decoder
on files with absolute strip offsets).

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 04:14:04 +01:00
Michael Niedermayer
a3adbedf9b cinepak: simplify
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 04:14:04 +01:00
u-bo1b@0w.se
4e635e10e2 cinepak: Use correct colorspace.
The new code is also faster and more robust.

As for the performance:

old decoder + conversion to rgb:         fps = 2618
old decoder, without converting to rgb:  fps = 4012

new decoder, producing rgb:              fps = 4502

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 04:13:33 +01:00
Michael Niedermayer
f5c00b347d avcodec_align_dimensions2: Ensure cinepak has large enough buffers.
This is partly redundant with the following patches, but its safer

Found-by: u-bo1b@0w.se
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 03:54:36 +01:00
Michael Niedermayer
c69315a5de cook: check js_subband_start for validity
Fixes out of array read

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-20 00:20:03 +01:00
Martin Storsjö
26ee5ca03d h264: Get rid of unnecessary casts
This gets rid of a number of warnings about casts discarding
qualifiers from the pointer target, present since 7ebfb466a.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-20 00:25:29 +02:00
Michael Niedermayer
a5153b1d16 shorten: Fix signedness of comparission
Fixes out of array accessed

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-19 23:08:19 +01:00
Michael Niedermayer
ce153eef8f vc1dec: dont decode slices when the slice header failed to decode.
Fixes assertion failure

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-19 21:40:44 +01:00
Ronald S. Bultje
fae6fd5b87 h264/svq3: Stop using draw_edges
Instead, only extend edges on-demand when the motion vector actually
crosses the visible decoded area using ff_emulated_edge_mc(). This
changes decoding time for cathedral from 8.722sec to 8.706sec, i.e.
0.2% faster overall. More generally (VP8 uses this also), low-motion
content gets significant speed improvements, whereas high-motion content
tends to decode in approximately the same time.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-19 22:34:33 +02:00
Ronald S. Bultje
7ebfb466ae h264: Don't store intra pcm samples in h->mb
Instead, keep them in the bitstream buffer until we read them verbatim,
this saves a memcpy() and a subsequent clearing of the target buffer.
decode_cabac+decode_mb for a sample file (CAPM3_Sony_D.jsv) goes from
6121.4 to 6095.5 cycles, i.e. 26 cycles faster.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-19 22:34:14 +02:00
Ronald S. Bultje
9918f57dcf get_bits: Return pointer to buffer that is the result of the alignment
This allows more transparent mixing of get_bits and whole-byte access
without having to touch get_bits internals.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-19 22:33:52 +02:00
Ronald S. Bultje
2ed008204d h264: Add add_pixels4/8() to h264dsp, and remove add_pixels4 from dsputil
These functions are mostly H264-specific (the only other user I can
spot is bink), and this allows us to special-case some functionality
for H264. Also remove the 16-bit-coeff with >8bpp versions (unused)
and merge the duplicate 32-bit-coeff for >8bpp (identical).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-19 22:33:29 +02:00
Ronald S. Bultje
e5ffffe48d h264chroma: Remove duplicate 9/10 bit functions
These functions do the same thing in 16 bit space and don't need
any depth specific clipping.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-19 22:33:19 +02:00
Ronald S. Bultje
f859678f3f vp56: Remove clear_blocks call, and clear alpha plane U/V DC only
The non-alpha and alpha-Y planes are cleared in the idct_put/add()
calls. For the alpha U/V planes, we only care about the DC for entropy
context prediction purposes, the rest of the data is unused.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-19 22:33:11 +02:00
Michael Niedermayer
a34418c28e tiff: check bppcount
Fixes division by 0

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-19 17:57:36 +01:00
Michael Niedermayer
633f997479 bmp: check available space when reading palette
Fixes out of array read

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-19 17:00:04 +01:00