summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* hevc: Remove useless clipGuillaume Martres2014-01-21
| | | | | | | | | | The src buffer should only contain values in the interval [0, (1 << BIT_DEPTH) - 1]. Since shift = (BIT_DEPTH - 5), src[x] >> shift must be in the interval [0, 31], so no clip is needed. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* hevc: clip pixels when transquant bypass is usedGuillaume Martres2014-01-21
| | | | | | | | | | | | The reconstructed picture should always be clipped (see section 8.6.5), previously we did not clip coding units where cu_transquant_bypass_flag == 1. Sample-Id: 00001325-google Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* hevc: Use uint64 to check for tile dimensionsLuca Barbato2014-01-21
| | | | | | | | | | And use unsigned datatypes. Otherwise it would overflow. Sample-Id: 00001315-google Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* hevc: Fix modulo operationsMichael Niedermayer2014-01-21
| | | | | | | Keep qp fields within the range. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* hevc: check that VPS referenced from SPS existsMichael Niedermayer2014-01-21
| | | | | | | | This matches how its done for SPS/PPS. Fixes null pointer dereference. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vc1: Always reset numref when parsing a new frame header.Michael Niedermayer2014-01-20
| | | | | | | | | Fixes an issue where the B-frame coding mode switches from interlaced fields to interlaced frames, causing incorrect decisions in the motion compensation code and resulting in visual artifacts. CC: libav-stable@libav.org Signed-off-by: Tim Walker <tdskywalker@gmail.com>
* rtmpproto: Send a full, absolute timestamp if it isn't monotonically growingMartin Storsjö2014-01-20
| | | | | | | | The normal differential timestamps can't handle negative differences, thus send a full packet header with an absolute timestamp in these cases. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Avoid using uninitialized memoryMartin Storsjö2014-01-20
| | | | | | | If the url ends with .flv, we stripped it but didn't initialize rt->playpath, doing av_strlcat on an uninitialized buffer. Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: do not set avg_frame_rate in the demuxerJustin Ruggles2014-01-20
| | | | | | | | | | | The track duration is often not reliable or is not the duration represented by the number of frames. In those cases, avg_frame_rate was reported incorrectly. Removing this code falls back to the default calculation in avformat_find_stream_info(). This is a partial revert of commit c3aeaa540. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* lavc: deprecate CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width().Anton Khirnov2014-01-20
|
* mpegvideo: allocate edges when encoding.Anton Khirnov2014-01-20
| | | | | Allocating edges will be removed from generic code, so the encoder must handle this explicitly.
* lavc: allow the caller to override dimensions in ff_get_buffer()Anton Khirnov2014-01-20
| | | | This will be useful for allocating edges in the encoders.
* eac3: cosmetics, re-indent.Tim Walker2014-01-19
|
* (e)ac3: clip surround mix level indexes.Tim Walker2014-01-19
| | | | Values 0-2 are reserved, 3 (-1.5dB) should be used instead.
* (e)ac3: parse and store the Lt/Rt and LFE mix levels.Tim Walker2014-01-19
|
* ac3: set default matrix encoding modes in parse_frame_header.Tim Walker2014-01-19
| | | | Deduplicates some code.
* h264: check that an IDR NAL only contains I slicesAnton Khirnov2014-01-18
| | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: reset num_reorder_frames if it is invalidAnton Khirnov2014-01-18
| | | | | | | | | An invalid VUI is not considered a fatal error, so the SPS containing it may still be used. Leaving an invalid value of num_reorder_frames there can result in writing over the bounds of H264Context.delayed_pic. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: reset ref count if decoding the slice header failsAnton Khirnov2014-01-18
| | | | | | | | | Otherwise the ER code might try to use some already freed references. Fixes possible access to freed memory. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: prevent two matching fields from being both a short/long ref combinationAnton Khirnov2014-01-18
| | | | | | | Fixes possible access to freed memory. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: do not call field_end if we do not have a current pictureAnton Khirnov2014-01-18
| | | | | | | Fixes invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: limit allowed pred modes in ff_h264_check_intra_pred_mode() to 3Anton Khirnov2014-01-18
| | | | | | | | | | Higher modes are not allowed for 16x16/chroma, which is what this function is used for. Otherwise this function would return 0 (vertical prediction) for invalid higher modes, which could result in invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: reset first_field if frame_start() fails for missing refsAnton Khirnov2014-01-18
| | | | | | | | | | In this case we may not have a current frame, while first_field being set implies we do. Fixes invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* Prepare for 10_alpha2 ReleaseReinhard Tartler2014-01-18
|
* avisynth: fix setting packet propertiesMichael Niedermayer2014-01-17
| | | | | | Reviewed-by: Stephen Hutchinson <qyot27@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* buffersrc: handle non-refcounted frames in av_buffersrc_add_frame() correctlyAnton Khirnov2014-01-17
|
* yuv4mpeg: set average frame rateAnton Khirnov2014-01-17
|
* avconv: print a warning when falling back to default 25fpsAnton Khirnov2014-01-17
|
* mp3enc: allow omitting the id3v2 header with -id3v2_version 0Anton Khirnov2014-01-17
|
* mp3enc: add an option for disabling the Xing frame.Anton Khirnov2014-01-17
|
* doxy: Document better the available AVFrame flagsLuca Barbato2014-01-17
|
* doxy: Add AVFrame to the structured modulesLuca Barbato2014-01-17
|
* aviocat: Add support for specifying the input durationMartin Storsjö2014-01-17
| | | | | | | This avoids the caller having to calculate the byte rate if wanting to push a file in a rate resembling realtime. Signed-off-by: Martin Storsjö <martin@martin.st>
* aviocat: Check the argv array length before reading element i+1Martin Storsjö2014-01-17
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: dsputil: Simplify xvmc deprecation conditionalDiego Biurrun2014-01-15
|
* build: Add separate hidden config option for the intrax8 codeDiego Biurrun2014-01-15
| | | | This allows for slightly cleaner dependency specification.
* aarch64: port neon clobber test from armJanne Grunau2014-01-15
|
* aarch64: h264 (bi)weight NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 loop filter NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: hpeldsp NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 qpel NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 idct NEON assembler optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 chroma motion compensation NEON optimizationsJanne Grunau2014-01-15
| | | | | Since RV40 and VC-1 use almost the same algorithm so optimizations for those two decoders are easy to do and included.
* aarch64: add cpuflags support for NEON and VFPJanne Grunau2014-01-15
| | | | | | | NEON and VFP are currently mandatory for all ARMv8 profiles. Both are handled as extensions as far as cpuflags are concerned. This is consistent with handling x86_64 which always has SSE2, but still handles it as an extension.
* dct-test: test ff_simple_idct_neon only on ARM for nowJanne Grunau2014-01-15
| | | | Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* mov: Free an earlier allocated array if allocating a new oneMartin Storsjö2014-01-15
| | | | | | | | | | | It could probably also be considered an error if the pointer isn't null at this point, but then we might risk rejecting some slightly broken files that we might have handled so far. Sample-Id: 00000496-google Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: Free intermediate arrays in the normal cleanup functionMartin Storsjö2014-01-15
| | | | | | | | | | | | | These arrays are normally freed at the end of mov_read_trak, but make sure they're freed in case mov_read_trak returned early (due to errors) or in case the atoms that allocate arrays are encountered at some other point than within a trak (which we don't have checks against). Sample-Id: 00000496-google Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* aarch64: bswap inline assemblyJanne Grunau2014-01-14
| | | | Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* aarch64: configure: set arch dependent featuresJanne Grunau2014-01-14
| | | | | | | Stack is always 16 byte aligned and clz, 64bit operations and unaligned memory access are fast in aarch64 mode on ARMv8. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* cabac: remove leftovers from the cabac encoderJanne Grunau2014-01-14
| | | | | | The cabac encoder was only used by the removed cabac test. Signed-off-by: Janne Grunau <janne-libav@jannau.net>