为了简化OBS操作,我们需要将录像文件最好是保存到exe当前目录下,这样用户就可以不用到“设置“里面设置了;
通过查看obssetting.ui,我们知道,路径设置的lineedit是advOutRecPath;
我看查看下SaveOutputSettings这个函数:
他有调用:SaveEdit(ui->advOutRecPath, "AdvOut", "RecFilePath");
在这个里面:
if (WidgetChanged(widget))
config_set_string(main->Config(), section, value, QT_TO_UTF8(widget->text()));
最后调用:
main->ResetOutputs();
那么,我们只要也用config_set_string设置下路径,然后调用ResetOutputs即可;
来试试:
QString path;
QDir dir;
path = dir.currentPath();
QDir recordDir;
QString recordPath = path + "/records";
bool exist = recordDir.exists(recordPath);
if (!exist) {
recordDir.mkdir(recordPath);
}
config_set_string(main->Config(), "AdvOut", "RecFilePath", TOOL::QStr2Str(TOOL::GBK2UTF8(recordPath)).c_str());
main->ResetOutputs();
ok了,哈哈,大功告成!