[x265] [PATCH] Fixed some of the wrongly represented cli parameters in the docs related to --colormatrix and --videoformat.
Aruna Matheswaran
aruna at multicorewareinc.com
Tue May 26 11:05:36 CEST 2020
Praveen, The patch isn't applying on the tip. Please rebase on the tip and
resend the patch.
On Mon, May 25, 2020 at 1:12 PM Praveen Kumar Karadugattu <
praveenkumar at multicorewareinc.com> wrote:
> Hi Aruna,
>
> Please find attached the updated patch with the review comments
> incorporated.
>
> Thanks & Regards,
> Praveen
>
> On Mon, May 4, 2020 at 4:56 PM Praveen Kumar Karadugattu <
> praveenkumar at multicorewareinc.com> wrote:
>
>> Hi Aruna,
>>
>> I have incorporated the changes and the updated patch is sent in the
>> previous email in this thread. Please check and push the same.
>>
>> Thanks & Regards,
>> Praveen
>>
>> On Mon, May 4, 2020 at 4:55 PM Praveen Kumar Karadugattu <
>> praveenkumar at multicorewareinc.com> wrote:
>>
>>> From 951411943ed54043c2111f4a09419cbc77e5f0fd Mon Sep 17 00:00:00 2001
>>> From: Praveen Karadugattu <praveenkumar at multicorewareinc.com>
>>> Date: Mon, 4 May 2020 16:50:14 +0530
>>> Subject: [PATCH] Fixed some of the wrongly represented cli parameters in
>>> the
>>> docs related to --colormatrix and --videoformat.
>>> ---
>>> doc/reST/cli.rst | 112
>>> ++++++++++++++++++++++++------------------------
>>> source/CMakeLists.txt | 2 +-
>>> source/common/param.cpp | 12 +++---
>>> source/x265cli.cpp | 12 +++---
>>> 4 files changed, 69 insertions(+), 69 deletions(-)
>>> diff --git a/doc/reST/cli.rst b/doc/reST/cli.rst
>>> index 1e2765d..524714a 100644
>>> --- a/doc/reST/cli.rst
>>> +++ b/doc/reST/cli.rst
>>> @@ -141,7 +141,7 @@ Logging/Statistic Options
>>> **Residual Energy** Average residual energy. SSE is calculated on fenc
>>> and pred(before quantization).
>>>
>>> - **Luma/Chroma Values** minumum, maximum and average(averaged by area)
>>> + **Luma/Chroma Values** minimum, maximum and average(averaged by area)
>>> luma and chroma values of source for each frame.
>>>
>>> **PU Statistics** percentage of PU modes at each depth.
>>> @@ -246,7 +246,7 @@ Performance Options
>>>
>>> .. option:: --pools <string>, --numa-pools <string>
>>>
>>> - Comma seperated list of threads per NUMA node. If "none", then no
>>> worker
>>> + Comma separated list of threads per NUMA node. If "none", then no
>>> worker
>>> pools are created and only frame parallelism is possible. If NULL or ""
>>> (default) x265 will use all available threads on each NUMA node::
>>>
>>> @@ -284,7 +284,7 @@ Performance Options
>>> the last thread pool is spawned only if it has more than 32 threads for
>>> 64-bit machines, or 16 for 32-bit machines. If the total number of
>>> threads
>>> in the system doesn't obey this constraint, we may spawn fewer threads
>>> - than cores which has been emperically shown to be better for
>>> performance.
>>> + than cores which has been empirically shown to be better for
>>> performance.
>>>
>>> If the four pool features: :option:`--wpp`, :option:`--pmode`,
>>> :option:`--pme` and :option:`--lookahead-slices` are all disabled,
>>> @@ -409,7 +409,7 @@ Performance Options
>>>
>>> Allow encoder to copy input x265 pictures to internal frame buffers.
>>> When disabled,
>>> x265 will not make an internal copy of the input picture and will work
>>> with the
>>> - application's buffers. While this allows for deeper integration, it is
>>> the responsbility
>>> + application's buffers. While this allows for deeper integration, it is
>>> the responsibility
>>> of the application to (a) ensure that the allocated picture has extra
>>> space for padding
>>> that will be done by the library, and (b) the buffers aren't recycled
>>> until the library
>>> has completed encoding this frame (which can be figured out by
>>> tracking NALs output by x265)
>>> @@ -554,7 +554,7 @@ frame counts) are only applicable to the CLI
>>> application.
>>>
>>> .. option:: --chunk-start <integer>
>>>
>>> - First frame of the chunk. Frames preceeding this in display order will
>>> + First frame of the chunk. Frames preceding this in display order will
>>> be encoded, however, they will be discarded in the bitstream. This
>>> feature can be enabled only in closed GOP structures.
>>> Default 0 (disabled).
>>> @@ -562,7 +562,7 @@ frame counts) are only applicable to the CLI
>>> application.
>>> .. option:: --chunk-end <integer>
>>>
>>> Last frame of the chunk. Frames following this in display order will be
>>> - used in taking lookahead decisions, but, they will not be encoded.
>>> + used in taking lookahead decisions, but they will not be encoded.
>>> This feature can be enabled only in closed GOP structures.
>>> Default 0 (disabled).
>>>
>>> @@ -638,7 +638,7 @@ Profile, Level, Tier
>>> If :option:`--level-idc` has been specified, --high-tier allows the
>>> support of high tier at that level. The encoder will first attempt to
>>> encode
>>> at the specified level, main tier first, turning on high tier only if
>>> - necessary and available at that level.If your requested level does not
>>> + necessary and available at that level. If your requested level does
>>> not
>>> support a High tier, high tier will not be supported. If
>>> --no-high-tier
>>> has been specified, then the encoder will attempt to encode only at
>>> the main tier.
>>>
>>> @@ -647,8 +647,8 @@ Profile, Level, Tier
>>> .. option:: --ref <1..16>
>>>
>>> Max number of L0 references to be allowed. This number has a linear
>>> - multiplier effect on the amount of work performed in motion search,
>>> - but will generally have a beneficial affect on compression and
>>> + multiplier effect on the amount of work performed in motion search
>>> + but will generally have a beneficial effect on compression and
>>> distortion.
>>>
>>> Note that x265 allows up to 16 L0 references but the HEVC
>>> @@ -668,7 +668,7 @@ Profile, Level, Tier
>>> .. option:: --allow-non-conformance, --no-allow-non-conformance
>>>
>>> Allow libx265 to generate a bitstream with profile and level NONE.
>>> - By default it will abort any encode which does not meet strict level
>>> + By default, it will abort any encode which does not meet strict level
>>> compliance. The two most likely causes for non-conformance are
>>> :option:`--ctu` being too small, :option:`--ref` being too high,
>>> or the bitrate or resolution being out of specification.
>>> @@ -727,7 +727,7 @@ Mode decision / Analysis
>>> used. The lower the value the faster the encode, the higher the
>>> value the smaller the bitstream (in general). Default 3
>>>
>>> - Note that this table aims for accuracy, but is not necessarily our
>>> + Note that this table aims for accuracy but is not necessarily our
>>> final target behavior for each mode.
>>>
>>>
>>> +-------+---------------------------------------------------------------+
>>> @@ -758,7 +758,7 @@ the prediction quad-tree.
>>>
>>> Maximum CU size (width and height). The larger the maximum CU size,
>>> the more efficiently x265 can encode flat areas of the picture,
>>> - giving large reductions in bitrate. However this comes at a loss of
>>> + giving large reductions in bitrate. However, this comes at a loss of
>>> parallelism with fewer rows of CUs that can be encoded in parallel,
>>> and less frame parallelism as well. Because of this the faster
>>> presets use a CU size of 32. Default: 64
>>> @@ -799,7 +799,7 @@ the prediction quad-tree.
>>>
>>> For all non-zero values of limit-refs, the current depth will evaluate
>>> intra mode (in inter slices), only if intra mode was chosen as the best
>>> - mode for atleast one of the 4 sub-blocks.
>>> + mode for at least one of the 4 sub-blocks.
>>>
>>> You can often increase the number of references you are using
>>> (within your decoder level limits) if you enable one or
>>> @@ -858,9 +858,9 @@ the prediction quad-tree.
>>>
>>> +----------+------------+----------------------------------------------------------------+
>>> | 5 - 6 | 1 | Comparison with
>>> inter2Nx2N. |
>>>
>>> +----------+------------+----------------------------------------------------------------+
>>> - | 0 - 6 | 2 | CU edge
>>> denstiy. |
>>> + | 0 - 6 | 2 | CU edge
>>> density. |
>>>
>>> +----------+------------+----------------------------------------------------------------+
>>> - | 0 - 6 | 3 | CU edge denstiy with forceful skip for
>>> lower levels of CTU. |
>>> + | 0 - 6 | 3 | CU edge density with forceful skip for
>>> lower levels of CTU. |
>>>
>>> +----------+------------+----------------------------------------------------------------+
>>>
>>> Provides minimal quality degradation at good performance gains for
>>> non-zero modes.
>>> @@ -928,7 +928,7 @@ will not reuse analysis if slice type parameters do
>>> not match.
>>>
>>> .. option:: --analysis-load <filename>
>>>
>>> - Encoder reuses analysis information from the file specified. By
>>> reading the analysis data writen by
>>> + Encoder reuses analysis information from the file specified. By
>>> reading the analysis data written by
>>> an earlier encode of the same sequence, substantial redundant work may
>>> be avoided. Requires cutree, pmode
>>> to be off. Default disabled.
>>>
>>> @@ -1082,7 +1082,7 @@ as the residual quad-tree (RQT).
>>>
>>> Note that when the CU intra prediction is NxN (only possible with
>>> 8x8 CUs), a TU split is implied, and thus the residual quad-tree
>>> - begins at 4x4 and cannot split any futhrer.
>>> + begins at 4x4 and cannot split any further.
>>>
>>> .. option:: --tu-inter-depth <1..4>
>>>
>>> @@ -1101,7 +1101,7 @@ as the residual quad-tree (RQT).
>>> Enables early exit from TU depth recursion, for inter coded blocks.
>>>
>>> Level 1 - decides to recurse to next higher depth based on cost
>>> - comparison of full size TU and split TU.
>>> + comparison of full-size TU and split TU.
>>>
>>> Level 2 - based on first split subTU's depth, limits recursion of
>>> other split subTUs.
>>> @@ -1109,13 +1109,13 @@ as the residual quad-tree (RQT).
>>> Level 3 - based on the average depth of the co-located and the neighbor
>>> CUs' TU depth, limits recursion of the current CU.
>>>
>>> - Level 4 - uses the depth of the neighbouring/ co-located CUs TU depth
>>> + Level 4 - uses the depth of the neighboring/ co-located CUs TU depth
>>> to limit the 1st subTU depth. The 1st subTU depth is taken as the
>>> limiting depth for the other subTUs.
>>>
>>> Enabling levels 3 or 4 may cause a mismatch in the output bitstreams
>>> between :option:`--analysis-save` and :option:`--analysis-load`
>>> - as all neighbouring CUs TU depth may not be available in the
>>> + as all neighboring CUs TU depth may not be available in the
>>> :option:`--analysis-load` run as only the best mode's information is
>>> available to it.
>>>
>>> @@ -1216,14 +1216,14 @@ Temporal / motion search options
>>> Motion search method. Generally, the higher the number the harder
>>> the ME method will try to find an optimal match. Diamond search is
>>> the simplest. Hexagon search is a little better. Uneven
>>> - Multi-Hexegon is an adaption of the search method used by x264 for
>>> - slower presets. Star is a three step search adapted from the HM
>>> + Multi-Hexagon is an adaption of the search method used by x264 for
>>> + slower presets. Star is a three-step search adapted from the HM
>>> encoder: a star-pattern search followed by an optional radix scan
>>> followed by an optional star-search refinement. Full is an
>>> exhaustive search; an order of magnitude slower than all other
>>> searches but not much better than umh or star. SEA is similar to
>>> x264's ESA implementation and a speed optimization of full search.
>>> - It is a three step motion search where the DC calculation is
>>> + It is a three-step motion search where the DC calculation is
>>> followed by ADS calculation followed by SAD of the passed motion
>>> vector candidates.
>>>
>>> @@ -1262,7 +1262,7 @@ Temporal / motion search options
>>> At --subme values larger than 2, chroma residual cost is included
>>> in all subpel refinement steps and chroma residual is included in
>>> all motion estimation decisions (selecting the best reference
>>> - picture in each list, and chosing between merge, uni-directional
>>> + picture in each list, and choosing between merge, uni-directional
>>> motion and bi-directional motion). The 'slow' preset is the first
>>> preset to enable the use of chroma residual.
>>>
>>> @@ -1356,7 +1356,7 @@ the rate distortion algorithm.
>>> do not match the visual energy of the source block. The higher the
>>> strength of :option:`--psy-rd` the more strongly it will favor similar
>>> energy over blur and the more aggressively it will ignore rate
>>> -distortion. If it is too high, it will introduce visal artifacts and
>>> +distortion. If it is too high, it will introduce visual artifacts and
>>> increase bitrate enough for rate control to increase quantization
>>> globally, reducing overall quality. psy-rd will tend to reduce the use
>>> of blurred prediction modes, like DC and planar intra and bi-directional
>>> @@ -1366,11 +1366,11 @@ inter prediction.
>>> rate-distortion optimized quantization (RDO quant), enabled by
>>> :option:`--rdoq-level` 1 or 2, favoring the preservation of energy in
>>> the
>>> reconstructed image. :option:`--psy-rdoq` prevents RDOQ from blurring
>>> -all of the encoding options which psy-rd has to chose from. At low
>>> +all of the encoding options which psy-rd has to choose from. At low
>>> strength levels, psy-rdoq will influence the quantization level
>>> decisions, favoring higher AC energy in the reconstructed image. As
>>> psy-rdoq strength is increased, more non-zero coefficient levels are
>>> -added and fewer coefficients are zeroed by RDOQ's rate distortion
>>> +added, and fewer coefficients are zeroed by RDOQ's rate distortion
>>> analysis. High levels of psy-rdoq can double the bitrate which can have
>>> a drastic effect on rate control, forcing higher overall QP, and can
>>> cause ringing artifacts. psy-rdoq is less accurate than psy-rd, it is
>>> @@ -1394,16 +1394,16 @@ see temporal artifacts (motion judder). This is
>>> caused when the encoder
>>> is forced to code skip blocks (no residual) in areas of difficult motion
>>> because it is the best option psycho-visually (they have great amounts
>>> of energy and no residual cost). One can lower psy-rd settings when
>>> -judder is happening, and allow the encoder to use some blur in these
>>> +judder is happening and allow the encoder to use some blur in these
>>> areas of high motion.
>>>
>>> In 444, chroma gets twice as much resolution, so halve the quality when
>>> psy-rd is enabled.
>>> -So when psy-rd is enabled for 444 videos, cbQpOffset and crQpOffset are
>>> set to value 6,
>>> +So, when psy-rd is enabled for 444 videos, cbQpOffset and crQpOffset
>>> are set to value 6,
>>> if they are not explicitly set.
>>>
>>> .. option:: --psy-rd <float>
>>>
>>> - Influence rate distortion optimizated mode decision to preserve the
>>> + Influence rate distortion optimized mode decision to preserve the
>>> energy of the source image in the encoded image at the expense of
>>> compression efficiency. It only has effect on presets which use
>>> RDO-based mode decisions (:option:`--rd` 3 and above). 1.0 is a
>>> @@ -1501,7 +1501,7 @@ Slice decision options
>>> Number of frames for slice-type decision lookahead (a key
>>> determining factor for encoder latency). The longer the lookahead
>>> buffer the more accurate scenecut decisions will be, and the more
>>> - effective cuTree will be at improving adaptive quant. Having a
>>> + effective cutree will be at improving adaptive quant. Having a
>>> lookahead larger than the max keyframe interval is not helpful.
>>> Default 20
>>>
>>> @@ -1510,7 +1510,7 @@ Slice decision options
>>> .. option:: --gop-lookahead <integer>
>>>
>>> Number of frames for GOP boundary decision lookahead. If a scenecut
>>> frame is found
>>> - within this from the gop boundary set by `--keyint`, the GOP will be
>>> extented until such a point,
>>> + within this from the gop boundary set by `--keyint`, the GOP will be
>>> extended until such a point,
>>> otherwise the GOP will be terminated as set by `--keyint`. Default 0.
>>>
>>> **Range of values:** Between 0 and (`--rc-lookahead` - mini-GOP length)
>>> @@ -1629,7 +1629,7 @@ Quality, rate control and rate distortion options
>>>
>>> .. option:: --crf-min <0..51.0>
>>>
>>> - Specify an lower limit to the rate factor which may be assigned to
>>> + Specify a lower limit to the rate factor which may be assigned to
>>> any given frame (ensuring a min compression factor).
>>>
>>> .. option:: --vbv-bufsize <integer>
>>> @@ -1656,7 +1656,7 @@ Quality, rate control and rate distortion options
>>> Initial buffer occupancy. The portion of the decode buffer which
>>> must be full before the decoder will begin decoding. Determines
>>> absolute maximum frame size. May be specified as a fractional value
>>> - between 0 and 1, or in kbits. In other words these two option pairs
>>> + between 0 and 1, or in kbits. In other words, these two option pairs
>>> are equivalent::
>>>
>>> --vbv-bufsize 1000 --vbv-init 900
>>> @@ -1710,7 +1710,7 @@ Quality, rate control and rate distortion options
>>>
>>> Adaptive Quantization operating mode. Raise or lower per-block
>>> quantization based on complexity analysis of the source image. The
>>> - more complex the block, the more quantization is used. This offsets
>>> + more complex the block, the more quantization is used. These offsets
>>> the tendency of the encoder to spend too many bits on complex areas
>>> and not enough in flat areas.
>>>
>>> @@ -1737,8 +1737,8 @@ Quality, rate control and rate distortion options
>>> Enable adaptive quantization
>>> It scales the quantization step size according to the spatial activity
>>> of one
>>> coding unit relative to frame average spatial activity. This AQ method
>>> utilizes
>>> - the minimum variance of sub-unit in each coding unit to represent the
>>> coding
>>> - unit’s spatial complexity.
>>> + the minimum variance of sub-unit in each coding unit to represent the
>>> spatial
>>> + complexity of the coding unit.
>>>
>>> .. option:: --qp-adaptation-range
>>>
>>> @@ -1938,7 +1938,7 @@ Quality, rate control and rate distortion options
>>>
>>> The frame number indicates the beginning of a zone. The options
>>> following this is applied until another zone begins. The
>>> reconfigurable
>>> - options can be spcified as --<feature name> <feature value>
>>> + options can be specified as --<feature name> <feature value>
>>>
>>> **CLI ONLY**
>>>
>>> @@ -2064,7 +2064,7 @@ Loop filters
>>>
>>> .. option:: --sao-non-deblock, --no-sao-non-deblock
>>>
>>> - Specify how to handle depencency between SAO and deblocking filter.
>>> + Specify how to handle dependency between SAO and deblocking filter.
>>> When enabled, non-deblocked pixels are used for SAO analysis. When
>>> disabled, SAO analysis skips the right/bottom boundary areas.
>>> Default disabled
>>> @@ -2154,7 +2154,7 @@ VUI fields must be manually specified.
>>> 2. ntsc
>>> 3. secam
>>> 4. mac
>>> - 5. undefined
>>> + 5. unknown
>>>
>>> .. option:: --range <full|limited>
>>>
>>> @@ -2207,15 +2207,15 @@ VUI fields must be manually specified.
>>> Specify color matrix setting i.e set the matrix coefficients used in
>>> deriving the luma and chroma. Default undefined (not signaled)
>>>
>>> - 0. GBR
>>> + 0. gbr
>>> 1. bt709
>>> - 2. undef
>>> + 2. unknown
>>> 3. **reserved**
>>> 4. fcc
>>> 5. bt470bg
>>> 6. smpte170m
>>> 7. smpte240m
>>> - 8. YCgCo
>>> + 8. ycgco
>>> 9. bt2020nc
>>> 10. bt2020c
>>> 11. smpte2085
>>> @@ -2285,7 +2285,7 @@ VUI fields must be manually specified.
>>> .. option:: --hdr10-opt, --no-hdr10-opt
>>>
>>> Enable block-level luma and chroma QP optimization for HDR10 content
>>> - as suggested in ITU-T H-series Recommendations – Supplement 15.
>>> + as suggested in ITU-T H-series Recommendations– Supplement 15.
>>> Source video should have HDR10 characteristics such as 10-bit depth
>>> 4:2:0
>>> with Bt.2020 color primaries and SMPTE ST.2084 transfer
>>> characteristics.
>>> It is recommended that AQ-mode be enabled along with this feature.
>>> Default disabled.
>>> @@ -2325,13 +2325,13 @@ VUI fields must be manually specified.
>>>
>>> Emit the alternative transfer characteristics SEI message where the
>>> integer
>>> is the preferred transfer characteristics. Required for HLG (Hybrid
>>> Log Gamma)
>>> - signalling. Not signalled by default.
>>> + signaling. Not signaled by default.
>>>
>>> .. option:: --pic-struct <integer>
>>>
>>> Set the picture structure and emits it in the picture timing SEI
>>> message.
>>> Values in the range 0..12. See D.3.3 of the HEVC spec. for a detailed
>>> explanation.
>>> - Required for HLG (Hybrid Log Gamma) signalling. Not signalled by
>>> default.
>>> + Required for HLG (Hybrid Log Gamma) signaling. Not signaled by default.
>>>
>>> Bitstream options
>>> =================
>>> @@ -2362,7 +2362,7 @@ Bitstream options
>>>
>>> .. option:: --hrd, --no-hrd
>>>
>>> - Enable the signalling of HRD parameters to the decoder. The HRD
>>> + Enable the signaling of HRD parameters to the decoder. The HRD
>>> parameters are carried by the Buffering Period SEI messages and
>>> Picture Timing SEI messages providing timing information to the
>>> decoder. Default disabled
>>> @@ -2370,7 +2370,7 @@ Bitstream options
>>>
>>> .. option:: --hrd-concat, --no-hrd-concat
>>>
>>> - Set concantenation flag for the first keyframe in the HRD buffering
>>> period SEI. This
>>> + Set concatenation flag for the first keyframe in the HRD buffering
>>> period SEI. This
>>> is to signal the decoder if splicing is performed during bitstream
>>> generation.
>>> Recommended to enable this option during chunked encoding, except
>>> for the first chunk.
>>> Default disabled.
>>> @@ -2419,7 +2419,7 @@ Bitstream options
>>>
>>> Enable a temporal sub layer. All referenced I/P/B frames are in the
>>> base layer and all unreferenced B frames are placed in a temporal
>>> - enhancement layer. A decoder may chose to drop the enhancement layer
>>> + enhancement layer. A decoder may choose to drop the enhancement layer
>>> and only decode and display the base layer slices.
>>>
>>> If used with a fixed GOP (:option:`--b-adapt` 0) and
>>> :option:`--bframes`
>>> @@ -2457,7 +2457,7 @@ Bitstream options
>>> .. option:: --opt-cu-delta-qp, --no-opt-cu-delta-qp
>>>
>>> Optimize CU level QPs by pulling up lower QPs to value close to meanQP
>>> thereby
>>> - minimizing fluctuations in deltaQP signalling. Default disabled.
>>> + minimizing fluctuations in deltaQP signaling. Default disabled.
>>>
>>> Only effective at RD levels 5 and 6
>>>
>>> @@ -2476,10 +2476,10 @@ DCT Approximations
>>> .. option:: --lowpass-dct
>>>
>>> If enabled, x265 will use low-pass subband dct approximation instead
>>> of the
>>> - standard dct for 16x16 and 32x32 blocks. This approximation is less
>>> computational
>>> + standard dct for 16x16 and 32x32 blocks. This approximation is less
>>> computationally
>>> intensive but it generates truncated coefficient matrixes for the
>>> transformed block.
>>> Empirical analysis shows marginal loss in compression and performance
>>> gains up to 10%,
>>> - paticularly at moderate bit-rates.
>>> + particularly at moderate bit-rates.
>>>
>>> This approximation should be considered for platforms with performance
>>> and time
>>> constrains.
>>> @@ -2538,7 +2538,7 @@ ABR-ladder Options
>>>
>>> A sample config file is available in `the downloads page <
>>> https://bitbucket.org/multicoreware/x265/downloads/Sample_ABR_ladder_config
>>> >`_
>>>
>>> - Default: Disabled ( Conventional single encode generation ).
>>> Experimental feature.
>>> + Default: Disabled (Conventional single encode generation).
>>> Experimental feature.
>>>
>>> **CLI ONLY**
>>>
>>> @@ -2576,8 +2576,8 @@ See section :ref:`svthevc <SvtHevc>` for more
>>> details.
>>> .. option:: --svt-compressed-ten-bit-format,
>>> --no-svt-compressed-ten-bit-format
>>>
>>> In order to reduce the size of input YUV and to increase channel
>>> density,
>>> - SVT-HEVC accetps inputs in compressed-ten-bit-format. The
>>> conversion between
>>> - yuv420p10le and compressed ten bit format is a lossless operation.
>>> For more
>>> + SVT-HEVC accepts inputs in compressed-ten-bit-format. The
>>> conversion between
>>> + yuv420p10le and compressed ten-bit format is a lossless operation.
>>> For more
>>> details about the conversion refer
>>> `here<
>>> https://github.com/intel/SVT-HEVC/blob/master/Docs/SVT-HEVC_Encoder_User_Guide.pdf
>>> >'_.
>>>
>>> @@ -2629,7 +2629,7 @@ See section :ref:`svthevc <SvtHevc>` for more
>>> details.
>>> supports Low delay(P/B) and random access prediction structure. In
>>> a low delay
>>> structure, pictures within a mini-gop can only refer to the
>>> previous pictures
>>> in display order. In other words, picture with display order N can
>>> only refer
>>> - to pictures of display order lower than N. In random acccess
>>> method, pictures
>>> + to pictures of display order lower than N. In random access method,
>>> pictures
>>> can be referenced from both the directions. It accepts values in
>>> the range
>>> [0-2]
>>>
>>> diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt
>>> index 2558d9e..1d1a613 100644
>>> --- a/source/CMakeLists.txt
>>> +++ b/source/CMakeLists.txt
>>> @@ -29,7 +29,7 @@ option(NATIVE_BUILD "Target the build CPU" OFF)
>>> option(STATIC_LINK_CRT "Statically link C runtime for release builds"
>>> OFF)
>>> mark_as_advanced(FPROFILE_USE FPROFILE_GENERATE NATIVE_BUILD)
>>> # X265_BUILD must be incremented each time the public API is changed
>>> -set(X265_BUILD 191)
>>> +set(X265_BUILD 192)
>>> configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"
>>> "${PROJECT_BINARY_DIR}/x265.def")
>>> configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"
>>> diff --git a/source/common/param.cpp b/source/common/param.cpp
>>> index 908400f..b4965ce 100644
>>> --- a/source/common/param.cpp
>>> +++ b/source/common/param.cpp
>>> @@ -1122,7 +1122,7 @@ int x265_param_parse(x265_param* p, const char*
>>> name, const char* value)
>>> p->vui.bEnableOverscanInfoPresentFlag = 1;
>>> p->vui.bEnableOverscanAppropriateFlag = 1;
>>> }
>>> - else if (!strcmp(value, "undef"))
>>> + else if (!strcmp(value, "unknown"))
>>> p->vui.bEnableOverscanInfoPresentFlag = 0;
>>> else
>>> bError = true;
>>> @@ -1643,23 +1643,23 @@ int x265_check_params(x265_param* param)
>>> "Sample Aspect Ratio height must be greater than 0");
>>> CHECK(param->vui.videoFormat < 0 || param->vui.videoFormat > 5,
>>> "Video Format must be component,"
>>> - " pal, ntsc, secam, mac or undef");
>>> + " pal, ntsc, secam, mac or unknown");
>>> CHECK(param->vui.colorPrimaries < 0
>>> || param->vui.colorPrimaries > 12
>>> || param->vui.colorPrimaries == 3,
>>> - "Color Primaries must be undef, bt709, bt470m,"
>>> + "Color Primaries must be unknown, bt709, bt470m,"
>>> " bt470bg, smpte170m, smpte240m, film, bt2020, smpte-st-428,
>>> smpte-rp-431 or smpte-eg-432");
>>> CHECK(param->vui.transferCharacteristics < 0
>>> || param->vui.transferCharacteristics > 18
>>> || param->vui.transferCharacteristics == 3,
>>> - "Transfer Characteristics must be undef, bt709, bt470m,
>>> bt470bg,"
>>> + "Transfer Characteristics must be unknown, bt709, bt470m,
>>> bt470bg,"
>>> " smpte170m, smpte240m, linear, log100, log316, iec61966-2-4,
>>> bt1361e,"
>>> " iec61966-2-1, bt2020-10, bt2020-12, smpte-st-2084,
>>> smpte-st-428 or arib-std-b67");
>>> CHECK(param->vui.matrixCoeffs < 0
>>> || param->vui.matrixCoeffs > 14
>>> || param->vui.matrixCoeffs == 3,
>>> - "Matrix Coefficients must be undef, bt709, fcc, bt470bg,
>>> smpte170m,"
>>> - " smpte240m, GBR, YCgCo, bt2020nc, bt2020c, smpte-st-2085,
>>> chroma-nc, chroma-c or ictcp");
>>> + "Matrix Coefficients must be unknown, bt709, fcc, bt470bg,
>>> smpte170m,"
>>> + " smpte240m, gbr, ycgco, bt2020nc, bt2020c, smpte-st-2085,
>>> chroma-nc, chroma-c or ictcp");
>>> CHECK(param->vui.chromaSampleLocTypeTopField < 0
>>> || param->vui.chromaSampleLocTypeTopField > 5,
>>> "Chroma Sample Location Type Top Field must be 0-5");
>>> diff --git a/source/x265cli.cpp b/source/x265cli.cpp
>>> index 05f16b7..9772a1a 100644
>>> --- a/source/x265cli.cpp
>>> +++ b/source/x265cli.cpp
>>> @@ -291,16 +291,16 @@ namespace X265_NS {
>>> H0(" 5=40:33, 6=24:11, 7=20:11,
>>> 8=32:11, 9=80:33, 10=18:11, 11=15:11,\n");
>>> H0(" 12=64:33, 13=160:99,
>>> 14=4:3, 15=3:2, 16=2:1 or custom ratio of <int:int>. Default %d\n",
>>> param->vui.aspectRatioIdc);
>>> H1(" --display-window <string> Describe overscan cropping
>>> region as 'left,top,right,bottom' in pixels\n");
>>> - H1(" --overscan <string> Specify whether it is
>>> appropriate for decoder to show cropped region: undef, show or crop.
>>> Default undef\n");
>>> - H0(" --videoformat <string> Specify video format from
>>> undef, component, pal, ntsc, secam, mac. Default undef\n");
>>> + H1(" --overscan <string> Specify whether it is
>>> appropriate for decoder to show cropped region: unknown, show or crop.
>>> Default unknown\n");
>>> + H0(" --videoformat <string> Specify video format from
>>> unknown, component, pal, ntsc, secam, mac. Default unknown\n");
>>> H0(" --range <string> Specify black level and
>>> range of luma and chroma signals as full or limited Default limited\n");
>>> H0(" --colorprim <string> Specify color primaries
>>> from bt709, unknown, reserved, bt470m, bt470bg, smpte170m,\n");
>>> - H0(" smpte240m, film, bt2020,
>>> smpte428, smpte431, smpte432. Default undef\n");
>>> + H0(" smpte240m, film, bt2020,
>>> smpte428, smpte431, smpte432. Default unknown\n");
>>> H0(" --transfer <string> Specify transfer
>>> characteristics from bt709, unknown, reserved, bt470m, bt470bg,
>>> smpte170m,\n");
>>> H0(" smpte240m, linear, log100,
>>> log316, iec61966-2-4, bt1361e, iec61966-2-1,\n");
>>> - H0(" bt2020-10, bt2020-12,
>>> smpte2084, smpte428, arib-std-b67. Default undef\n");
>>> - H1(" --colormatrix <string> Specify color matrix
>>> setting from undef, bt709, fcc, bt470bg, smpte170m,\n");
>>> - H1(" smpte240m, GBR, YCgCo,
>>> bt2020nc, bt2020c, smpte2085, chroma-derived-nc, chroma-derived-c, ictcp.
>>> Default undef\n");
>>> + H0(" bt2020-10, bt2020-12,
>>> smpte2084, smpte428, arib-std-b67. Default unknown\n");
>>> + H1(" --colormatrix <string> Specify color matrix
>>> setting from unknown, bt709, fcc, bt470bg, smpte170m,\n");
>>> + H1(" smpte240m, gbr, ycgco,
>>> bt2020nc, bt2020c, smpte2085, chroma-derived-nc, chroma-derived-c, ictcp.
>>> Default unknown\n");
>>> H1(" --chromaloc <integer> Specify chroma sample
>>> location (0 to 5). Default of %d\n",
>>> param->vui.chromaSampleLocTypeTopField);
>>> H0(" --master-display <string> SMPTE ST 2086 master
>>> display color volume info SEI (HDR)\n");
>>> H0(" format:
>>> G(x,y)B(x,y)R(x,y)WP(x,y)L(max,min)\n");
>>> --
>>> 1.8.3.1
>>>
>>>
>>> On Thu, Apr 30, 2020 at 3:07 PM Praveen Kumar Karadugattu <
>>> praveenkumar at multicorewareinc.com> wrote:
>>>
>>>>
>>>> Hi Aruna,
>>>>
>>>> Thanks for the review. Please find my response in-lined below. I will
>>>> re-send the patch incorporating the changes suggested.
>>>>
>>>> Regards,
>>>> Praveen
>>>> On Thu, Apr 23, 2020 at 4:11 PM Aruna Matheswaran <
>>>> aruna at multicorewareinc.com> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Mon, Apr 20, 2020 at 10:38 AM Praveen Kumar Karadugattu <
>>>>> praveenkumar at multicorewareinc.com> wrote:
>>>>>
>>>>>> From 9207e6db602ea218aca7d03075339009429280ef Mon Sep 17 00:00:00 2001
>>>>>> From: Praveen Karadugattu <praveenkumar at multicorewareinc.com>
>>>>>> Date: Fri, 17 Apr 2020 19:59:03 +0530
>>>>>> Subject: [PATCH] Fixed some of the wrongly represented cli parameters
>>>>>> in the
>>>>>> docs related to --colormatrix and --videoformat.
>>>>>> ---
>>>>>> doc/reST/cli.rst | 8 ++++----
>>>>>> source/common/param.cpp | 12 ++++++------
>>>>>> source/x265cli.cpp | 6 +++---
>>>>>> 3 files changed, 13 insertions(+), 13 deletions(-)
>>>>>> diff --git a/doc/reST/cli.rst b/doc/reST/cli.rst
>>>>>> index 1e2765d..0fad45b 100644
>>>>>> --- a/doc/reST/cli.rst
>>>>>> +++ b/doc/reST/cli.rst
>>>>>> @@ -2154,7 +2154,7 @@ VUI fields must be manually specified.
>>>>>> 2. ntsc
>>>>>> 3. secam
>>>>>> 4. mac
>>>>>> - 5. undefined
>>>>>> + 5. unknown
>>>>>>
>>>>>> .. option:: --range <full|limited>
>>>>>>
>>>>>> @@ -2207,15 +2207,15 @@ VUI fields must be manually specified.
>>>>>> Specify color matrix setting i.e set the matrix coefficients used in
>>>>>> deriving the luma and chroma. Default undefined (not signaled)
>>>>>>
>>>>>> - 0. GBR
>>>>>> + 0. gbr
>>>>>> 1. bt709
>>>>>> - 2. undef
>>>>>> + 2. unknown
>>>>>> 3. **reserved**
>>>>>> 4. fcc
>>>>>> 5. bt470bg
>>>>>> 6. smpte170m
>>>>>> 7. smpte240m
>>>>>> - 8. YCgCo
>>>>>> + 8. ycgco
>>>>>> 9. bt2020nc
>>>>>> 10. bt2020c
>>>>>> 11. smpte2085
>>>>>> diff --git a/source/common/param.cpp b/source/common/param.cpp
>>>>>> index 908400f..b4965ce 100644
>>>>>> --- a/source/common/param.cpp
>>>>>> +++ b/source/common/param.cpp
>>>>>> @@ -1122,7 +1122,7 @@ int x265_param_parse(x265_param* p, const char*
>>>>>> name, const char* value)
>>>>>> p->vui.bEnableOverscanInfoPresentFlag = 1;
>>>>>> p->vui.bEnableOverscanAppropriateFlag = 1;
>>>>>> }
>>>>>> - else if (!strcmp(value, "undef"))
>>>>>> + else if (!strcmp(value, "unknown"))
>>>>>>
>>>>> [AM] You are changing the API here. Please update X265_BUILD.
>>>>> btw, there is no discrepancy between CLI values and the document of
>>>>> the "overscan" option.
>>>>> Did you modify this to have uniform values across VUI options? If so,
>>>>> can we introduce "unknown" as an alias for "undef" and deprecate "undef" in
>>>>> the next version?
>>>>>
>>>> [PK] I will increment the X265_BUILD in CMakeLists.txt. "overscan" has
>>>> "undef" option. I have made it "unknown" to maintain uniformity. Yes we
>>>> need to deprecate "undef" and use "unknown" everywhere instead.
>>>>
>>>>> p->vui.bEnableOverscanInfoPresentFlag = 0;
>>>>>> else
>>>>>> bError = true;
>>>>>> @@ -1643,23 +1643,23 @@ int x265_check_params(x265_param* param)
>>>>>> "Sample Aspect Ratio height must be greater than 0");
>>>>>> CHECK(param->vui.videoFormat < 0 || param->vui.videoFormat > 5,
>>>>>> "Video Format must be component,"
>>>>>> - " pal, ntsc, secam, mac or undef");
>>>>>> + " pal, ntsc, secam, mac or unknown");
>>>>>> CHECK(param->vui.colorPrimaries < 0
>>>>>> || param->vui.colorPrimaries > 12
>>>>>> || param->vui.colorPrimaries == 3,
>>>>>> - "Color Primaries must be undef, bt709, bt470m,"
>>>>>> + "Color Primaries must be unknown, bt709, bt470m,"
>>>>>> " bt470bg, smpte170m, smpte240m, film, bt2020,
>>>>>> smpte-st-428, smpte-rp-431 or smpte-eg-432");
>>>>>> CHECK(param->vui.transferCharacteristics < 0
>>>>>> || param->vui.transferCharacteristics > 18
>>>>>> || param->vui.transferCharacteristics == 3,
>>>>>> - "Transfer Characteristics must be undef, bt709, bt470m,
>>>>>> bt470bg,"
>>>>>> + "Transfer Characteristics must be unknown, bt709, bt470m,
>>>>>> bt470bg,"
>>>>>> " smpte170m, smpte240m, linear, log100, log316,
>>>>>> iec61966-2-4, bt1361e,"
>>>>>> " iec61966-2-1, bt2020-10, bt2020-12, smpte-st-2084,
>>>>>> smpte-st-428 or arib-std-b67");
>>>>>> CHECK(param->vui.matrixCoeffs < 0
>>>>>> || param->vui.matrixCoeffs > 14
>>>>>> || param->vui.matrixCoeffs == 3,
>>>>>> - "Matrix Coefficients must be undef, bt709, fcc, bt470bg,
>>>>>> smpte170m,"
>>>>>> - " smpte240m, GBR, YCgCo, bt2020nc, bt2020c, smpte-st-2085,
>>>>>> chroma-nc, chroma-c or ictcp");
>>>>>> + "Matrix Coefficients must be unknown, bt709, fcc, bt470bg,
>>>>>> smpte170m,"
>>>>>> + " smpte240m, gbr, ycgco, bt2020nc, bt2020c, smpte-st-2085,
>>>>>> chroma-nc, chroma-c or ictcp");
>>>>>> CHECK(param->vui.chromaSampleLocTypeTopField < 0
>>>>>> || param->vui.chromaSampleLocTypeTopField > 5,
>>>>>> "Chroma Sample Location Type Top Field must be 0-5");
>>>>>> diff --git a/source/x265cli.cpp b/source/x265cli.cpp
>>>>>> index 05f16b7..4d91b99 100644
>>>>>> --- a/source/x265cli.cpp
>>>>>> +++ b/source/x265cli.cpp
>>>>>> @@ -291,8 +291,8 @@ namespace X265_NS {
>>>>>> H0(" 5=40:33, 6=24:11,
>>>>>> 7=20:11, 8=32:11, 9=80:33, 10=18:11, 11=15:11,\n");
>>>>>> H0(" 12=64:33, 13=160:99,
>>>>>> 14=4:3, 15=3:2, 16=2:1 or custom ratio of <int:int>. Default %d\n",
>>>>>> param->vui.aspectRatioIdc);
>>>>>> H1(" --display-window <string> Describe overscan
>>>>>> cropping region as 'left,top,right,bottom' in pixels\n");
>>>>>> - H1(" --overscan <string> Specify whether it is
>>>>>> appropriate for decoder to show cropped region: undef, show or crop.
>>>>>> Default undef\n");
>>>>>> - H0(" --videoformat <string> Specify video format
>>>>>> from undef, component, pal, ntsc, secam, mac. Default undef\n");
>>>>>> + H1(" --overscan <string> Specify whether it is
>>>>>> appropriate for decoder to show cropped region: unknown, show or crop.
>>>>>> Default undef\n");
>>>>>> + H0(" --videoformat <string> Specify video format
>>>>>> from unknown, component, pal, ntsc, secam, mac. Default undef\n");
>>>>>>
>>>>> [AM] Update default values in these helplines.
>>>>>
>>>> [PK] Ok. In addition I am making "Default undef" as "Default unknown"
>>>> wherever we have a valid "unknown" as one of the options.
>>>>
>>>>> H0(" --range <string> Specify black level and
>>>>>> range of luma and chroma signals as full or limited Default limited\n");
>>>>>> H0(" --colorprim <string> Specify color primaries
>>>>>> from bt709, unknown, reserved, bt470m, bt470bg, smpte170m,\n");
>>>>>> H0(" smpte240m, film,
>>>>>> bt2020, smpte428, smpte431, smpte432. Default undef\n");
>>>>>> @@ -994,4 +994,4 @@ namespace X265_NS {
>>>>>>
>>>>>> #ifdef __cplusplus
>>>>>> }
>>>>>> -#endif
>>>>>> \ No newline at end of file
>>>>>> +#endif
>>>>>> --
>>>>>> 1.8.3.1
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> *Aruna Matheswaran,*
>>>>> Video Codec Engineer,
>>>>> Media & AI analytics BU,
>>>>>
>>>>>
>>>>>
>>>>>
--
Regards,
*Aruna Matheswaran,*
Video Codec Engineer,
Media & AI analytics BU,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20200526/ce33d2ea/attachment-0001.html>
More information about the x265-devel
mailing list