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

📄 tcodecsettings.cpp.svn-base

📁 ffshow源码
💻 SVN-BASE
📖 第 1 页 / 共 3 页
字号:
   IDFF_enc_alt_curve_use_auto              ,&TcoSettings::alt_curve_use_auto              ,0,0,_l(""),1,     _l("alt_curve_use_auto"),1,   IDFF_enc_alt_curve_auto_str              ,&TcoSettings::alt_curve_auto_str              ,0,100,_l(""),1,     _l("alt_curve_auto_str"),30,   IDFF_enc_alt_curve_min_rel_qual          ,&TcoSettings::alt_curve_min_rel_qual          ,0,100,_l(""),1,     _l("alt_curve_min_rel_qual"),50,   IDFF_enc_alt_curve_use_auto_bonus_bias   ,&TcoSettings::alt_curve_use_auto_bonus_bias   ,0,0,_l(""),1,     _l("alt_curve_use_auto_bonus_bias"),1,   IDFF_enc_alt_curve_bonus_bias            ,&TcoSettings::alt_curve_bonus_bias            ,0,5000,_l(""),1,     _l("alt_curve_bonus_bias"),50,   IDFF_enc_xvid_lum_masking            ,&TcoSettings::xvid_lum_masking            ,0,0,_l(""),1,     _l("xvid_lum_masking"),0,   IDFF_enc_xvid_chromaopt              ,&TcoSettings::xvid_chromaopt              ,0,0,_l(""),1,     _l("xvid_chromaopt"),0,   IDFF_enc_isElimLum                   ,&TcoSettings::isElimLum                   ,0,0,_l(""),1,     _l("isElimLum"),0,   IDFF_enc_elimLumThres                ,&TcoSettings::elimLumThres                ,-1000,1000,_l(""),1,     _l("elimLumThres"),-4,   IDFF_enc_isElimChrom                 ,&TcoSettings::isElimChrom                 ,0,0,_l(""),1,     _l("isElimChrom"),0,   IDFF_enc_elimChromThres              ,&TcoSettings::elimChromThres              ,-1000,1000,_l(""),1,     _l("elimChromThres"),7,   IDFF_enc_is_lavc_nr                  ,&TcoSettings::is_lavc_nr                  ,0,0,_l(""),1,     _l("is_lavc_nr"),0,   IDFF_enc_lavc_nr                     ,&TcoSettings::lavc_nr                     ,0,10000,_l(""),1,     _l("lavc_nr"),100,   IDFF_enc_is_ff_lumi_masking          ,&TcoSettings::is_ff_lumi_masking          ,0,0,_l(""),1,     _l("is_ff_lumi_masking"),0,   IDFF_enc_ff_lumi_masking1000         ,&TcoSettings::ff_lumi_masking1000         ,0,1000,_l(""),1,     _l("ff_lumi_masking1000"),70,   IDFF_enc_is_ff_temporal_cplx_masking ,&TcoSettings::is_ff_temporal_cplx_masking ,0,0,_l(""),1,     _l("is_ff_temporal_cplx_masking"),0,   IDFF_enc_ff_temporal_cplx_masking1000,&TcoSettings::ff_temporal_cplx_masking1000,0,1000,_l(""),1,     _l("ff_temporal_cplx_masking1000"),0,   IDFF_enc_is_ff_spatial_cplx_masking  ,&TcoSettings::is_ff_spatial_cplx_masking  ,0,0,_l(""),1,     _l("is_ff_spatial_cplx_masking"),0,   IDFF_enc_ff_spatial_cplx_masking1000 ,&TcoSettings::ff_spatial_cplx_masking1000 ,0,1000,_l(""),1,     _l("ff_spatial_cplx_masking1000"),0,   IDFF_enc_is_ff_p_masking             ,&TcoSettings::is_ff_p_masking             ,0,0,_l(""),1,     _l("is_ff_p_masking"),0,   IDFF_enc_ff_p_masking1000            ,&TcoSettings::ff_p_masking1000            ,0,1000,_l(""),1,     _l("ff_p_masking1000"),0,   IDFF_enc_is_ff_dark_masking          ,&TcoSettings::is_ff_dark_masking          ,0,0,_l(""),1,     _l("is_ff_dark_masking"),0,   IDFF_enc_ff_dark_masking1000         ,&TcoSettings::ff_dark_masking1000         ,0,1000,_l(""),1,     _l("ff_dark_masking1000"),100,   IDFF_enc_is_ff_border_masking        ,&TcoSettings::is_ff_border_masking        ,0,0,_l(""),1,     _l("is_ff_border_masking"),0,   IDFF_enc_ff_border_masking1000       ,&TcoSettings::ff_border_masking1000       ,0,1000,_l(""),1,     _l("ff_border_masking1000"),0,   IDFF_enc_ff_naq                      ,&TcoSettings::ff_naq                      ,0,0,_l(""),1,     _l("ff_naq"),1,   IDFF_enc_isSkalMasking               ,&TcoSettings::isSkalMasking               ,0,0,_l(""),1,     _l("isSkalMasking"),0,   IDFF_enc_skalMaskingAmp              ,&TcoSettings::skalMaskingAmp              ,0,4000,_l(""),1,     _l("skalMaskingAmp"),800,   IDFF_enc_theo_hq              ,&TcoSettings::theo_hq              ,0,0,_l(""),1,     _l("theo_hq"),0,   IDFF_enc_theo_sharpness       ,&TcoSettings::theo_sharpness       ,0,2,_l(""),1,     _l("theo_sharpness"),1,   IDFF_enc_theo_noisesensitivity,&TcoSettings::theo_noisesensitivity,0,6,_l(""),1,     _l("theo_noisesensitivity"),1,   IDFF_enc_raw_fourcc,(TintVal)&TcoSettings::raw_fourcc,0,0,_l(""),1,     _l("raw_fourcc"),FOURCC_RGB2,   IDFF_enc_x264_max_ref_frames             ,&TcoSettings::x264_max_ref_frames             , 1,  16,_l(""),1,     _l("x264_max_ref_frames"),1,   IDFF_enc_x264_cabac                      ,&TcoSettings::x264_cabac                      , 0,   0,_l(""),1,      _l("x264_cabac"),1,   IDFF_enc_x264_me_inter                   ,&TcoSettings::x264_me_inter                   , 1,   1,_l(""),1,     _l("x264_me_inter2"),X264_ANALYSE_I4x4|X264_ANALYSE_I8x8|X264_ANALYSE_PSUB16x16|X264_ANALYSE_BSUB16x16,   IDFF_enc_x264_me_intra                   ,&TcoSettings::x264_me_intra                   , 1,   1,_l(""),1,     _l("x264_me_intra2"),X264_ANALYSE_I4x4|X264_ANALYSE_I8x8,   IDFF_enc_x264_me_subpelrefine            ,&TcoSettings::x264_me_subpelrefine            , 1,   6,_l(""),1,     _l("x264_me_subpelrefine"),5,   IDFF_enc_x264_mv_range                   ,&TcoSettings::x264_mv_range                   , 1,1024,_l(""),1,      _l("x264_mv_range"),512,   IDFF_enc_x264_me_method                  ,&TcoSettings::x264_me_method                  , 0,   3,_l(""),1,     _l("x264_me_method"),X264_ME_HEX,   IDFF_enc_x264_me_range                   ,&TcoSettings::x264_me_range                   , 4,1024,_l(""),1,     _l("x264_me_range"),16,   IDFF_enc_x264_i_direct_mv_pred           ,&TcoSettings::x264_i_direct_mv_pred           , 0,   3,_l(""),1,     _l("x264_i_direct_mv_pred"),X264_DIRECT_PRED_SPATIAL,   IDFF_enc_x264_i_deblocking_filter_alphac0,&TcoSettings::x264_i_deblocking_filter_alphac0,-6,   6,_l(""),1,     _l("x264_i_deblocking_filter_alphac0"),0,   IDFF_enc_x264_i_deblocking_filter_beta   ,&TcoSettings::x264_i_deblocking_filter_beta   ,-6,   6,_l(""),1,     _l("x264_i_deblocking_filter_beta"),0,   IDFF_enc_x264_b_bframe_pyramid           ,&TcoSettings::x264_b_bframe_pyramid           , 0,   0,_l(""),1,     _l("x264_b_bframe_pyramid"),0,   IDFF_enc_x264_b_aud                      ,&TcoSettings::x264_b_aud                      , 0,   0,_l(""),1,     _l("x264_b_aud"),0,   IDFF_enc_x264_mixed_ref                  ,&TcoSettings::x264_mixed_ref                  , 0,   0,_l(""),1,     _l("x264_mixed_ref"),0,   IDFF_enc_x264_b_dct_decimate             ,&TcoSettings::x264_b_dct_decimate             , 0,   0,_l(""),1,     _l("x264_b_dct_decimate"),1,   IDFF_enc_x264_is_aq                      ,&TcoSettings::x264_is_aq                      , 0,   0,_l(""),1,     _l("x264_is_aq"),0,   IDFF_enc_x264_aq_strength100             ,&TcoSettings::x264_aq_strength100             , 1, 100,_l(""),1,     _l("x264_aq_strength100"),30,   IDFF_enc_x264_f_aq_sensitivity           ,&TcoSettings::x264_f_aq_sensitivity           , 1,  30,_l(""),1,     _l("x264_f_aq_sensitivity"),15,   0,  }; addOptions(iopts);  static const TstrOption sopts[]=  {   IDFF_enc_ff1_stats_flnm,(TstrVal)&TcoSettings::ff1_stats_flnm,MAX_PATH,_l(""),1,     _l("ff1_stats_flnm"),_l("\\video.ffstats"),   IDFF_enc_storeExtFlnm  ,(TstrVal)&TcoSettings::storeExtFlnm  ,MAX_PATH,_l(""),1,     _l("storeExtFlnm"),_l(""),   IDFF_enc_stats1flnm,(TstrVal)&TcoSettings::stats1flnm,MAX_PATH,_l(""),1,     _l("stats1flnm"),_l("\\video.stats"),   IDFF_enc_stats2flnm,(TstrVal)&TcoSettings::stats2flnm,MAX_PATH,_l(""),1,     _l("stats2flnm"),_l("\\videogk.stats"),   0  }; addOptions(sopts); setOnChange(IDFF_enc_forceIncsp,this,&TcoSettings::onIncspChange); setOnChange(IDFF_enc_incsp,this,&TcoSettings::onIncspChange);  static const TcreateParamList1 listAspectMode(aspectModes);setParamList(IDFF_enc_aspectMode,&listAspectMode); static const TcreateParamList1 listHuffYUVcaps(huffYUVcsps);setParamList(IDFF_enc_huffyuv_csp,&listHuffYUVcaps); static const TcreateParamList1 listHuffYUVpreds(huffYUVpreds);setParamList(IDFF_enc_huffyuv_pred,&listHuffYUVpreds); static const TcreateParamList1 listFFV1coders(ffv1coders);setParamList(IDFF_enc_ffv1_coder,&listFFV1coders); static const TcreateParamList2<TcspFcc> listFFV1csp(ffv1csps,&TcspFcc::name);setParamList(IDFF_enc_ffv1_csp,&listFFV1csp); static const TcreateParamList1 listMuxer(Tmuxer::muxers);setParamList(IDFF_enc_muxer,&listMuxer); static const TcreateParamList1 listX264meMethod(x264_me_methods);setParamList(IDFF_enc_x264_me_method,&listX264meMethod);}void TcoSettings::saveReg(void){ TregOpRegWrite t(HKEY_CURRENT_USER,FFDSHOW_REG_PARENT _l("\\") FFDSHOWENC); reg_op(t);}void TcoSettings::loadReg(void){ TregOpRegRead t(HKEY_CURRENT_USER,FFDSHOW_REG_PARENT _l("\\") FFDSHOWENC); reg_op(t); fillIncsps();}int TcoSettings::isInCredits(int frame) const{ if (isCreditsStart && frame>=creditsStartBegin && frame<=creditsStartEnd)  return CREDITS_POS::START; else if (isCreditsEnd && frame>=creditsEndBegin && frame<=creditsEndEnd)  return CREDITS_POS::END; else   return CREDITS_POS::NONE;}int TcoSettings::getQuantType(int quant) const{ switch (quant_type)  {   case QUANT::MOD:    return quant<4?QUANT::MPEG:QUANT::H263;   case QUANT::MOD_NEW:    return quant<4?QUANT::H263:QUANT::MPEG;    default:    return quant_type;  }}const DVprofile* TcoSettings::getDVprofile(unsigned int dx,unsigned int dy,PixelFormat lavc_pix_fmt) const{ if (dv_profile==DV_PROFILE_AUTO)  {   AVCodecContext avctx;   avctx.width=dx;   avctx.height=dy;   avctx.pix_fmt=lavc_pix_fmt;   return dv_codec_profile(&avctx);  } else  {   const DVprofile *profile=dv_profiles+dv_profile;   return (profile->width==(int)dx && profile->height==(int)dy && profile->pix_fmt==lavc_pix_fmt)?profile:NULL;  } }std::vector<const DVprofile*> TcoSettings::getDVprofile(unsigned int dx,unsigned int dy) const{ std::vector<const DVprofile*> profiles; if (dv_profile==DV_PROFILE_AUTO)  {   for (int i=0; i<countof(dv_profiles);i++)    if ((int)dx==dv_profiles[i].width && (int)dy==dv_profiles[i].height)     profiles.push_back(dv_profiles+i);  } else  {   const DVprofile *profile=dv_profiles+dv_profile;   if (profile->width==(int)dx && profile->height==(int)dy)    profiles.push_back(profile);   }  return profiles;}void TcoSettings::onIncspChange(int,int){ fillIncsps();}void TcoSettings::fillIncsps(void){ incsps.clear(); if (forceIncsp)  if (incspFourcc<10)   {    for (int i=0;i<FF_CSPS_NUM;i++)     if (csp_inFOURCCmask(1<<i,incspFourcc))      incsps.push_back(cspInfos+i);   }     else   incsps.push_back(csp_getInfoFcc(incspFourcc));}Rational TcoSettings::sar(unsigned int dx,unsigned int dy) const{ switch (aspectMode)  {   case ASPECT_SAR:    return Rational(sarX1000,sarY1000);   default:   case ASPECT_DAR:    {     Trect r(0,0,dx,dy);     r.setDar(Rational(darX1000,darY1000));     return r.sar;    }  }}Rational TcoSettings::dar(unsigned int dx,unsigned int dy) const{ switch (aspectMode)  {   case ASPECT_SAR:    return Trect(0,0,dx,dy,sarX1000,sarY1000).dar();   default:   case ASPECT_DAR:    return Rational(darX1000,darY1000);  }}

⌨️ 快捷键说明

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