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