shithub: openh264

ref: 656b00ebcff6c80fb50c601354d6af900d29884e
dir: /testbin/welsenc.cfg/

View raw version
# Cisco Scalable H.264/AVC Extension Encoder Configuration File

#============================== GENERAL ==============================
UsageType                        0              # 0: camera video 1:screen content
SimulcastAVC                     0              # 0: use SVC syntax for higher layers; 1: use Simulcast AVC
SourceWidth                      320            # input video width
SourceHeight                     192            # input video height
InputFile       ../res/CiscoVT2people_320x192_12fps.yuv # Input  file
OutputFile                       test.264       # Bitstream file
MaxFrameRate                     30             # Maximum frame rate [Hz]
FramesToBeEncoded                -1             # Number of frames (at input frame rate)

TemporalLayerNum                 2              # temporal layer number(1--4)
IntraPeriod                      0              # Intra Period ( multipler of GoP size or -1)
SpsPpsIDStrategy                 1              # sps/pps id strategy(0-4):
                                                #   0: const id, 1: increasing id, 2: sps list,
                                                #   3: sps list & pps increase, 4: sps/pps list

EnableFrameCropping              1              # enable frame cropping flag
EntropyCodingModeFlag            0              # 0:cavlc 1:cabac
MaxNalSize                       0              # Unit:Byte, Maximum Nal size
ComplexityMode                   0              # 0:low complexity mode 1:medium complexity mode
                                                # 2:high complexity mode
#============================== LOOP FILTER ==============================
LoopFilterDisableIDC             0              # Loop filter idc (0: on, 1: off,
                                                # 2: on except for slice boundaries,
                                                # 3: two stage. slice boundries on in second stage
                                                # 4: Luma on but Chroma off (w.r.t. idc=0)
                                                # 5: Luma on except on slice boundaries, but Chroma off in enh. layer (w.r.t. idc=2)
                                                # 6: Luma on in two stage. slice boundries on in second stage, but Chroma off (w.r.t. idc=3)
LoopFilterAlphaC0Offset          0              # AlphaOffset(-6..+6): valid range
LoopFilterBetaOffset             0              # BetaOffset (-6..+6): valid range
#============================== SOFTWARE IMPLEMENTATION ==============================
MultipleThreadIdc                1              # 0: auto(dynamic imp. internal encoder),
                                                # 1: multiple threads imp. disabled,
                                                # >1: count number of threads
UseLoadBalancing                 1              # under particular slice mode, when multi-threading is used, whether apply dynamic slicing for load balancing

#============================== RATE CONTROL ==============================
RCMode                           0              # -1: rc off mode, 0: quality mode, 1: bitrate mode,
                                                # 2: buffer based mode,can't control bitrate,
                                                # 3: bitrate mode based on timestamp input
TargetBitrate                    5000           # Unit: kbps, controled by EnableRC also
MaxOverallBitrate                0              # Unit: kbps, max bitrate overall, 0 - unspecified
EnableFrameSkip                  1              # Enable Frame Skip
MaxQp                            51             # maximum quant
MinQp                            0              # minimum quant
#============================== DENOISE CONTROL ==============================
EnableDenoise                    0              # Enable Denoise (1: enable, 0: disable)

#============================== SCENE CHANGE DETECTION CONTROL =======================
EnableSceneChangeDetection       1              # Enable Scene Change Detection (1: enable, 0: disable)

#============================== BACKGROUND DETECTION CONTROL ==============================
EnableBackgroundDetection        1              # BGD control(1: enable, 0: disable)

#============================== ADAPTIVE QUANTIZATION CONTROL =======================
EnableAdaptiveQuantization       1              # Enable Adaptive Quantization (1: enable, 0: disable)

#============================== LONG TERM REFERENCE CONTROL ==============================
EnableLongTermReference          1              # Enable Long Term Reference (1: enable, 0: disable)
LtrMarkPeriod                    30             # Long Term Reference Marking Period

#============================== LAYER DEFINITION ==============================
PrefixNALAddingCtrl              0              # Control flag of adding prefix unit (0: off, 1: on)
                                                # It shall always be on in SVC contexts (i.e. when there are CGS/MGS/spatial enhancement layers)
                                                # Can be disabled when no inter spatial layer prediction in case of its value as 0
NumLayers                        1              # Number of layers
//LayerCfg                         layer0.cfg     # Layer 0 configuration file
//LayerCfg                         layer1.cfg     # Layer 1 configuration file
LayerCfg                         layer2.cfg     # Layer 2 configuration file