原理分析:
以下面这个命令行为例:
- avs2qxvid_25h.bat TGFAST-CT 0.24bppx VGA_1:1 PRO G:\TRY\hh.avs
此bat前面一堆都是检测电脑有没有avisynth等必要软件,并设定一
些要调用的程序代称。
首先命令行里有CT,那此bat会自动选择约3%(以前研究的好像是这么多)的片断进行压缩性测试[通过selectrange()实现],另外载入avs后,它会生成一个新avs来判定源avs的分辨率、帧率、时长等参数[主要通过avs中的fps(),width(),height(),framecount()实现].
根据分辨率、帧率、时长以及指定的0.24bit/pix*frame反算出码率***kbps。那么根据3%的片断压缩及反算出的码率得到压缩比**%,根据压缩比**%,选择bin\xvid_presets_25h.csv里的相应preset然后进行正式xvid压缩。
所有数学计算通过用bat调用bin\bc.exe及readline实现。