[FFmpeg-devel] [PATCH v17 2/2] doc: Add libsvt_hevc encoder docs

Jing Sun jing.a.sun at intel.com
Mon Aug 19 08:55:02 EEST 2019


Add docs for libsvt_hevc encoder in encoders.texi and general.texi

Signed-off-by: Jun Zhao <jun.zhao at intel.com>
Signed-off-by: Zhengxu Huang <zhengxu.huang at intel.com>
Signed-off-by: Hassene Tmar <hassene.tmar at intel.com>
Signed-off-by: Jing Sun <jing.a.sun at intel.com>
---
 doc/encoders.texi | 149 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 doc/general.texi  |   8 +++
 2 files changed, 157 insertions(+)

diff --git a/doc/encoders.texi b/doc/encoders.texi
index eefd124..aa5bcda 100644
--- a/doc/encoders.texi
+++ b/doc/encoders.texi
@@ -1640,6 +1640,155 @@ Set maximum NAL size in bytes.
 Allow skipping frames to hit the target bitrate if set to 1.
 @end table
 
+ at section libsvt_hevc
+
+Scalable Video Technology for HEVC (SVT-HEVC) encoder wrapper.
+
+This encoder requires the presence of the headers and
+library during configuration. You need to explicitly configure the
+build with @code{--enable-libsvthevc}. The library is detected using
+ at command{pkg-config}.
+
+For more information about the library see
+ at url{https://github.com/intel/SVT-HEVC.git}.
+
+ at subsection Options
+
+The following FFmpeg global options affect the configurations of the
+libsvt_hevc encoder:
+
+ at table @option
+ at item b  (@emph{bitrate})
+Set the bitrate (as a number of bits per second). Default is 7M.
+
+ at item g  / @option{gop_size}
+Set the GOP size. Default is -2 (unspecified).
+
+ at item flags +cgop
+Enable closed GOP.
+
+ at item qmin (@emph{min-q})
+Default is 10
+
+ at item qmax (@emph{max-q})
+Default is 48
+
+Set minimum/maximum quantisation values.  Valid range is from 0 to 51
+(Only used when bit rate control mode @option{rc} is set to 1(vbr) mode.
+It is required that qmax >= qmin).
+
+ at item profile (@emph{profile})
+Set profile restrictions. Can assume one of the following possible values:
+
+ at table @samp
+ at item main
+main profile
+ at item main10
+main10 profile
+ at item rext
+rext profile
+ at end table
+
+Default is 1 (main).
+
+ at item level (@emph{level})
+
+ at option{level} sets the value of @emph{level}.
+Set level (level_idc). Default is 0 (to be determined by the encoder).
+
+ at end table
+
+The encoder also has its own specific options:
+
+ at table @option
+ at item aud (@emph{aud})
+Enable use of access unit delimiters when set to 1. Default is 0 (Off).
+
+ at item hielevel
+Set hierarchical levels. Can assume one of the following possible values:
+
+ at table @samp
+ at item flat
+flat more
+ at item 1 level
+Minigop size is 2^1
+ at item 2 level
+Minigop size is 2^2
+ at item 3 level
+Minigop size is 2^3
+ at end table
+
+Default is 3 level.
+
+ at item la_depth
+Set look-ahead depth, depending on @option{rc}: for @var{vbr}, it's recommended
+to unset it and use the default value (the intra period); for @var{cqp}, better
+specify the look-ahead depth.
+
+The range is @var{-1-256}. Default is -1 (unset and the default value to be used).
+
+ at item preset
+Set the quality vs density tradeoff point at which the encoding is to be performed.
+Higher perset value, higher density and lower quality.
+
+The range is @var{0-12}. Default is 9.
+
+ at item tier
+Set @emph{general_tier_flag}.  This may affect the level chosen for the stream
+if it is not explicitly specified. Can assume one of the following possible values:
+
+ at table @samp
+ at item main
+main tier
+ at item high
+high tier
+ at end table
+
+Default is 1 (main).
+
+ at item rc
+Set bit rate control mode. Can assume one of the following possible values:
+
+ at table @samp
+ at item cqp
+Constant QP (CQP) mode
+ at item vbr
+Variable Bit Rate (VBR) mode
+ at end table
+
+Default is 0 (cqp).
+
+ at item forced_idr
+Force keyframes to be IDR if set to >=0 (the value sets headers insertion interval). Default is -1 (CRA).
+
+ at item asm_type
+Auto select highest supported asm if set to 1 or C only if 0. Default is 1.
+
+ at item qp
+Initial quantization parameter for the intra pictures used when
+ at option{rc} is cqp mode. The range is from @var{0-51}. Default is 32.
+
+ at item sc_detection
+Enables or disables the scene change detection algorithm. Default is 0 (disabled).
+
+ at item tune
+Set quality tuning mode. Can assume one of the following possible values:
+
+ at table @samp
+ at item sq
+Visually optimized mode
+ at item oq
+PSNR / SSIM optimized mode
+ at item vmaf
+VMAF optimized mode
+ at end table
+
+Default is 1 (oq).
+
+ at item bl_mode
+Enables or disables Random Access Prediction. Default is 0 (disabled).
+ at end table
+
 @section libtheora
 
 libtheora Theora encoder wrapper.
diff --git a/doc/general.texi b/doc/general.texi
index 3c0c803..fa9cd31 100644
--- a/doc/general.texi
+++ b/doc/general.texi
@@ -243,6 +243,14 @@ FFmpeg can use the OpenJPEG libraries for decoding/encoding J2K videos.  Go to
 instructions.  To enable using OpenJPEG in FFmpeg, pass @code{--enable-libopenjpeg} to
 @file{./configure}.
 
+ at section Scalable Video Technology for HEVC
+
+FFmpeg can make use of the SVT-HEVC library for HEVC encoding.
+
+Go to @url{https://github.com/intel/SVT-HEVC.git} and follow the instructions
+for installing the library. Pass @code{--enable-libsvthevc} to configure to
+enable it.
+
 @section TwoLAME
 
 FFmpeg can make use of the TwoLAME library for MP2 encoding.
-- 
1.8.3.1



More information about the ffmpeg-devel mailing list