Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-07-07libx264: Update ROI behaviour to match documentationMark Thompson
Fix the quantisation offset - use the whole range, and don't change the offset size based on bit depth. Iterate the list in reverse order. The first region in the list is the one that applies in the case of overlapping regions.
2019-05-10lavc/libx264: Use avctx->framerate first for frame rate settingJun Zhao
perfer avctx->framerate first than use avctx->time_base when setting the frame rate to encoder. 1/time_base is not the average frame rate if the frame rate is not constant. In this case, we need to setting avctx->framerate and avctx->time_base both, but avctx->framerate not equal to 1/(avctx->time_base). Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2019-01-18avcodec/libx264: add support for ROI-based encodingGuo, Yejun
This patch just enables the path from ffmpeg to libx264, the more encoders can be added later. Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2018-11-05libx264: Pass the reordered_opaque field through the encoderMartin Storsjö
libx264 does have a field for opaque data to pass along with frames through the encoder, but it is a pointer, while the libavcodec reordered_opaque field is an int64_t. Therefore, allocate an array within the libx264 wrapper, where reordered_opaque values in flight are stored, and pass a pointer to this array to libx264. Update the public libavcodec documentation for the AVCodecContext field to explain this usage, and add a codec capability that allows detecting whether an encoder handles this field. Signed-off-by: Martin Storsjö <martin@martin.st>
2018-10-25avcodec/libx264: remove FF_CODEC_CAP_INIT_THREADSAFE flagMarton Balint
Libx264 uses strtok which is not thread safe. Strtok is used in x264_param_default_preset in param_apply_tune in x264/common/base.c. Therefore the flag must be removed. x264 fixed the issue, once the fix is pushed to stable, an #if can be added to re-enable the flag based on X264_BUILD number. Fixes ticket #7446. Signed-off-by: Marton Balint <cus@passwd.hu>
2018-08-07lavc/libx264: Support monochrome encoding.Carl Eugen Hoyos
2017-12-28Merge commit 'c6558e8840fbb2386bf8742e4d68dd6e067d262e'James Almer
* commit 'c6558e8840fbb2386bf8742e4d68dd6e067d262e': x264: Support version 153 See 2a111c99a60fdf4fe5eea2b073901630190c6c93 7e60c74329353db28db00552028bc88cd2a52346 Merged-by: James Almer <jamrial@gmail.com>
2017-12-27x264: Support version 153Luca Barbato
It has native simultaneus 8 and 10 bit support.
2017-12-27avcodec/libx264: set supported pix_fmts at runtime rather than build timeJames Almer
This partially reverts a change in behavior introduced in 2a111c99a60fdf4fe5eea2b073901630190c6c93. Signed-off-by: James Almer <jamrial@gmail.com>
2017-12-26avcodec/libx264: fix compilation with x264 builds >= 153James Almer
x264 now supports multibitdepth builds, with a slightly changed API to request bitdepth during initialization. Reviewed-by: Ricardo Constantino <wiiaboo@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2017-12-26avcodec/libx264: use the pixfmt descriptor to check for high bit depthsJames Almer
The x264_bit_depth constant has been removed in newer x264 builds. Signed-off-by: James Almer <jamrial@gmail.com>
2017-12-14avcodec: add metadata to identify wrappers and hardware decoderswm4
Explicitly identify decoder/encoder wrappers with a common name. This saves API users from guessing by the name suffix. For example, they don't have to guess that "h264_qsv" is the h264 QSV implementation, and instead they can just check the AVCodec .codec and .wrapper_name fields. Explicitly mark AVCodec entries that are hardware decoders or most likely hardware decoders with new AV_CODEC_CAPs. The purpose is allowing API users listing hardware decoders in a more generic way. The proposed AVCodecHWConfig does not provide this information fully, because it's concerned with decoder configuration, not information about the fact whether the hardware is used or not. AV_CODEC_CAP_HYBRID exists specifically for QSV, which can have software implementations in case the hardware is not capable. Based on a patch by Philip Langdale <philipl@overt.org>. Merges Libav commit 47687a2f8aca3f65b6fdd117b1cb66a7409a7fd1.
2017-12-14avcodec: add metadata to identify wrappers and hardware decoderswm4
Explicitly identify decoder/encoder wrappers with a common name. This saves API users from guessing by the name suffix. For example, they don't have to guess that "h264_qsv" is the h264 QSV implementation, and instead they can just check the AVCodec .codec and .wrapper_name fields. Explicitly mark AVCodec entries that are hardware decoders or most likely hardware decoders with new AV_CODEC_CAPs. The purpose is allowing API users listing hardware decoders in a more generic way. The proposed AVCodecHWConfig does not provide this information fully, because it's concerned with decoder configuration, not information about the fact whether the hardware is used or not. AV_CODEC_CAP_HYBRID exists specifically for QSV, which can have software implementations in case the hardware is not capable. Based on a patch by Philip Langdale <philipl@overt.org>. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2017-10-23Merge commit '94eed68ace9f2416af8457fcbf142b175928c06b'James Almer
* commit '94eed68ace9f2416af8457fcbf142b175928c06b': lavc: Drop deprecated options moved to private contexts Merged-by: James Almer <jamrial@gmail.com>
2017-10-23avcodec/libx264: add me_method alias to set X264Context->motion_estJames Almer
Replaces the now dropped global option. Addresses ticket #6771. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-23lavc: Drop deprecated options moved to private contextsVittorio Giovara
Deprecated in 10/2014 and 07/2015.
2016-11-22avcodec/libx264: fix forced_idr logicTimo Rothenpieler
Currently, it forces IDR frames for both true and false. Not entirely sure what the original idea behind the tri-state bool option is. Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-09-14lavc: Enable a53cc by default for x264 and qsv_h264.Carl Eugen Hoyos
2016-07-22libx264: Increase x264 opts character limit to 4096Sasi Inguva
Signed-off-by: Sasi Inguva <isasi@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-23avcodec/libx264: Remove unused variableMichael Niedermayer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-19libavcodec: factor out SEI generation for A53 captionsAndrey Turkin
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-05Seperate x264rgb encoder and only enable when its actually supportedMichael Niedermayer
This avoids enabling and building the x264rgb encoder when its actually not supported and thus would not work Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-12Merge commit '5fca95c8e515a5ae542d9626ec088bdfc658450e'Derek Buitenhuis
* commit '5fca95c8e515a5ae542d9626ec088bdfc658450e': libx264: Forbid inverted Stereo3D mode Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-12Merge commit '9e2af0e9071a1229cfe21efff394691d91f979b2'Derek Buitenhuis
* commit '9e2af0e9071a1229cfe21efff394691d91f979b2': libx264: Allow Stereo3D monoscopic value Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-21libx264: Forbid inverted Stereo3D modeVittorio Giovara
2016-04-21libx264: Allow Stereo3D monoscopic valueVittorio Giovara
2016-02-23libx264: Fix noise_reduction option assignmentVittorio Giovara
First check the context, then check internal option. Drop the ! typo. Introduced in 60f0fde3092d18d4d36555962c192af8691a099c.
2016-02-01libx264: Make sure to preserve default option valuesVittorio Giovara
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>
2016-01-31Merge commit '936f0d98f864f9f6bb4f9e5458b78537e146bacd'Derek Buitenhuis
* commit '936f0d98f864f9f6bb4f9e5458b78537e146bacd': lavc: Move rtp_payload_size to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-01-28libx264: Make sure to preserve default option valuesVittorio Giovara
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>
2016-01-28avcodec/libx264: Fix sc_threshold after 30c1bdb87ce336f2b9957769e30a10d72f93d372Michael Niedermayer
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>
2016-01-28Merge commit '1482aff2048511b821ff9feac19426113cc641a2'Derek Buitenhuis
* commit '1482aff2048511b821ff9feac19426113cc641a2': lavc: Move noise_reduction to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-01-28Merge commit '7c79587d7407dab4b9445d66b5f111fe657c8c4d'Derek Buitenhuis
* commit '7c79587d7407dab4b9445d66b5f111fe657c8c4d': lavc: Move scenechange_threshold to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-01-28Merge commit '5764d38173661c29d954711dd5abfddf709e9ba4'Derek Buitenhuis
* commit '5764d38173661c29d954711dd5abfddf709e9ba4': lavc: Move chromaoffset to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-01-27Merge commit '0e6c8532215790bbe560a9eea4f3cc82bb55cf92'Derek Buitenhuis
* commit '0e6c8532215790bbe560a9eea4f3cc82bb55cf92' lavc: Move b_frame_strategy and b_sensitivity to codec private options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-01-27avutil: Rename FF_CEIL_COMPAT to AV_CEIL_COMPATDerek Buitenhuis
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>
2016-01-21lavc: Move noise_reduction to codec private optionsVittorio Giovara
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>
2016-01-21lavc: Move scenechange_threshold to codec private optionsVittorio Giovara
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>
2016-01-21lavc: Move chromaoffset to codec private optionsVittorio Giovara
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>
2016-01-21lavc: Move b_frame_strategy and b_sensitivity to codec private optionsVittorio Giovara
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>
2016-01-10lavc/x264: Add compatibility values for coder options.Carl Eugen Hoyos
Fixes ticket #5142.
2015-12-18Merge commit 'be00ec832c519427cd92218abac77dafdc1d5487'Hendrik Leppkes
* commit 'be00ec832c519427cd92218abac77dafdc1d5487': lavc: Deprecate coder_type and its symbols Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-12-17Merge commit '732a37d1466d45b3812509d68c82e783530e291a'Hendrik Leppkes
* commit '732a37d1466d45b3812509d68c82e783530e291a': libx264: export CPB props side data Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-12-07lavc: Deprecate coder_type and its symbolsVittorio Giovara
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>
2015-12-06libx264: export CPB props side dataAnton Khirnov
2015-12-04avcodec: use AV_OPT_TYPE_BOOL in a bunch of placesClément Bœsch
2015-10-27Merge commit '1ec72c6c68dbc78bf4ebb6f06c13316dc488bdfa'Hendrik Leppkes
* commit '1ec72c6c68dbc78bf4ebb6f06c13316dc488bdfa': libx264: Make sure the extradata are padded Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-10-23libx264: Make sure the extradata are paddedLuca Barbato
2015-10-15lavc: AV-prefix a few left out capabilitiesVittorio Giovara
2015-10-07avcodec/libx264: silence -WaddressGanesh Ajjanagadde
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>