summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
* ppc: Restrict some Altivec implementations to Big EndianLuca Barbato2015-05-31
| | | | | In Little Endian the vec_ld/vec_st operations work as expected only for byte-vectors.
* ppc: pixblockdsp: Use the abriged vector typesLuca Barbato2015-05-31
|
* h264: Make sure reinit failures mark the context as not initializedLuca Barbato2015-05-30
| | | | | Bug-Id: CVE-2015-3417 CC: libav-stable@libav.org
* msrle: Use FFABS to determine the frame size in msrle_decode_pal4Luca Barbato2015-05-30
| | | | | | | As done in msrle_decode_8_16_24_32. Bug-Id: CVE-2015-3395 CC: libav-stable@libav.org
* x86: cavs: Remove an unneeded scratch bufferMichael Niedermayer2015-05-28
| | | | | | | | Simplifies the code and makes it build on certain compilers running out of registers on x86. CC: libav-stable@libav.org Reported-By: mudler
* rl: Add error checking to ff_rl_init().Anton Khirnov2015-05-28
|
* rl: Add a function for freeing dynamically allocated tables.Anton Khirnov2015-05-28
| | | | Such tables are not used anywhere currently, but that should change.
* rl: Rename ff_*_rl() to ff_rl_*()Anton Khirnov2015-05-28
|
* mpegvideo: Move ff_*_rl functions to a separate fileAnton Khirnov2015-05-28
|
* mpegvideo: Drop exchange_uv() function and use its code directlyVittorio Giovara2015-05-28
| | | | Code is small enough that there is no advantage in a separate function.
* D3D11va: add a Direct3D11 video decoder similar to DXVA2Steve Lhomme2015-05-25
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* mpegvideo: Rework various functions not to use MpegEncContext directlyVittorio Giovara2015-05-22
|
* mpegvideo: Have ff_mpeg_ref_picture use AVCodecContext directlyVittorio Giovara2015-05-22
|
* mpegvideo: Have ff_mpeg_unref_picture use AVCodecContext directlyVittorio Giovara2015-05-22
| | | | | This skips setting the memory to 0 but allows for reuse on different contextes. Oracle did not report any unsual activity because of it.
* mpegvideo: Drop stream_codec_tagVittorio Giovara2015-05-22
| | | | The field is unused.
* mpegvideo: Drop err_recognitionVittorio Giovara2015-05-22
| | | | It is just a duplicate of an AVCodecContext member so use it instead.
* mpegvideo: Drop flags and flags2Vittorio Giovara2015-05-22
| | | | They are just duplicates of AVCodecContext members so use those instead.
* hevc: make avcodec_decode_video2() fail if get_format() failswm42015-05-19
| | | | | | | | | | | | Personally, I need the decoder to back out if get_format() returns no usable pixel format. This didn't work because the error code was not propagated down the call chain. This in turn happened because the variable declaration removed in this patch shadowed the variable, whose value is returned at the end of the function. Consequently, failures of decode_nal_unit() were ignored in this place. Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* vmnc: Delay pixel size checkVittorio Giovara2015-05-19
| | | | | | | | Some clients incorrectly set 24 as bits_per_coded_sample, while the actual value is preserved in one of the codec headers. In order to work around this, delay the check until decode_frame(). Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* vda: Make output CVPixelBuffer format configurableStefano Pigozzi2015-05-13
| | | | | | | This is useful for client programs to ask for nv12 surfaces instead of the current default (uyvy), since those are more efficient to decode to. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* libx265: Use the Multi-library InterfaceGopu Govindaswamy2015-05-13
| | | | | | | | | | | | | | | Use the Multi-library interface to load at runtime x265 libraries supporting alternative bit depths (e.g. 8bit and 16bit). The linked library will try to load the library supporting the pixel format if it is not supported by itself. Fallback requesting the native library (passing 0 to x265_api_get) if a library supporting the requested bit depth is not available. Signed-off-by: Gopu Govindaswamy <gopu@multicorewareinc.com> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* mjpegenc: Fix JFIF header byte orderingShiina Hideaki2015-05-12
| | | | | | | | The header had a wrong version description. Bug-Id: 808 Signed-off-by: Shiina Hideaki <shiina@yndrd.com> Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* dnxhd: Print unknown header when foundVittorio Giovara2015-05-12
|
* quickdraw: Skip the empty 512 byte header for imagesVittorio Giovara2015-05-12
| | | | Found-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
* quickdraw: Make the palette opaqueCarl Eugen Hoyos2015-05-12
| | | | | | Additional overflow fix by Michael Niedermayer <michaelni@gmx.at>. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* dca_parser: Extend DTS core sync word and fix existing checkfoo862015-05-12
| | | | | | | | | | | | The previous version checked for 14-bit streams and did not properly work across buffer boundaries. Use the 64-bit parser state to make extended sync word detection work across buffer boundary and check the extended sync word for 16-bit LE and BE core streams to reduce probability of alias sync detection. Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* png: Set the color range as full rangewm42015-05-09
| | | | | | The format uses full range for the gray formats. CC: libav-stable@libav.org
* alac: Reject rice_limit 0 if compression is usedAndreas Cadhalpun2015-05-08
| | | | | | | | | | | If in compression mode rice_limit = 0 leads to call `show_bits(gb, k)` in `decode_scalar` with k = 0. Request a sample in case it is valid and it should be accepted. Signed-off-by: Luca Barbato <lu_zero@gentoo.org> CC: libav-stable@libav.org
* ape: Support _0000 files with nblock smaller than 64Andreas Cadhalpun2015-05-08
| | | | | | | | The decode_array_0000 assumed that 64 is the minimal block size while it is not. CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* libx265: Fix 'braces around scalar initializer' warningVittorio Giovara2015-05-06
| | | | | | | | x265 Reordered the x265_picture fields in the commit https://github.com/videolan/x265/commit/51b1518de2414431f36eac592db15b667c25a7b9#diff-945b5354d8767dfac13334f2d22cf58fR107 Now the first field is an integer and not an array.
* quickdraw: Support direct pixel blocksVittorio Giovara2015-05-06
| | | | | Data is stored in separated components so rework decode_rle() to support stepping and offsets.
* quickdraw: Switch to greedy parsingVittorio Giovara2015-05-06
| | | | | | | | | | | | | | Quickdraw packs data as a series of codes that the application is supposed to handle, but it does not define any order in which they might appear. Since it's unfeasible to support *all* opcodes defined by the spec, only handle well-known blocks containing video data and ignore any unknown or unsupported ones. Move palette loading and rle decoding to separate functions to resue them in other blocks and drop format initialization in init since it can support more formats than pal8. Validate width and height.
* quickdraw: Convert to bytestream2Vittorio Giovara2015-05-06
| | | | | Add appropriate error messages and reduce r, g, b variables scope. Drop the now redundant line checks in RLE decoding.
* alsdec: only adapt order for positive max_orderAndreas Cadhalpun2015-05-05
| | | | | | | | For max_order = 0 the clipping range is invalid. (amin = 2, amax = 1) CC: libav-stable@libav.org Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* alsdec: check sample pointer range in revert_channel_correlationAndreas Cadhalpun2015-05-05
| | | | | | | | | Also change the type of begin, end and smp to ptrdiff_t to make the comparison well-defined. CC: libav-stable@libav.org Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* aacpsy: correct calculation of minath in psy_3gpp_initAndreas Cadhalpun2015-05-05
| | | | | | | | | | | | The minimum of the ath(x, ATH_ADD) function depends on ATH_ADD. This patch uses the first order approximation to determine it. For ATH_ADD = 4 this results in the value at 3407.06812 (-5.24241638) not the one at 3410 (-5.24237967). CC: libav-stabl@libav.org Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* alsdec: limit avctx->bits_per_raw_sample to 32Andreas Cadhalpun2015-05-05
| | | | | | | | | avctx->bits_per_raw_sample is used in get_sbits_long, which only supports up to 32 bits. CC: libav-stable@libav.org Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* aasc: return correct buffer size from aasc_decode_frameAndreas Cadhalpun2015-05-05
| | | | | | CC: libav-stable@libav.org Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* dnxhddec: Fix pixel format changeCarl Eugen Hoyos2015-05-01
| | | | | | Regression introduced in 598f7d046cbf306706623210c5baafa3b7cd1df3. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* ffv1enc: Add const attribute to input frameVittorio Giovara2015-05-01
| | | | | | warning: assigning to 'AVFrame *' (aka 'struct AVFrame *') from 'const AVFrame *' (aka 'const struct AVFrame *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
* rawenc: properly allocate coded_frameAnton Khirnov2015-04-29
|
* h264: use properly allocated AVFramesAnton Khirnov2015-04-29
|
* h264: embed the DPB in the contextAnton Khirnov2015-04-29
| | | | | It now has a fixed size and is initialized only once, so there is no point in allocating it separately.
* h264: merge the init and reinit paths in update_thread_context()Anton Khirnov2015-04-29
| | | | | There is no real need to handle the init case specially, everything necessary is initialized in the reinit code as well.
* h264: drop the reinit parameter from init_slice_header()Anton Khirnov2015-04-29
| | | | | It is only used to decide whether to call free_tables(), but that function is safe to call on an uninitialized context as well.
* h264: update the current bit depth/chroma type in init_slice_header()Anton Khirnov2015-04-29
| | | | | With frame threading, it is currently only updated in the context where the change occurs, but not in any other contexts.
* h264: copy nal_length_size in update_thread_contextAnton Khirnov2015-04-29
| | | | | | It does not make sense to copy is_avc without copying this as well. This patch should not change anything for now, but will have an effect in later commits.
* h264: drop a comment that carries no useful informationAnton Khirnov2015-04-29
|
* h264: move freeing the escaped RBSP buffer to free_context()Anton Khirnov2015-04-29
| | | | | It does not logically belong in free_tables(), since it's not allocated in alloc_tables() and its size has nothing to do with the frame size.
* h264: eliminate ff_h264_set_parameter_from_sps()Anton Khirnov2015-04-29
| | | | | | | | | | | | | | That function currently does two things -- reinitializing the DSP contexts and setting low_delay based on the SPS values. The former more appropriately belongs in h264_slice_header_init(), while the latter only really makes sense in decode_slice_header(). The third call to ff_h264_set_parameter_from_sps(), done immediately after parsing a new SPS, appears to serve no useful purpose, so it is just dropped. Also, drop now unneeded H264Context.cur_chroma_format_idc.