summaryrefslogtreecommitdiffstats
path: root/libavcodec/libxvid.c
Commit message (Collapse)AuthorAgeFilesLines
* cosmetics: Fix spelling mistakesVittorio Giovara2016-05-041-4/+4
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* libxvid: Create extradata in init using a dummy frameDerek Buitenhuis2016-04-191-0/+41
| | | | | | | | | | | Modifying global header extradata in encode_frame is an API violation and only happens to work currently because mov writes its header at the end of the file. Heavily based off of a patch from 2012 by Nicolas George. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavc: Move mpeg_quant to codec private optionsVittorio Giovara2016-01-211-0/+10
| | | | | | | 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: Add missing mem.h header to libxvid and screenpressoVittorio Giovara2015-11-121-0/+1
|
* avpacket: Replace av_free_packet with av_packet_unrefLuca Barbato2015-10-261-1/+1
| | | | | | | `av_packet_unref` matches the AVFrame ref-counted API and can be used as a drop in replacement. Deprecate `av_free_packet`.
* mpegvideo: Drop mpegvideo.h where not neededVittorio Giovara2015-09-131-1/+4
| | | | Add necessary headers in .c files.
* mpegvideo: Make sure mpegutils.h is included where neededVittorio Giovara2015-09-131-0/+1
|
* lavc: Consistently prefix input buffer definesVittorio Giovara2015-07-271-1/+1
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: AV-prefix all codec flagsVittorio Giovara2015-07-271-10/+10
| | | | | | Convert doxygen to multiline and express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Deprecate avctx.me_methodVittorio Giovara2015-07-271-11/+32
| | | | | | | | This option is extremely codec specific and only a few codecs employ it. Move it to codec private options instead: mpegenc family supports only 3 values, xavs and x264 use 5, and xvid has a different metric entirely. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* Deprecate avctx.coded_frameVittorio Giovara2015-07-201-0/+12
| | | | | | | | | | | | | | | | | The rationale is that coded_frame was only used to communicate key_frame, pict_type and quality to the caller, as well as a few other random fields, in a non predictable, let alone consistent way. There was agreement that there was no use case for coded_frame, as it is a full-sized AVFrame container used for just 2-3 int-sized properties, which shouldn't even belong into the AVCodecContext in the first place. The appropriate AVPacket flag can be used instead of key_frame, while quality is exported with the new AVPacketSideData quality factor. There is no replacement for the other fields as they were unreliable, mishandled or just not used at all. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* Add a quality factor packet side dataVittorio Giovara2015-07-201-0/+6
| | | | | | | | This is necessary to preserve the quality information currently exported with coded_frame. Add the new side data to every encoder that needs it, and use it in avconv. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* Gather all coded_frame allocations and free functions to a single placeVittorio Giovara2015-07-201-4/+0
| | | | | | | | | | | | | | Allocating coded_frame is what most encoders do anyway, so it makes sense to always allocate and free it in a single place. Moreover a lot of encoders freed the frame with av_freep() instead of the correct API av_frame_free(). This bring uniformity to encoder behaviour and prevents applications from erroneusly accessing this field when not allocated. Additionally this helps isolating encoders that export information with coded_frame, and heavily simplifies its deprecation. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* libxvid: Do not entangle coded_frameVittorio Giovara2015-07-201-9/+9
|
* xvid: Check memory allocationVittorio Giovara2015-05-311-0/+6
|
* libxvid: Make codec use the init-cleanup flag and mark it as init-thread-safeVittorio Giovara2015-04-241-1/+8
| | | | This takes care of memory leaks on init error.
* libxvid: Return meaningful error messagesHimangi Saraogi2015-02-171-6/+6
|
* libxvid: K&R formatting cosmeticsGabriel Dume2014-08-261-244/+253
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* cosmetics: Write NULL pointer inequality checks more compactlyGabriel Dume2014-08-151-2/+2
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* cosmetics: Write NULL pointer equality checks more compactlyGabriel Dume2014-08-151-5/+5
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* libxvid: Drop PPC-specific CPU detection hackDiego Biurrun2014-07-221-12/+0
| | | | It is doubtful if the hack (still) works and Xvid had ten years to fix it.
* lavc: make the xvid-specific "gmc" flag a private option of libxvidAnton Khirnov2014-05-011-1/+8
|
* libxvid: fix missing end of line characterVittorio Giovara2014-04-071-1/+1
| | | | Error introduced in 5ce7ca68b86856ee8e9d6530dffdadc4eca4f8d1.
* libxvid: Add SSIM displaying through a libxvidcore pluginTimothy Gu2014-04-061-0/+19
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* libxvid: add working lumimasking and variance AQTimothy Gu2014-04-061-2/+45
| | | | | | | The old implementation is unusable due to changes in the Xvid API. Further fixes by Michael Niedermayer <michaelni@gmx.at>. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* libxvid: use the AVFrame API properly.Anton Khirnov2013-11-161-4/+4
|
* cosmetics: Group .name and .long_name together in codec/format declarationsDiego Biurrun2013-10-031-1/+1
|
* libxvid: remove useless doxy comments.Anton Khirnov2012-10-221-27/+0
|
* Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormatAnton Khirnov2012-10-081-2/+2
|
* Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-071-2/+2
|
* libxvid: Give more suitable names to libxvid-related files.Diego Biurrun2012-05-091-0/+788
OpenPOWER on IntegriCloud