summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
* avcodec/h264: add named parameters to x86 functionJames Darnley2017-02-18
|
* avcodec/x86: deduplicate PASS8ROWS macroJames Darnley2017-02-18
|
* avcodec/cuvid: add drop_second_field as input optionMiroslav Slugeň2017-02-18
| | | | Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avcodec/cuvid: don't overwrite deinterlace at progressive inputMiroslav Slugeň2017-02-18
| | | | | | | If there is progressive input it will disable deinterlacing in cuvid for all future frames even those interlaced. Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* opusenc: initialize the emphasis coefficients on initRostislav Pehlivanov2017-02-18
| | | | Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* avcodec/opus: Check count of ambisonic channelsMichael Niedermayer2017-02-17
| | | | | | | https://tools.ietf.org/html/draft-ietf-codec-ambisonics-01#section-3.1 specifies the maximum as 227 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libopus: decode ambisonics with non-diegetic sourcesFelicia2017-02-17
| | | | | | | | | | | Channel mapping 2 additionally supports a non-diegetic stereo track appended to the end of a full-order ambisonics signal, such that the total channel count is either (n + 1) ^ 2, or (n + 1) ^ 2 + 2 where n is the ambisonics order Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/fmvc: fix decoding of odd size videosPaul B Mahol2017-02-17
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavc/avpacket: Initialize a variable in error path.Carl Eugen Hoyos2017-02-17
| | | | | | Fixes ticket #6153. Tested-by: Tyson Smith
* wmaprodec: fix leaking fdsp on init failureAndreas Cadhalpun2017-02-17
| | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* mpegaudiodec_template: fix leaking fdsp for mp3on4floatAndreas Cadhalpun2017-02-17
| | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* vaapi_vp8: Use VP8_MAX_QUANT instead of magic numberMark Thompson2017-02-17
|
* avcodec/opusenc: Add () protecting macro argumentsMichael Niedermayer2017-02-16
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/error_resilience: Fix "assignment from incompatible pointer type" ↵Michael Niedermayer2017-02-16
| | | | | | warning Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavc/vda_h264_dec.c Fix NULL pointer dereferencePavel Koshevoy2017-02-16
| | | | | | ps.sps_list entries may be NULL, so check before dereferencing Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* opusenc: fix coarse energy quantization with 2 bits leftRostislav Pehlivanov2017-02-15
| | | | | | Fixes CID1400584 Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* opus_pvq: fix uninitialized variable usageRostislav Pehlivanov2017-02-15
| | | | | | Fixes CID1400586 Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* adpcm: fix clipping for yamahaPaul B Mahol2017-02-15
| | | | | | | According to specification max value allowed is 0x6000. Fixes #5862. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/h264_sei: Check actual presence of SEI picture timing instead of ↵Michael Niedermayer2017-02-15
| | | | | | implying it Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/hevc_parser: export framerate, remove one dependency on the decoderMichael Niedermayer2017-02-14
| | | | | | Fixes Ticket6090 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/cuvid: add format mismatch debug logsTimo Rothenpieler2017-02-14
|
* avcodec/cuvid: set width and height before calling get_formatTimo Rothenpieler2017-02-14
| | | | | The external hw_frames_ctx is initialized in that callback, and needs that information to be accurate.
* avcodec/cuvid: update hw_frames_ctx reference after get_format callTimo Rothenpieler2017-02-14
|
* avcodec/nvenc: push cuda context before encoding a frameTimo Rothenpieler2017-02-14
| | | | Thanks to Miroslav Slugeň for figuring out what was going on here.
* opus: add a native Opus encoderRostislav Pehlivanov2017-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This marks the first time anyone has written an Opus encoder without using any libopus code. The aim of the encoder is to prove how far the format can go by writing the craziest encoder for it. Right now the encoder's basic, it only supports CBR encoding, however internally every single feature the CELT layer has is implemented (except the pitch pre-filter which needs to work well with the rest of whatever gets implemented). Psychoacoustic and rate control systems are under development. The encoder takes in frames of 120 samples and depending on the value of opus_delay the plan is to use the extra buffered frames as lookahead. Right now the encoder will pick the nearest largest legal frame size and won't use the lookahead, but that'll change once there's a psychoacoustic system. Even though its a pretty basic encoder its already outperforming any other native encoder FFmpeg has by a huge amount. The PVQ search algorithm is faster and more accurate than libopus's algorithm so the encoder's performance is close to that of libopus at zero complexity (libopus has more SIMD). The algorithm might be ported to libopus or other codecs using PVQ in the future. The encoder still has a few minor bugs, like desyncs at ultra low bitrates (below 9kbps with 20ms frames). Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* opus_celt: rename structures to better names and reorganize themRostislav Pehlivanov2017-02-14
| | | | | | | | | | | | | | | | | | | | This is meant to be applied on top of my previous patch which split PVQ into celt_pvq.c and made opus_celt.h Essentially nothing has been changed other than renaming CeltFrame to CeltBlock (CeltFrame had absolutely nothing at all to do with a frame) and CeltContext to CeltFrame. 3 variables have been put in CeltFrame as they make more sense there rather than being passed around as arguments. The coefficients have been moved to the CeltBlock structure (why the hell were they in CeltContext and not in CeltFrame??). Now the encoder would be able to use the exact context the decoder uses (plus a couple of extra fields in there). FATE passes, no slowdowns, etc. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* opus_celt: move quantization and band decoding to opus_pvq.cRostislav Pehlivanov2017-02-14
| | | | | | | | | | | | | | A huge amount can be reused by the encoder, as the only thing which needs to be done would be to add a 10 line celt_icwrsi, a wrapper around it (celt_alg_quant) and templating the ff_celt_decode_band to replace entropy decoding functions with entropy encoding. There is no performance loss but in fact a performance gain of around 6% which is caused by the compiler being able to optimize the decoding more efficiently. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* imdct15: rename to mdct15 and add a forward transformRostislav Pehlivanov2017-02-14
| | | | | | | Handles strides (needed for Opus transients), does pre-reindexing and folding without needing a copy. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* opus_rc: add entropy encoding functionsRostislav Pehlivanov2017-02-14
| | | | | | | Mostly used the RFC document, the decoding functions and the reference encoder's implmenentation as a reference. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* lavc: Add device context field to AVCodecContextMark Thompson2017-02-13
| | | | For use by codec implementations which can allocate frames internally.
* aac_latm: Align inband PCE to the start of the payloadAlex Converse2017-02-13
| | | | | | | | | | | A strict reading of the spec seems to imply that it should be aligned to the start of the element instance tag, but that would break all of the samples with PCEs. It seems like a well formed LATM stream should have its PCE in the ASC rather than inband. Fixes ticket 4544
* aacsbr: Associate SBR data with AAC elements on initAlex Converse2017-02-13
| | | | | | Quiets some log spam on pure upsampling mode. Fixes ticket 5163.
* aac_latm: Copy whole AudioSpecificConfig when it is sized.Alex Converse2017-02-13
| | | | This preserves sync extensions.
* aac_latm: Allow unaligned AudioSpecificConfigAlex Converse2017-02-13
| | | | Fixes ticket 4730
* avcodec/nvenc: set frame buffer format for mapped framesTimo Rothenpieler2017-02-13
|
* lavc/libzvbi: remove deprecated API usageJosh de Kock2017-02-12
| | | | | Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Josh de Kock <josh@itanimul.li>
* avcodec/iff: support for byterun1 ACBM compressionPaul B Mahol2017-02-12
| | | | | | This is apparently same as no compression. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec: add FM Screen Capture Codec decoderPaul B Mahol2017-02-12
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/flicvideo: add support for 24bit flic filesPaul B Mahol2017-02-11
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/flicvideo: fix some indentation issuesPaul B Mahol2017-02-11
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavc/atrac3: Constify a pointer declaration.Carl Eugen Hoyos2017-02-11
| | | | Silences an "assignment discards ‘const’ qualifier" warning.
* avcodec: add ATRAC Advanced Lossless decodersPaul B Mahol2017-02-11
| | | | | | Only lossy part is decoded for now. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/qdmc: silence gcc 6.2.0 warningPaul B Mahol2017-02-10
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavc/mjpegenc_common: Remove an unused variable.Carl Eugen Hoyos2017-02-10
|
* avcodec/mjpegenc: Simplify by moving assert into ff_mjpeg_encode_huffman_close()Michael Niedermayer2017-02-10
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mjpegenc: Bypass the 2 pass encoding when optimal tables are not ↵Michael Niedermayer2017-02-10
| | | | | | | | | | requested This limits the bugs, speedloss and extra memory allocation to the case when optimal tables are needed. Fixes regressions with slice multi-threading Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mjpegenc: Revert some differences in ff_mjpeg_encode_mb() relative ↵Michael Niedermayer2017-02-10
| | | | | | | | to pre optimal huffman The changes are not needed anymore and the return code was never used Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mjpegenc_huffman: remove unneeded header includeMichael Niedermayer2017-02-10
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/tests/mjpegenc_huffman: Remove static in main() tableMichael Niedermayer2017-02-10
| | | | | | Avoids false positives when greping for non constant statics Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mjpegenc: Drop i_tex misuse, set itex/header bits correctly, fix ↵Michael Niedermayer2017-02-10
| | | | | | 2pass encoding Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>