Struct openh264_sys::TagEncParamExt
[−]
[src]
#[repr(C)]pub struct TagEncParamExt { pub iUsageType: EUsageType, pub iPicWidth: c_int, pub iPicHeight: c_int, pub iTargetBitrate: c_int, pub iRCMode: RC_MODES, pub fMaxFrameRate: f32, pub iTemporalLayerNum: c_int, pub iSpatialLayerNum: c_int, pub sSpatialLayers: [SSpatialLayerConfig; 4], pub iComplexityMode: ECOMPLEXITY_MODE, pub uiIntraPeriod: c_uint, pub iNumRefFrame: c_int, pub eSpsPpsIdStrategy: EParameterSetStrategy, pub bPrefixNalAddingCtrl: bool, pub bEnableSSEI: bool, pub bSimulcastAVC: bool, pub iPaddingFlag: c_int, pub iEntropyCodingModeFlag: c_int, pub bEnableFrameSkip: bool, pub iMaxBitrate: c_int, pub iMaxQp: c_int, pub iMinQp: c_int, pub uiMaxNalSize: c_uint, pub bEnableLongTermReference: bool, pub iLTRRefNum: c_int, pub iLtrMarkPeriod: c_uint, pub iMultipleThreadIdc: c_ushort, pub bUseLoadBalancing: bool, pub iLoopFilterDisableIdc: c_int, pub iLoopFilterAlphaC0Offset: c_int, pub iLoopFilterBetaOffset: c_int, pub bEnableDenoise: bool, pub bEnableBackgroundDetection: bool, pub bEnableAdaptiveQuant: bool, pub bEnableFrameCroppingFlag: bool, pub bEnableSceneChangeDetect: bool, pub bIsLosslessLink: bool, }
@brief SVC Encoding Parameters extention
Fields
iUsageType: EUsageType
< application type;1.CAMERA_VIDEO_REAL_TIME:camera video signal;2.SCREEN_CONTENT_REAL_TIME:screen content signal;
iPicWidth: c_int
< width of picture in luminance samples (the maximum of all layers if multiple spatial layers presents)
iPicHeight: c_int
< height of picture in luminance samples((the maximum of all layers if multiple spatial layers presents)
iTargetBitrate: c_int
< target bitrate desired, in unit of bps
iRCMode: RC_MODES
< rate control mode
fMaxFrameRate: f32
< maximal input frame rate
iTemporalLayerNum: c_int
< temporal layer number, max temporal layer = 4
iSpatialLayerNum: c_int
< spatial layer number,1<= iSpatialLayerNum <= MAX_SPATIAL_LAYER_NUM, MAX_SPATIAL_LAYER_NUM = 4
sSpatialLayers: [SSpatialLayerConfig; 4]
iComplexityMode: ECOMPLEXITY_MODE
uiIntraPeriod: c_uint
< period of Intra frame
iNumRefFrame: c_int
< number of reference frame used
eSpsPpsIdStrategy: EParameterSetStrategy
< different stategy in adjust ID in SPS/PPS: 0- constant ID, 1-additional ID, 6-mapping and additional
bPrefixNalAddingCtrl: bool
< false:not use Prefix NAL; true: use Prefix NAL
bEnableSSEI: bool
< false:not use SSEI; true: use SSEI -- TODO: planning to remove the interface of SSEI
bSimulcastAVC: bool
< (when encoding more than 1 spatial layer) false: use SVC syntax for higher layers; true: use Simulcast AVC
iPaddingFlag: c_int
< 0:disable padding;1:padding
iEntropyCodingModeFlag: c_int
< 0:CAVLC 1:CABAC.
bEnableFrameSkip: bool
< False: don't skip frame even if VBV buffer overflow.True: allow skipping frames to keep the bitrate within limits
iMaxBitrate: c_int
< the maximum bitrate, in unit of bps, set it to UNSPECIFIED_BIT_RATE if not needed
iMaxQp: c_int
< the maximum QP encoder supports
iMinQp: c_int
< the minmum QP encoder supports
uiMaxNalSize: c_uint
< the maximum NAL size. This value should be not 0 for dynamic slice mode
bEnableLongTermReference: bool
< 1: on, 0: off
iLTRRefNum: c_int
< the number of LTR(long term reference),TODO: not supported to set it arbitrary yet
iLtrMarkPeriod: c_uint
< the LTR marked period that is used in feedback.
iMultipleThreadIdc: c_ushort
< 1 # 0: auto(dynamic imp. internal encoder); 1: multiple threads imp. disabled; lager than 1: count number of threads;
bUseLoadBalancing: bool
< only used when uiSliceMode=1 or 3, will change slicing of a picture during the run-time of multi-thread encoding, so the result of each run may be different
iLoopFilterDisableIdc: c_int
< 0: on, 1: off, 2: on except for slice boundaries
iLoopFilterAlphaC0Offset: c_int
< AlphaOffset: valid range [-6, 6], default 0
iLoopFilterBetaOffset: c_int
< BetaOffset: valid range [-6, 6], default 0
bEnableDenoise: bool
< denoise control
bEnableBackgroundDetection: bool
< background detection control //VAA_BACKGROUND_DETECTION //BGD cmd
bEnableAdaptiveQuant: bool
< adaptive quantization control
bEnableFrameCroppingFlag: bool
< enable frame cropping flag: TRUE always in application
bEnableSceneChangeDetect: bool
bIsLosslessLink: bool
< LTR advanced setting
Trait Implementations
impl Copy for TagEncParamExt
[src]
impl Clone for TagEncParamExt
[src]
fn clone(&self) -> TagEncParamExt
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more