⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configfile.h

📁 H.264编码解码器源码(c语言).zip
💻 H
字号:
/*! *********************************************************************** *  \file *     configfile.h *  \brief *     Prototypes for configfile.c and definitions of used structures. *********************************************************************** */#ifndef _CONFIGFILE_H_#define _CONFIGFILE_H_#define DEFAULTCONFIGFILENAME "encoder.cfg"typedef struct {  char *TokenName;  void *Place;  int Type;} Mapping;InputParameters configinput;#ifdef INCLUDED_BY_CONFIGFILE_CMapping Map[] = {    {"IntraPeriod",              &configinput.intra_period,            0},    {"FramesToBeEncoded",        &configinput.no_frames,               0},    {"QPFirstFrame",             &configinput.qp0,                     0},    {"QPRemainingFrame",         &configinput.qpN,                     0},    {"FrameSkip",                &configinput.jumpd,                   0},    {"UseHadamard",              &configinput.hadamard,                0},    {"SearchRange",              &configinput.search_range,            0},    {"NumberReferenceFrames",    &configinput.num_reference_frames,             0},    {"SourceWidth",              &configinput.img_width,               0},    {"SourceHeight",             &configinput.img_height,              0},    {"MbLineIntraUpdate",        &configinput.intra_upd,               0},    {"SliceMode",                &configinput.slice_mode,              0},    {"SliceArgument",            &configinput.slice_argument,          0},    {"UseConstrainedIntraPred",  &configinput.UseConstrainedIntraPred, 0},    {"InputFile",                &configinput.infile,                  1},    {"InputHeaderLength",        &configinput.infile_header,           0},    {"OutputFile",               &configinput.outfile,                 1},    {"ReconFile",                &configinput.ReconFile,               1},    {"TraceFile",                &configinput.TraceFile,               1},    {"NumberBFrames",            &configinput.successive_Bframe,       0},    {"QPBPicture",               &configinput.qpB,                     0},    {"DirectModeType",           &configinput.direct_type,             0},    {"SPPicturePeriodicity",     &configinput.sp_periodicity,          0},    {"QPSPPicture",              &configinput.qpsp,                    0},    {"QPSP2Picture",             &configinput.qpsp_pred,               0},    {"SymbolMode",               &configinput.symbol_mode,             0},    {"OutFileMode",              &configinput.of_mode,                 0},    {"PartitionMode",            &configinput.partition_mode,          0},    {"PictureTypeSequence",      &configinput.PictureTypeSequence,     1},    {"InterSearch16x16",         &configinput.InterSearch16x16,        0},    {"InterSearch16x8",          &configinput.InterSearch16x8 ,        0},    {"InterSearch8x16",          &configinput.InterSearch8x16,         0},    {"InterSearch8x8",           &configinput.InterSearch8x8 ,         0},    {"InterSearch8x4",           &configinput.InterSearch8x4,          0},    {"InterSearch4x8",           &configinput.InterSearch4x8,          0},    {"InterSearch4x4",           &configinput.InterSearch4x4,          0},#ifdef _FULL_SEARCH_RANGE_    {"RestrictSearchRange",      &configinput.full_search,             0},#endif#ifdef _ADAPT_LAST_GROUP_    {"LastFrameNumber",          &configinput.last_frame,              0},#endif#ifdef _CHANGE_QP_    {"ChangeQPP",                &configinput.qpN2,                    0},    {"ChangeQPB",                &configinput.qpB2,                    0},    {"ChangeQPStart",            &configinput.qp2start,                0},#endif    {"RDOptimization",           &configinput.rdopt,                   0},    {"LossRateA",                &configinput.LossRateA,               0},    {"LossRateB",                &configinput.LossRateB,               0},    {"LossRateC",                &configinput.LossRateC,               0},    {"NumberOfDecoders",         &configinput.NoOfDecoders,            0},    {"RestrictRefFrames",        &configinput.RestrictRef ,            0},#ifdef _ADDITIONAL_REFERENCE_FRAME_    {"AdditionalReferenceFrame", &configinput.add_ref_frame,           0},#endif#ifdef _LEAKYBUCKET_    {"NumberofLeakyBuckets",     &configinput.NumberLeakyBuckets,      0},    {"LeakyBucketRateFile",      &configinput.LeakyBucketRateFile,     1},    {"LeakyBucketParamFile",     &configinput.LeakyBucketParamFile,    1},#endif    {"InterlaceCodingOption",    &configinput.InterlaceCodingOption,   0},    {"NumberFramesInEnhancementLayerSubSequence", &configinput.NumFramesInELSubSeq, 0},    {"NumberOfFrameInSecondIGOP",&configinput.NumFrameIn2ndIGOP, 0},    {"RandomIntraMBRefresh",     &configinput.RandomIntraMBRefresh,    0},    {"num_slice_groups_minus1",  &configinput.num_slice_groups_minus1, 0},    {"FmoType",                  &configinput.FmoType,                 0},    {"FmoConfigFileName",        &configinput.FmoConfigFileName,       1},    {"WeightedPrediction",       &configinput.WeightedPrediction,      0},    {"WeightedBiprediction",     &configinput.WeightedBiprediction,    0},    {"StoredBPictures",          &configinput.StoredBPictures,         0},    {"LoopFilterParametersFlag", &configinput.LFSendParameters,        0},    {"LoopFilterDisable",        &configinput.LFDisableIdc,            0},    {"LoopFilterAlphaC0Offset",  &configinput.LFAlphaC0Offset,         0},    {"LoopFilterBetaOffset",     &configinput.LFBetaOffset,            0},    {"SparePictureOption",       &configinput.SparePictureOption,      0},    {"SparePictureDetectionThr", &configinput.SPDetectionThreshold,    0},    {"SparePicturePercentageThr",&configinput.SPPercentageThreshold,   0},    // JVT-D095, JVT-D097    {"FmoTopLeftMB",                  &configinput.top_left_mb,                 0},    {"FmoBottomRightMB",                  &configinput.bottom_right_mb,                 0},    {"FmoChangeDirection",                  &configinput.slice_group_change_direction,                 0},    {"FmoChangeRate",                  &configinput.slice_group_change_rate_minus1,                 0},    // End JVT-D095, JVT-D097    {"UseRedundantSlice", &configinput.redundant_slice_flag, 0}, // JVT-D101    {"PicOrderCntType", &configinput.pic_order_cnt_type, 0},     // POC200301    {"ContextInitMethod",        &configinput.context_init_method,     0},    {"FixedModelNumber",         &configinput.model_number,            0},    {NULL,                       NULL,                                -1}};#endif#ifndef INCLUDED_BY_CONFIGFILE_Cextern Mapping Map[];#endifvoid Configure (int ac, char *av[]);void PatchInputNoFrames();#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -