[x265] [PATCH] Fixed some of the wrongly represented cli parameters in the docs related to --colormatrix and --videoformat.
Praveen Kumar Karadugattu
praveenkumar at multicorewareinc.com
Mon May 25 09:42:13 CEST 2020
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,
>>>>
>>>>
>>>>
>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20200525/9578b490/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Fixed-some-of-the-wrongly-represented-cli-parameters.patch
Type: application/octet-stream
Size: 29120 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20200525/9578b490/attachment-0001.obj>
More information about the x265-devel
mailing list