summaryrefslogtreecommitdiffstats
path: root/libavcodec/libx264.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit '936f0d98f864f9f6bb4f9e5458b78537e146bacd'Derek Buitenhuis2016-01-311-10/+0
|\ | | | | | | | | | | | | * commit '936f0d98f864f9f6bb4f9e5458b78537e146bacd': lavc: Move rtp_payload_size to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | libx264: Make sure to preserve default option valuesVittorio Giovara2016-01-281-6/+5
| | | | | | | | | | | | | | | | 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: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/libx264: Fix sc_threshold after 30c1bdb87ce336f2b9957769e30a10d72f93d372Michael Niedermayer2016-01-281-4/+4
| | | | | | | | | | | | | | | | | | After the merge the default threshold was unconditionally overwritten A similar fix was written by Vittorio Giovara, but i didnt see that before i wrote this and it also doesnt apply cleanly Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '1482aff2048511b821ff9feac19426113cc641a2'Derek Buitenhuis2016-01-281-1/+11
|\ \ | |/ | | | | | | | | | | * commit '1482aff2048511b821ff9feac19426113cc641a2': lavc: Move noise_reduction to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * lavc: Move noise_reduction to codec private optionsVittorio Giovara2016-01-211-2/+11
| | | | | | | | | | | | | | 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>
* | Merge commit '7c79587d7407dab4b9445d66b5f111fe657c8c4d'Derek Buitenhuis2016-01-281-2/+14
|\ \ | |/ | | | | | | | | | | * commit '7c79587d7407dab4b9445d66b5f111fe657c8c4d': lavc: Move scenechange_threshold to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * lavc: Move scenechange_threshold to codec private optionsVittorio Giovara2016-01-211-2/+14
| | | | | | | | | | | | | | 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>
* | Merge commit '5764d38173661c29d954711dd5abfddf709e9ba4'Derek Buitenhuis2016-01-281-1/+11
|\ \ | |/ | | | | | | | | | | * commit '5764d38173661c29d954711dd5abfddf709e9ba4': lavc: Move chromaoffset to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * lavc: Move chromaoffset to codec private optionsVittorio Giovara2016-01-211-1/+11
| | | | | | | | | | | | | | 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>
* | Merge commit '0e6c8532215790bbe560a9eea4f3cc82bb55cf92'Derek Buitenhuis2016-01-271-1/+12
|\ \ | |/ | | | | | | | | | | * commit '0e6c8532215790bbe560a9eea4f3cc82bb55cf92' lavc: Move b_frame_strategy and b_sensitivity to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * lavc: Move b_frame_strategy and b_sensitivity to codec private optionsVittorio Giovara2016-01-211-1/+12
| | | | | | | | | | | | | | | | | | | | 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>
* | avutil: Rename FF_CEIL_COMPAT to AV_CEIL_COMPATDerek Buitenhuis2016-01-271-1/+1
| | | | | | | | | | | | | | | | | | | | Libav, for some reason, merged this as a public API function. This will aid in future merges. A define is left for backwards compat, just in case some person used it, since it is in a public header. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | lavc/x264: Add compatibility values for coder options.Carl Eugen Hoyos2016-01-101-0/+2
| | | | | | | | Fixes ticket #5142.
* | Merge commit 'be00ec832c519427cd92218abac77dafdc1d5487'Hendrik Leppkes2015-12-181-1/+17
|\ \ | |/ | | | | | | | | | | * commit 'be00ec832c519427cd92218abac77dafdc1d5487': lavc: Deprecate coder_type and its symbols Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * lavc: Deprecate coder_type and its symbolsVittorio Giovara2015-12-071-1/+17
| | | | | | | | | | | | | | | | | | | | Most option values are simply unused or ignored and in practice the majory of codecs only need to check whether to enable rle or not. Add appropriate codec private options which better expose the allowed features. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit '732a37d1466d45b3812509d68c82e783530e291a'Hendrik Leppkes2015-12-171-0/+8
|\ \ | |/ | | | | | | | | | | * commit '732a37d1466d45b3812509d68c82e783530e291a': libx264: export CPB props side data Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * libx264: export CPB props side dataAnton Khirnov2015-12-061-0/+8
| |
* | avcodec: use AV_OPT_TYPE_BOOL in a bunch of placesClément Bœsch2015-12-041-11/+11
| |
* | Merge commit '1ec72c6c68dbc78bf4ebb6f06c13316dc488bdfa'Hendrik Leppkes2015-10-271-1/+1
|\ \ | |/ | | | | | | | | | | * commit '1ec72c6c68dbc78bf4ebb6f06c13316dc488bdfa': libx264: Make sure the extradata are padded Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * libx264: Make sure the extradata are paddedLuca Barbato2015-10-231-1/+1
| |
| * lavc: AV-prefix a few left out capabilitiesVittorio Giovara2015-10-151-1/+1
| |
* | avcodec/libx264: silence -WaddressGanesh Ajjanagadde2015-10-071-3/+3
| | | | | | | | | | | | | | | | | | | | This patch moves the pointer validity check outside the macro, and silences the -Waddress observed with GCC 5.2. Note that this changes the error message slightly, from: "bad option..." to "Error parsing option...". Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* | libx264: copy A53 closed captions from sourceDeHackEd2015-10-031-0/+45
| | | | | | | | | | | | | | | | Assumes 'GA94' format (ATSC standard) Signed-off-by: DHE <git@dehacked.net> Tested-by: Anshul <anshul.ffmpeg@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '380146924ecad2e05e9dcc5c3c2e1b5ba47c51e8'Hendrik Leppkes2015-10-031-6/+15
|\ \ | |/ | | | | | | | | | | * commit '380146924ecad2e05e9dcc5c3c2e1b5ba47c51e8': x264: Add option to force IDR frames Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * x264: Add option to force IDR framesDerek Buitenhuis2015-10-011-5/+18
| | | | | | | | | | | | | | When forwarding the frame type information, by default x264 can decide which kind of keyframe output, add an option to force it to output IDR frames in to support use-cases such as preparing the content for segmented streams formats.
| * x264: Expose the NV21 input supportYu Xiaolei2015-10-011-0/+6
| | | | | | | | | | | | | | | | | | x264 build 147 adds the native support for NV21. Useful to avoid additional pixel format conversion when encoding from a wide range of capture devices, Android among those. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | avcodec/libx264: use AV_OPT_TYPE_BOOL for fastfirstpass optionClément Bœsch2015-09-121-1/+1
| |
* | libx264: Add option to force IDR framesDerek Buitenhuis2015-08-181-1/+4
| | | | | | | | | | | | | | | | | | Currently, when forcing an I frame, via API, or via the ffmpeg cli, using -force_key_frames, we still let x264 decide what sort of keyframe to user. In some cases, it is useful to be able to force an IDR frame, e.g. for cutting streams. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | avcodec/libx264: expose nv21 input supportYu Xiaolei2015-08-011-0/+6
| | | | | | | | | | | | libx264 added support for NV21 input recently. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'def97856de6021965db86c25a732d78689bd6bb0'Michael Niedermayer2015-07-271-3/+3
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'def97856de6021965db86c25a732d78689bd6bb0': lavc: AV-prefix all codec capabilities Conflicts: cmdutils.c ffmpeg.c ffplay.c libavcodec/8svx.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/adpcm.c libavcodec/alac.c libavcodec/atrac3plusdec.c libavcodec/bink.c libavcodec/dnxhddec.c libavcodec/dvdec.c libavcodec/dvenc.c libavcodec/ffv1dec.c libavcodec/ffv1enc.c libavcodec/fic.c libavcodec/flacdec.c libavcodec/flacenc.c libavcodec/flvdec.c libavcodec/fraps.c libavcodec/frwu.c libavcodec/gifdec.c libavcodec/h261dec.c libavcodec/hevc.c libavcodec/iff.c libavcodec/imc.c libavcodec/libopenjpegdec.c libavcodec/libvo-aacenc.c libavcodec/libvorbisenc.c libavcodec/libvpxdec.c libavcodec/libvpxenc.c libavcodec/libx264.c libavcodec/mjpegbdec.c libavcodec/mjpegdec.c libavcodec/mpegaudiodec_float.c libavcodec/msmpeg4dec.c libavcodec/mxpegdec.c libavcodec/nvenc_h264.c libavcodec/nvenc_hevc.c libavcodec/pngdec.c libavcodec/qpeg.c libavcodec/ra288.c libavcodec/rv10.c libavcodec/s302m.c libavcodec/sp5xdec.c libavcodec/takdec.c libavcodec/tiff.c libavcodec/tta.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/vp6.c libavcodec/vp9.c libavcodec/wavpack.c libavcodec/yop.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * lavc: AV-prefix all codec capabilitiesVittorio Giovara2015-07-271-1/+1
| | | | | | | | | | | | Express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'Michael Niedermayer2015-07-271-8/+8
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615': lavc: AV-prefix all codec flags Conflicts: doc/examples/muxing.c ffmpeg.c ffmpeg_opt.c ffplay.c libavcodec/aacdec.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/ac3enc_float.c libavcodec/atrac1.c libavcodec/atrac3.c libavcodec/atrac3plusdec.c libavcodec/dcadec.c libavcodec/ffv1enc.c libavcodec/h264.c libavcodec/h264_loopfilter.c libavcodec/h264_mb.c libavcodec/imc.c libavcodec/libmp3lame.c libavcodec/libtheoraenc.c libavcodec/libtwolame.c libavcodec/libvpxenc.c libavcodec/libxavs.c libavcodec/libxvid.c libavcodec/mpeg12dec.c libavcodec/mpeg12enc.c libavcodec/mpegaudiodec_template.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_motion.c libavcodec/nellymoserdec.c libavcodec/nellymoserenc.c libavcodec/nvenc.c libavcodec/on2avc.c libavcodec/options_table.h libavcodec/opus_celt.c libavcodec/pngenc.c libavcodec/ra288.c libavcodec/ratecontrol.c libavcodec/twinvq.c libavcodec/vc1_block.c libavcodec/vc1_loopfilter.c libavcodec/vc1_mc.c libavcodec/vc1dec.c libavcodec/vorbisdec.c libavcodec/vp3.c libavcodec/wma.c libavcodec/wmaprodec.c libavcodec/x86/hpeldsp_init.c libavcodec/x86/me_cmp_init.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * lavc: AV-prefix all codec flagsVittorio Giovara2015-07-271-8/+8
| | | | | | | | | | | | Convert doxygen to multiline and express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit '4b6b1082a73907c7c3de2646c6398bc61320f2c6'Michael Niedermayer2015-07-271-11/+28
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '4b6b1082a73907c7c3de2646c6398bc61320f2c6': lavc: Deprecate avctx.me_method Conflicts: doc/encoders.texi libavcodec/avcodec.h libavcodec/libx264.c libavcodec/motion_est.c libavcodec/options_table.h libavcodec/version.h Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * lavc: Deprecate avctx.me_methodVittorio Giovara2015-07-271-11/+28
| | | | | | | | | | | | | | | | 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>
* | avcodec: Add a min size parameter to ff_alloc_packet2()Michael Niedermayer2015-07-271-1/+1
| | | | | | | | | | | | | | | | This parameter can be used to inform the allocation code about how much downsizing might occur, and can be used to optimize how to allocate the packet Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/libx264: Export choosen pict_typeMichael Niedermayer2015-07-221-6/+11
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Replace AV_PKT_DATA_QUALITY_FACTOR by AV_PKT_DATA_QUALITY_STATSMichael Niedermayer2015-07-221-5/+1
| | | | | | | | | | | | | | | | | | The stats are a superset of the quality factor, also allowing the picture type and encoder "PSNR" stats to be exported This also replaces the native by fixed little endian order for the affected side data AV_PKT_DATA_QUALITY_FACTOR is left as a synonym of AV_PKT_DATA_QUALITY_STATS Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370'Michael Niedermayer2015-07-211-0/+8
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370': Deprecate avctx.coded_frame Conflicts: ffmpeg.c libavcodec/a64multienc.c libavcodec/asvenc.c libavcodec/cljrenc.c libavcodec/dpxenc.c libavcodec/gif.c libavcodec/mpegvideo_enc.c libavcodec/nvenc.c libavcodec/proresenc_kostya.c libavcodec/pthread_frame.c libavcodec/rawenc.c libavcodec/sunrastenc.c libavcodec/tiffenc.c libavcodec/version.h libavcodec/xbmenc.c libavcodec/xwdenc.c libavdevice/v4l2.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * Deprecate avctx.coded_frameVittorio Giovara2015-07-201-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge commit '5d3addb937946eca5391e40b5e6308e74ac6f77b'Michael Niedermayer2015-07-211-1/+8
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | * commit '5d3addb937946eca5391e40b5e6308e74ac6f77b': Add a quality factor packet side data Conflicts: doc/APIchanges ffmpeg.c libavcodec/avcodec.h libavcodec/mpegvideo_enc.c libavcodec/version.h Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * Add a quality factor packet side dataVittorio Giovara2015-07-201-1/+8
| | | | | | | | | | | | | | | | 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>
* | Merge commit 'd6604b29ef544793479d7fb4e05ef6622bb3e534'Michael Niedermayer2015-07-201-6/+0
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'd6604b29ef544793479d7fb4e05ef6622bb3e534': Gather all coded_frame allocations and free functions to a single place Conflicts: libavcodec/a64multienc.c libavcodec/asvenc.c libavcodec/cljrenc.c libavcodec/dpxenc.c libavcodec/dvenc.c libavcodec/gif.c libavcodec/huffyuvenc.c libavcodec/jpeglsenc.c libavcodec/libopenjpegenc.c libavcodec/libtheoraenc.c libavcodec/libvpxenc.c libavcodec/mpegvideo_enc.c libavcodec/nvenc.c libavcodec/pngenc.c libavcodec/proresenc_kostya.c libavcodec/sunrastenc.c libavcodec/tiffenc.c libavcodec/utils.c libavcodec/utvideoenc.c libavcodec/v210enc.c libavcodec/v410enc.c libavcodec/xbmenc.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * Gather all coded_frame allocations and free functions to a single placeVittorio Giovara2015-07-201-6/+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>
* | avcodec/libx264: fix MPEG2 supportMichael Niedermayer2015-07-171-2/+1
| | | | | | | | | | Found-by: rcombs Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'e1319aa1c1be9b64117c19170344fb78841dd67c'Michael Niedermayer2015-07-171-14/+49
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * commit 'e1319aa1c1be9b64117c19170344fb78841dd67c': libx264: Add support for the MPEG2 encoder Conflicts: configure libavcodec/Makefile libavcodec/libx264.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * libx264: Add support for the MPEG2 encoderLuca Barbato2015-07-171-7/+42
| |
* | avcodec/libx264: Avoid reconfig on equivalent aspect ratiosMichael Niedermayer2015-06-181-2/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '03ca6d70df192125a772dadd01acfe3905aa653f'Michael Niedermayer2015-06-151-81/+90
|\ \ | |/ | | | | | | | | | | | | | | | | * commit '03ca6d70df192125a772dadd01acfe3905aa653f': x264: Factor out the reconfiguration code Conflicts: libavcodec/libx264.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x264: Factor out the reconfiguration codeLuca Barbato2015-06-151-78/+86
| |
OpenPOWER on IntegriCloud