From patchwork Tue Mar 19 06:16:54 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jing SUN X-Patchwork-Id: 12352 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id A1CF644890C for ; Tue, 19 Mar 2019 08:17:06 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7B94A689CE9; Tue, 19 Mar 2019 08:17:06 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 63225680518 for ; Tue, 19 Mar 2019 08:16:59 +0200 (EET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Mar 2019 23:16:57 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.58,496,1544515200"; d="scan'208";a="329877186" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by fmsmga005.fm.intel.com with ESMTP; 18 Mar 2019 23:16:57 -0700 Received: from fmsmsx111.amr.corp.intel.com (10.18.116.5) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.408.0; Mon, 18 Mar 2019 23:16:56 -0700 Received: from shsmsx108.ccr.corp.intel.com (10.239.4.97) by fmsmsx111.amr.corp.intel.com (10.18.116.5) with Microsoft SMTP Server (TLS) id 14.3.408.0; Mon, 18 Mar 2019 23:16:56 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.74]) by SHSMSX108.ccr.corp.intel.com ([169.254.8.57]) with mapi id 14.03.0415.000; Tue, 19 Mar 2019 14:16:54 +0800 From: "Sun, Jing A" To: "ffmpeg-devel@ffmpeg.org" Thread-Topic: [PATCH v7 2/2] doc: Add libsvt_hevc encoder docs Thread-Index: AQHU19BQaLfvD2QZVE2py7+gkh7nPaYShsBg Date: Tue, 19 Mar 2019 06:16:54 +0000 Message-ID: References: <1552287748-11835-1-git-send-email-jing.a.sun@intel.com> In-Reply-To: <1552287748-11835-1-git-send-email-jing.a.sun@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [FFmpeg-devel] [PATCH v7 2/2] doc: Add libsvt_hevc encoder docs X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: "Huang, Zhengxu" , "Tmar, Hassene" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" -----Original Message----- From: Sun, Jing A Sent: Monday, March 11, 2019 3:02 PM To: ffmpeg-devel@ffmpeg.org Cc: Sun, Jing A ; Jun Zhao ; Huang, Zhengxu ; Tmar, Hassene Subject: [PATCH v7 2/2] doc: Add libsvt_hevc encoder docs Add docs for libsvt_hevc encoder in encoders.texi and general.texi Signed-off-by: Jun Zhao Signed-off-by: Huang, Zhengxu Signed-off-by: hassene Signed-off-by: Jing SUN --- doc/encoders.texi | 145 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ doc/general.texi | 8 +++ 2 files changed, 153 insertions(+) ---------------------------------- Hi maintainers, I have made modification for this patch. Is the modified version good to be picked? -Jing diff --git a/doc/encoders.texi b/doc/encoders.texi index 29625ba..0b30776 100644 --- a/doc/encoders.texi +++ b/doc/encoders.texi @@ -1569,6 +1569,151 @@ Set maximum NAL size in bytes. Allow skipping frames to hit the target bitrate if set to 1. @end table +@section libsvt_hevc + +Scalable Video Technology for HEVC encoder (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 +@command{pkg-config}. + +For more information about the library see +@url{https://github.com/intel/SVT-HEVC.git}. + +@subsection Options + +The following FFmpeg global options affect the configurations of the +libsvt_hevc encoder. + +@table @option +@item b (@emph{bitrate}) +Set the bitrate (as a number of bits per second). Default is 7M. + +@item g / @option{gop_size} +Set the GOP size. Default is -2 (unspecified). + +@item flags +cgop +Enable closed GOP. + +@item qmin (@emph{min-q}) +Defaults 10 + +@item qmax (@emph{max-q}) +Defaults 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. +Has to be qmax > = qmin). + +@item profile (@emph{profile}) +Set profile restrictions. Can assume one of the following possible values: + +Default is 2 (main10). + +@table @samp +@item main +main profile +@item main10 +main10 profile +@end table + +@item level + +@option{profile} sets the value of @emph{profile}. +@option{level} sets the value of @emph{level}. + +The encoder also has its own specific options: + +@table @option +@item vui +Enables or disables the vui structure in the HEVC elementary bitstream. +0 = Off, 1 = On. Default is 0 (Off). + +@item aud (@emph{aud}) +Enable use of access unit delimiters when set to 1. Default is 0 (Off). + +@item hielevel +Set hierarchical levels. Can assume one of the following possible values: + +Default is 3 (4level). + +@table @samp +@item flat +none hierarchy level +@item 2level +2-level hierarchy +@item 3level +3-level hierarchy +@item 4level +4-level hierarchy +@end table + +@item la_depth +Set look-ahead depth, depending on bit rate control mode @option{rc}, +when bit rate control mode is set to vbr it's best to set this +parameter to be equal to the intra period value (such is the default +set by the encoder), when cqp is chosen, then a look ahead is recommended. The range is from @var{0-256}. + +@item preset +A preset defining the quality vs density tradeoff point that the +encoding is to be performed at.(e.g. 0 is the highest quality mode, +12 is the highest density mode). The range is from @var{0-12}. Default is 9. + +@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: + +Default is 1 (main). + +@table @samp +@item main +main tier +@item high +high tier +@end table + +@item rc +Set bit rate control mode. Can assume one of the following possible values: + +Default is 0 (cqp). + +@table @samp +@item cqp +Constant QP (CQP) mode +@item vbr +Variable Bit Rate (VBR) mode +@end table + +@item qp +Initial quantization parameter for the intra pictures used when +@option{rc} is cqp mode. The range is from @var{0-51}. Default is 32. + +@item sc_detection +Enables or disables the scene change detection algorithm. Default is 0 (disable). + +@item tune +Set quality tuning mode. Can assume one of the following possible values: + +Default is 1 (oq). + +@table @samp +@item sq +Visually optimized mode +@item oq +PSNR / SSIM optimized mode +@item vmaf +VMAF optimized mode +@end table + +@item bl_mode +Enables or disables Random Access Prediction. Default is 0 (disable). +@end table + +@item hdr +High dynamic range input. Default is 0 (disable). +@end table + @section libtheora libtheora Theora encoder wrapper. diff --git a/doc/general.texi b/doc/general.texi index fe94c40..f90e188 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -234,6 +234,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}. +@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