summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
...
* dxva2_hevc: properly signal the num_delta_pocs from the SPS RPSHendrik Leppkes2016-02-13
| | | | | | | | | ucNumDeltaPocsOfRefRpsIdx needs to contain the flat value from the SPS RPS, and not the final computed value from the slice header RPS, as this calculation is done internally by the driver again. Sample-Id: http://trailers.divx.com/hevc/Sintel_4k_27qp_24fps_1aud_9subs.mkvi Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
* nvenc: rename a misnamed functionAnton Khirnov2016-02-12
| | | | | This function copies the encoded bistream into the caller's packet, calling it 'get_frame' is misleading.
* nvenc: merge input and output surface structsAnton Khirnov2016-02-12
| | | | | An input frame always corresponds to exactly one output packet, so there is no point in complicating the situation by managing them separately.
* nvenc: factor out the pixel format listAnton Khirnov2016-02-12
|
* eatqi: Remove MpegEncContext dependencyVittorio Giovara2016-02-09
| | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mpeg1: Make intra-block decoding independent of MpegEncContextVittorio Giovara2016-02-09
| | | | | | | This allows untangling the eatqi decoder from the MPEG-1 decoder. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mpeg12dec: Refactor mpeg1_decode_block_intra()Diego Biurrun2016-02-09
| | | | | Reduce variable scope, improve variable name, drop pointless ff_dlog(), merge variable declaration and initialization, whitespace cosmetics.
* mpeg12dec: Always close reader on errorVittorio Giovara2016-02-09
| | | | | | | A reader left open may lead to hangs. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Diego Biurrun <diego@biurrun.de>
* dnxhd: Make the encoder message friendlierLuca Barbato2016-02-09
|
* flacenc: Load default prediction_order parameters if none is selectedMichael Niedermayer2016-02-08
| | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* v210: Use separate sample_factorsLuca Barbato2016-02-01
| | | | | | | The 10bit and the 8bit functions can now be implemented to process a different amount of samples. And while at it simplify a little the code.
* v210: Add avx2 version of the 10-bit line encoderJames Darnley2016-02-01
| | | | | | Around 25% faster than the ssse3 version. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* v210: Add avx2 version of the 8-bit line encoderJames Darnley2016-02-01
| | | | | | | Around 35% faster than the avx version. Signed-off-by: Henrik Gramner <henrik@gramner.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* flacenc: Restore defaults and range for {min, max}_prediction_orderDerek Buitenhuis2016-02-01
| | | | | | This was broken in 243df1351d2d928caa084a5704ed783f0b83f072. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* libx264: Make sure to preserve default option valuesVittorio Giovara2016-02-01
| | | | | | | | The private options chromaoffset, sc_threshold, and noise_reduction were set to 0 rather than -1, and were always initializing values in libx264 rather than letting the library use its default. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* v210: x86: Add the correct guards around the asm codeLuca Barbato2016-01-26
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* qsvenc: Add private option to replace coder_typeVittorio Giovara2016-01-25
| | | | Missing from be00ec832c519427cd92218abac77dafdc1d5487.
* qsvenc: fix a typoAnton Khirnov2016-01-23
| | | | Introduced in 0e6c8532215790bbe560a9eea4f3cc82bb55cf92.
* x86inc: Add debug symbols indicating sizes of compiled functionsGeza Lore2016-01-23
| | | | | | | | | | | Some debuggers/profilers use this metadata to determine which function a given instruction is in; without it they get can confused by local labels (if you haven't stripped those). On the other hand, some tools are still confused even with this metadata. e.g. this fixes `gdb`, but not `perf`. Currently only implemented for ELF. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* libavcodec: Add missing AVClass pointersMartin Storsjö2016-01-22
| | | | | | This fixes crashes since 243df1351. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavc: Move pre_me to codec private optionsVittorio Giovara2016-01-21
| | | | | | | This option is only used by mpegvideoenc. It is a very codec-specific option, so deprecate the global variant. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move me_penalty_compensation to codec private optionsVittorio Giovara2016-01-21
| | | | | | | This option is only used by mpegvideoenc. It is a very codec-specific options, so deprecate the global variant. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move prediction_method to codec private optionsVittorio Giovara2016-01-21
| | | | | | | | | | This options is only used by huffyuv, ffvhuv, jpegls, mjpeg, mpegvideoenc, png, utvideo. It is a very codec-specific options, so deprecate the global variant. Set proper limits to the maximum allowed values, and update utvideoenc tests to use the new option name. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move {min,max}_prediction_order to codec private optionsVittorio Giovara2016-01-21
| | | | | | | These options are only used by alac and flac. They are very codec-specific options, so deprecate the global variants. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move rtp_payload_size to codec private optionsVittorio Giovara2016-01-21
| | | | | | | | | | This option is only used by mpegvideoenc and openh264. It is a very codec-specific option, so deprecate the global variant. The openh264 option is dropped altogether since it is just a fallback for -max_nal_size anyway. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move timecode_frame_start to codec private optionsVittorio Giovara2016-01-21
| | | | | | | This option is only used by mpeg2. It is a very codec-specific option, so deprecate the global variant. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move context_model to codec private optionsVittorio Giovara2016-01-21
| | | | | | | | This option is only used by ffv1 and ffvhuff. It is a very codec-specific option, so deprecate the global variant. Improve documentation a little. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move mpeg_quant to codec private optionsVittorio Giovara2016-01-21
| | | | | | | This option is only used by mpegvideoenc, and xvid. It is a very codec-specific option, so deprecate the global variant. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move noise_reduction to codec private optionsVittorio Giovara2016-01-21
| | | | | | | This option is only used by mpegvideoenc, x264, xavs, and vpx. It is a very codec-specific option, so deprecate the global variant. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move scenechange_threshold to codec private optionsVittorio Giovara2016-01-21
| | | | | | | This option is only used by mpegvideoenc, x264, and xavs. It is a very codec-specific option, so deprecate the global variant. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move chromaoffset to codec private optionsVittorio Giovara2016-01-21
| | | | | | | This option is only used by x264 and xavs. It is a very codec-specific option, so deprecate the global variant. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move frame_skip_* to codec private optionsVittorio Giovara2016-01-21
| | | | | | | | | | | | | | These options are only used by mpegvideoenc and vpx. They are very codec-specific options, so deprecate the global variants. Add an allowed value to the private options for frame_skip_cmp which seems to have been forgotten, but perfectly working. The libvpx frame dropping feature uses one of such option (frame_skip_threshold) without the other three. For this reason rename the option to something more consistent with the other libvpx variables. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move brd_scale to codec private optionsVittorio Giovara2016-01-21
| | | | | | | | This option is only used by mpegvideoenc, It is a very codec-specific option, so deprecate the global variant. Set proper limits to the maximum allowed values. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Move b_frame_strategy and b_sensitivity to codec private optionsVittorio Giovara2016-01-21
| | | | | | | | | | The b_frame_strategy option is only used by mpegvideoenc, qsv, x264, and xavs, while b_sensitivity is only used by mpegvideoenc. These are very codec-specific options, so deprecate the global variants. Set proper limits to the maximum allowed values. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* riff: add YUYV FourCC (Drastic YUYV)Piotr Bandurski2016-01-21
|
* imgconvert: Add the proper API guards to a deprecated functionVittorio Giovara2016-01-21
|
* imgconvert: Move AVPicture-related static function to the deprecated sectionVittorio Giovara2016-01-21
|
* imgconvert: Move the shrink functions only where neededVittorio Giovara2016-01-21
|
* imgconvert: Drop outdated comment blockVittorio Giovara2016-01-21
|
* 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>
* 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.
* 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>
* 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>
* 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.