summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* libkvazaar: Set frame rate as a rational numberArttu Ylä-Outinen2016-01-19
| | | | | | | | | | | | Updates libkvazaar to pass the exact frame rate to Kvazaar by setting the numerator and denominator separately instead of a single floating point number. The exact frame rate is needed for writing timing info to the bitstream. Requires Kvazaar version 0.8.1. Signed-off-by: Arttu Ylä-Outinen <arttu.yla-outinen@tut.fi> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavc: Make sure that the effective timebase would not overflowArttu Ylä-Outinen2016-01-19
| | | | | | | In the unlikely situation the user decides to set ticks_per_frame and timebase to a value large enough to overflow. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* configure: mips: Support both-endian compilersLuca Barbato2016-01-19
| | | | | Use mips{,64}eb to force big endian and mips{,64}el to force little endian.
* mathops: mips: Correctly enable loongson-specific assemblyLuca Barbato2016-01-19
| | | | | The code wrongly assumed that the instructions used are supported on mips64, while it is supported only on loongson cpus.
* configure: Use pkg-config to check for opensslLuca Barbato2016-01-19
|
* flvdec: Add sanity checking of the last packet sizeMartin Storsjö2016-01-19
| | | | | | | | For http, this avoids spurious warnings about failed requests (e.g. HTTP error 416 Requested Range Not Satisfiable), if the last packet is truncated and the size read is bogus. Signed-off-by: Martin Storsjö <martin@martin.st>
* flvdec: perform duration search just onceMichael Niedermayer2016-01-19
| | | | | | | | When loading a truncated flv file, it would previously try to do a seek to the end of every packet read. For some input protocols (such as http), such repeated seek attempts are cripple the reading performance. Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: build: Group all encoder objects togetherDiego Biurrun2016-01-18
|
* x86: ac3dsp: Drop forward declaration for nonexisting functionDiego Biurrun2016-01-18
|
* dca: fix misaligned access in ff_dca_convert_bitstreamAndreas Cadhalpun2016-01-15
| | | | | | | | | | | | The function is used on unaligned buffers (such as those provided by AVPacket), accessing them as uint16_t causes SIGBUS crashes on architectures like SPARC. This fixes ubsan runtime error: load of misaligned address for type 'const uint16_t', which requires 2 byte alignment Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* nutdec: only copy the header if it existsAndreas Cadhalpun2016-01-13
| | | | | | | | Fixes runtime error: null pointer passed as argument 2, which is declared to never be null Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* xwddec: prevent overflow of lsize * avctx->heightAndreas Cadhalpun2016-01-13
| | | | | | | | | This is used to check if the input buffer is larger enough, so if this overflows it can cause a false negative leading to a segmentation fault in bytestream2_get_bufferu. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* nuv: sanitize negative fps rateAndreas Cadhalpun2016-01-13
| | | | | Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* on2avc: limit number of bits to 30 in get_egolombAndreas Cadhalpun2016-01-13
| | | | | | | | | | More don't fit into the integer output. Also use get_bits_long, since get_bits only supports reading up to 25 bits, while get_bits_long supports the full integer range. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* nvenc: generate dts properlyAnton Khirnov2016-01-12
| | | | | | | | | | When there is a non-zero decoding delay due to reordering, the first dts should be lower than the first pts (since the first packet fed to the decoder does not produce any output). Use the same scheme used in mpegvideo_enc (which comes from x264 originally) -- wait for first two timestamps and extrapolate linearly to the past to produce the first dts value.
* nvenc: fix encoding with B-framesAnton Khirnov2016-01-12
| | | | | | | | | | | When B-frames are enabled and the encoder returns success, all currently pending buffers immediately become valid and can be returned to the caller. We can only return one packet at a time, so all the other pending buffers should be transferred to a new 'ready' fifo, from where they can be returned in subsequent calls (in which the encoder does not produce any new output). This bug was hidden by the incorrect testing of the encoder return value (the return value was overwritten before it was tested).
* nvenc: flush the encoder before closing it, as required by the docsAnton Khirnov2016-01-12
| | | | Otherwise, closing the encoder can crash.
* nvenc: rename encodersAnton Khirnov2016-01-12
| | | | | Change 'nvenc_<codec>' to '<codec>_nvenc', which is consistent with other similar decoders and encoders (QSV, MMAL).
* nvenc: better error handlingAnton Khirnov2016-01-12
| | | | Return proper error codes and print more descriptive error messages.
* movenc-test: stop setting the GLOBAL_HEADER codec flagAnton Khirnov2016-01-12
| | | | | This test does no encoding, setting the flag was done just to silence the warning removed in the previous commit.
* mux: drop the warning about global headersAnton Khirnov2016-01-12
| | | | | The AVStream codec context is often not (and should not be) the actual encoding context, so this warning will be spurious in many cases.
* lavc: Use get_bitsz where neededAndreas Cadhalpun2016-01-11
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavc: Add get_bitsz()Andreas Cadhalpun2016-01-11
| | | | | | get_bit variant supporting 0-bits reads. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* sunrastenc: Properly load codec private optionsVittorio Giovara2016-01-11
| | | | | Initialize the private class field and give the class a more appropriate name. Add a class member to the codec context.
* get_bits: Support max_depth > 2 in GET_RL_VLC_INTERNALKieran Kunhya2016-01-11
|
* lavu: add AV_CEIL_RSHIFT and use it in various placesClément Bœsch2016-01-11
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* swfdec: support compressed swfClément Bœsch2016-01-11
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* asfdec: Fix typo in commentAlexandra Hájková2016-01-11
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* APIchanges: Add missing av_pix_fmt_get_chroma_sub_sample entryLuca Barbato2016-01-11
|
* arm: Fix vfp dead code elimination with have_vfp_vmMartin Storsjö2016-01-08
| | | | | | | | | This fixes builds with --disable-vfp. Checking for the armv6 cpu flag is incorrect, since vfpv2 isn't armv6 specific. Signed-off-by: Martin Storsjö <martin@martin.st>
* checkasm: Check register clobbering on aarch64Martin Storsjö2016-01-07
| | | | | | | This is disabled on iOS, since iOS uses a slightly different ABI for vararg parameters. Signed-off-by: Martin Storsjö <martin@martin.st>
* checkasm: Check register clobbering on armMartin Storsjö2016-01-07
| | | | | | | | | | | Use two separate functions, depending on whether VFP/NEON is available. This is set to require armv5te - it uses blx, which is only available since armv5t, but we don't have a separate configure item for that. (It also uses ldrd, which requires armv5te, but this could be avoided if necessary.) Signed-off-by: Martin Storsjö <martin@martin.st>
* avpacket: fix size check in packet_allocAndreas Cadhalpun2016-01-07
| | | | | | | | | | | The previous check only caught sizes from -AV_INPUT_BUFFER_PADDING_SIZE to -1. This fixes ubsan runtime error: signed integer overflow: 2147483647 + 32 cannot be represented in type 'int' Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* asfdec: Remove unused function parametersAlexandra Hájková2016-01-07
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* asfdec: reject size > INT64_MAX in asf_read_unknownAndreas Cadhalpun2016-01-07
| | | | | | | | | | | Both avio_skip and detect_unknown_subobject use int64_t for the size parameter. This fixes a segmentation fault due to infinite recursion. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Alexandra Hájková <alexandra.khirnova@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* asfdec: only set asf_pkt->data_size after sanity checksAndreas Cadhalpun2016-01-07
| | | | | | | | | Otherwise invalid values are used unchecked in the next run. This can cause NULL pointer dereferencing. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Alexandra Hájková <alexandra.khirnova@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* qsvenc: split encoding frames and reading from the async FIFOAnton Khirnov2016-01-07
| | | | | | This makes sure all the frames are returned at the end. Found-By: Maxym Dmytrychenko <maxym.dmytrychenko@intel.com>
* qsvenc: properly handle the warning from MFXVideoCORE_SyncOperationMaxym Dmytrychenko2016-01-07
| | | | | | Same as what is done in 3b6473b43eb69fc3faaf69f7fd0b83b51db7607f. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avconv: Drop an impossible checkLuca Barbato2016-01-04
| | | | | | EAGAIN is already managed in poll_filters(). Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* avconv: Simplify poll_filters() return value checkLuca Barbato2016-01-04
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* h264_refs: Remove broken trace debug codeDiego Biurrun2016-01-03
|
* lavc: Add missing #includes for ff_dlog()Diego Biurrun2016-01-03
|
* qsvdec: properly handle the warning from MFXVideoCORE_SyncOperationMaxym Dmytrychenko2016-01-01
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* qsvenc_hevc: improve the default settingsMaxym Dmytrychenko2016-01-01
| | | | | | | Use 8 B-frames and modify the GOP size to be a multiple of the B-frame count. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* h264: improve behaviour with invalid reference listsAnton Khirnov2016-01-01
| | | | | | | | | | | | | Before 741b494fa8cd28a7d096349bac183893c236e3f9, when the reference list modification description was invalid, the code would substitute the corresponding reference from the initial ("default") reference list. After that commit, it will just return an error. Since there are apparently invalid samples in the wild that used to play fine with the old code, it is a good idea to re-add some sort of error resilience here. So, when the reference list modification results in a missing frame, substitute a previous reference frame for it. The relevant sample again decodes fine with the same output as previously.
* dca: use defines for subband related constantsAlexandra Hájková2015-12-31
| | | | Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* x86: use emms after ff_int32_to_float_fmul_scalar_sseJanne Grunau2015-12-30
| | | | | | | | | | | | | | | | | | | | | Intel's Instruction Set Reference (as of September 2015) clearly states that cvtpi2ps switches to MMX state. Actual CPUs do not switch if the source is a memory location. The Instruction Set Reference from 1999 (Order Number 243191) describes this behaviour but all later versions I've seen have make no distinction whether MMX registers or memory is used as source. The documentation for the matching SSE2 instruction to convert to double (cvtpi2pd) was fixed (see the valgrind bug https://bugs.kde.org/show_bug.cgi?id=210264). It will take time to get a clarification and fixes in place. In the meantime it makes sense to change ff_int32_to_float_fmul_scalar_sse to be correct according to the documentation. The vast majority of users will have SSE2 so a change to the SSE version has little effect. Fixes fate-checkasm on x86 valgrind targets. Valgrind 'bug' reported as https://bugs.kde.org/show_bug.cgi?id=357059
* checkasm: x86: post commit review fixesJanne Grunau2015-12-29
| | | | | | | Check the full FPU tag word instead of only the lower half and simplify the comparison. Use upper-case function base name as macro name to instantiate both checked_call variants.
* x86: zero extend the 32-bit length in int32_to_float_fmul_scalar implicitlyJanne Grunau2015-12-29
| | | | This reverts commit 5dfe4edad63971d669ae456b0bc40ef9364cca80.
* Remove stray line breaks from avpriv_{report_missing_feature|request_samples}Diego Biurrun2015-12-26
|