[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