VTM18.0 cfg增k-v记录 及error:unknown potion解决

这篇博客讲述了如何在bitstream.cfg文件中添加自定义操作参数,并在VTM的EncAppCfg.cpp的parseCfg函数中进行解析。作者强调了在VTM中使用批处理和预编译的exe文件以简化视频编码过程的重要性,同时提醒注意在读取配置文件时遵循VTM的特定方法。
摘要由CSDN通过智能技术生成

如果在cfg文件里加入自己的一个操作参数,那么你不仅需要读取它,还需要在VTM自带的解析cfg的类和成员函数里加上你的东西。

写入bitstream.cfg

例如,我想在bitstream文件里加入我自定义的add option,那么我需要在文件的 I/O下写入

addabcd                                 : 1

当然了如果你用encoder的cfg的话,自然就加在这个cfg文件下就可以。

读文件操作 

读文件的操作有很多,c++提供很多读文件的方式,奈何c++学艺不精,无法一一列举相应的读文件模式,实在抱歉。

    ifstream infile("bitstream.cfg"); //读 bitstream.cfg
    string cfginf;  // 用来保存inf
    char readcfgc;
    bool partRecurRequest;
    while (!infile.eof())
    {
      infile >> readcfgc;
      cfginf.push_back(readcfgc);
    }
    infile.close(); //关闭

好了,如果这样你觉得就结束了,那么程序运行时就报错了,也就是标题中出现的error。

读文件的操作并没有什么问题,但VTM读取cfg有自己的一套方法,你还需要在如下程序段上加入自己的东西:

EncAppCfg.cpp 下的 parseCfg 函数内

找到这个位置,然后加入你的写的内容,然后加入同名的成员变量即可。

找成员变量的定义所在,只用找下面已有定义的成员变量,转到定义即可。


VTM的使用应当越简洁越好,能用批处理就用批处理,能用生成的exe就用exe,做视频编码免不了跑大量的600帧代码,所以要尽可能做的方便,简单。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值