Display rhubarb processing errors in popup
This commit is contained in:
parent
2d8998c1e6
commit
9776462747
1 changed files with 20 additions and 11 deletions
|
@ -781,11 +781,24 @@ void LipSyncPopup::runRhubarb() {
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
void LipSyncPopup::onOutputReady() {
|
void LipSyncPopup::onOutputReady() {
|
||||||
QString output = m_rhubarb->readAllStandardError().simplified();
|
QString output = m_rhubarb->readAllStandardError().simplified();
|
||||||
int index = output.lastIndexOf("%");
|
output = output.replace("\\n", "\n")
|
||||||
QString newString = output.mid(index - 2, 2);
|
.replace("\\\\", "\\")
|
||||||
m_progressDialog->setValue(newString.toInt());
|
.replace("\\\"", "")
|
||||||
qDebug() << "output: " << output;
|
.replace("\"", "");
|
||||||
|
QStringList outputList =
|
||||||
|
output.mid(2, (output.size() - 4)).split(", ", QString::SkipEmptyParts);
|
||||||
|
if (outputList.size()) {
|
||||||
|
QStringList outputType = outputList.at(0).split(": ");
|
||||||
|
if (outputType.at(1) == "progress") {
|
||||||
|
QStringList outputValue = outputList.at(1).split(": ");
|
||||||
|
double progress = outputValue.at(1).toDouble() * 100.0;
|
||||||
|
m_progressDialog->setValue(progress);
|
||||||
|
} else if (outputType.at(1) == "failure") {
|
||||||
|
QStringList outputReason = outputList.at(1).split(": ");
|
||||||
|
DVGui::warning(tr("Rhubarb Processing Error:\n\n") + outputReason.at(1));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
@ -829,12 +842,8 @@ void LipSyncPopup::onApplyButton() {
|
||||||
int exitCode = -1;
|
int exitCode = -1;
|
||||||
if (m_rhubarb->exitStatus() == QProcess::NormalExit) {
|
if (m_rhubarb->exitStatus() == QProcess::NormalExit) {
|
||||||
exitCode = m_rhubarb->exitCode();
|
exitCode = m_rhubarb->exitCode();
|
||||||
if (exitCode != 0) {
|
// onOuputReady will handle displaying any error messages from rhubarb
|
||||||
DVGui::warning(
|
if (exitCode != 0) return;
|
||||||
tr("An error occurred processing the audio. Please check the audio "
|
|
||||||
"and try again."));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
std::string strResults = results.toStdString();
|
std::string strResults = results.toStdString();
|
||||||
m_startAt->setValue(std::max(1, m_startFrame));
|
m_startAt->setValue(std::max(1, m_startFrame));
|
||||||
|
|
Loading…
Reference in a new issue