[x265] [PATCH 2 of 2] cli: add cli option --temporal-layers/--no-temporal-layers to enable/disable temporal layering

Steve Borho steve at borho.org
Tue Feb 3 18:27:53 CET 2015


On 02/03, aarthi at multicorewareinc.com wrote:
> # HG changeset patch
> # User Aarthi Thirumalai
> # Date 1422960762 -19800
> #      Tue Feb 03 16:22:42 2015 +0530
> # Node ID 3646ebea807a9e58d1b352627d09b0607abfab5d
> # Parent  830d29c97117c609585b7c18cc75f120a89ce79e
> cli: add cli option --temporal-layers/--no-temporal-layers to enable/disable temporal layering.
> 
> by default, it is turned off.

queued with tweaks

> diff -r 830d29c97117 -r 3646ebea807a doc/reST/cli.rst
> --- a/doc/reST/cli.rst	Tue Feb 03 16:21:21 2015 +0530
> +++ b/doc/reST/cli.rst	Tue Feb 03 16:22:42 2015 +0530
> @@ -171,8 +171,6 @@
>  	Over-allocation of frame threads will not improve performance, it
>  	will generally just increase memory use.
>  
> -	**Values:** any value between 8 and 16. Default is 0, auto-detect
> -

dropped

>  .. option:: --threads <integer>
>  
>  	Number of threads to allocate for the worker thread pool  This pool
> @@ -1376,6 +1374,12 @@
>  	1. MD5
>  	2. CRC
>  	3. Checksum
> +	
> +.. option:: --temporal-layers,--no-temporal-layers
> +
> +	Enable Temporal Sub Layers in the bitstream and signal the temporal layer ids
> +	in the VPS, SPS and coded slice NAL unit headers. As of now, 
> +	maxTemporalSubLayers that can be enabled = 2 when this option is turned on. 
>  
>  Debugging options
>  =================
> diff -r 830d29c97117 -r 3646ebea807a source/CMakeLists.txt
> --- a/source/CMakeLists.txt	Tue Feb 03 16:21:21 2015 +0530
> +++ b/source/CMakeLists.txt	Tue Feb 03 16:22:42 2015 +0530
> @@ -21,7 +21,7 @@
>  include(CheckCXXCompilerFlag)
>  
>  # X265_BUILD must be incremented each time the public API is changed
> -set(X265_BUILD 43)
> +set(X265_BUILD 44)
>  configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"
>                 "${PROJECT_BINARY_DIR}/x265.def")
>  configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"
> @@ -240,11 +240,6 @@
>      add_subdirectory(profile/vtune)
>  endif(ENABLE_VTUNE)
>  
> -option(DETAILED_CU_STATS "Enable internal profiling of encoder work" OFF)
> -if(DETAILED_CU_STATS)
> -    add_definitions(-DDETAILED_CU_STATS)
> -endif(DETAILED_CU_STATS)
> -

dropped. your merge tool is being unkind to you. either that or you're
copying files between repositories with different parent revisions
checked out, and losing intermediate changes which show up as diffs
which remove changes others have added.

>  add_subdirectory(encoder)
>  add_subdirectory(common)
>  
> diff -r 830d29c97117 -r 3646ebea807a source/common/param.cpp
> --- a/source/common/param.cpp	Tue Feb 03 16:21:21 2015 +0530
> +++ b/source/common/param.cpp	Tue Feb 03 16:22:42 2015 +0530
> @@ -606,6 +606,7 @@
>              p->scenecutThreshold = atoi(value);
>          }
>      }
> +    OPT("temporal-layers") p->bEnableTemporalSubLayers = atobool(value);
>      OPT("keyint") p->keyframeMax = atoi(value);
>      OPT("min-keyint") p->keyframeMin = atoi(value);
>      OPT("rc-lookahead") p->lookaheadDepth = atoi(value);
> diff -r 830d29c97117 -r 3646ebea807a source/x265cli.h
> --- a/source/x265cli.h	Tue Feb 03 16:21:21 2015 +0530
> +++ b/source/x265cli.h	Tue Feb 03 16:22:42 2015 +0530
> @@ -193,6 +193,8 @@
>      { "analysis-mode",  required_argument, NULL, 0 },
>      { "analysis-file",  required_argument, NULL, 0 },
>      { "strict-cbr",           no_argument, NULL, 0 },
> +    { "temporal-layers",      no_argument, NULL, 0 },
> +    { "no-temporal-layers",   no_argument, NULL, 0 },
>      { 0, 0, 0, 0 },
>      { 0, 0, 0, 0 },
>      { 0, 0, 0, 0 },
> @@ -373,6 +375,7 @@
>      H0("   --[no-]aud                    Emit access unit delimiters at the start of each access unit. Default %s\n", OPT(param->bEnableAccessUnitDelimiters));
>      H0("   --[no-]hrd                    Enable HRD parameters signaling. Default %s\n", OPT(param->bEmitHRDSEI));
>      H0("   --[no-]repeat-headers         Emit SPS and PPS headers at each keyframe. Default %s\n", OPT(param->bRepeatHeaders));
> +    H0("   --[no-]temporal-layers        Enable temporal layer support to obtain bitstreams with half the frame rate. Default %s\n", OPT(param->bEnableTemporalSubLayers));
>      H1("   --hash <integer>              Decoded Picture Hash SEI 0: disabled, 1: MD5, 2: CRC, 3: Checksum. Default %d\n", param->decodedPictureHashSEI);
>      H1("\nReconstructed video options (debugging):\n");
>      H1("-r/--recon <filename>            Reconstructed raw image YUV or Y4M output file name\n");
> _______________________________________________
> x265-devel mailing list
> x265-devel at videolan.org
> https://mailman.videolan.org/listinfo/x265-devel

-- 
Steve Borho


More information about the x265-devel mailing list