nixpkgs/pkgs/applications/video/kdenlive/kdenlive-newmlt.patch

71 lines
3.8 KiB
Diff
Raw Normal View History

From http://kdenlive.org/forum/cant-start-kdnlive-sdl-module-missing-mlt
Kdenlive 0.8 tries to detect mlt by reading from stderr, but between
mlt 0.7.2 and 0.7.4 mlt this has changed from stderr to stdout.
===================================================================
--- kdenlive-0.8/src.orig/wizard.cpp 2011-04-26 21:44:22.000000000 +0200
+++ kdenlive-0.8/src/wizard.cpp 2011-07-21 18:22:18.470831892 +0200
@@ -214,7 +214,7 @@
button(QWizard::NextButton)->setEnabled(false);
} else {
checkProcess.waitForFinished();
- QByteArray result = checkProcess.readAllStandardError();
+ QByteArray result = checkProcess.readAllStandardOutput();
// Check MLT avformat module
QTreeWidgetItem *avformatItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("Avformat module (FFmpeg)"));
@@ -246,7 +246,7 @@
kDebug() << "// Error querying MLT's version";
} else {
checkProcess.waitForFinished();
- mltVersion = checkProcess.readAllStandardError();
+ mltVersion = checkProcess.readAllStandardOutput();
mltVersion = mltVersion.section('\n', 0, 0).simplified();
mltVersion = mltVersion.section(' ', -1).simplified();
version = 1000 * mltVersion.section('.', 0, 0).toInt() + 100 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt();
@@ -275,7 +275,7 @@
kDebug() << "// Error parsing MLT's avformat codecs";
} else {
checkProcess2.waitForFinished();
- QByteArray codecList = checkProcess2.readAllStandardError();
+ QByteArray codecList = checkProcess2.readAllStandardOutput();
QString acodecList(codecList);
QStringList result;
QStringList alist = acodecList.split('\n', QString::SkipEmptyParts);
@@ -292,7 +292,7 @@
kDebug() << "// Error parsing MLT's avformat codecs";
} else {
checkProcess2.waitForFinished();
- QByteArray codecList = checkProcess2.readAllStandardError();
+ QByteArray codecList = checkProcess2.readAllStandardOutput();
QString vcodecList(codecList);
QStringList result;
QStringList vlist = vcodecList.split('\n', QString::SkipEmptyParts);
@@ -309,7 +309,7 @@
kDebug() << "// Error parsing MLT's avformat codecs";
} else {
checkProcess2.waitForFinished();
- QByteArray codecList = checkProcess2.readAllStandardError();
+ QByteArray codecList = checkProcess2.readAllStandardOutput();
QString vcodecList(codecList);
QStringList result;
QStringList vlist = vcodecList.split('\n', QString::SkipEmptyParts);
@@ -606,7 +606,7 @@
checkProcess.waitForFinished();
- QByteArray result = checkProcess.readAllStandardError();
+ QByteArray result = checkProcess.readAllStandardOutput();
if (!result.contains("- avformat")) errorMessage.append(i18n("MLT's avformat (FFMPEG) module not found. Please check your FFMPEG and MLT install. Kdenlive will not work until this issue is fixed.") + "\n");*/
QProcess checkProcess2;
@@ -616,7 +616,7 @@
checkProcess2.waitForFinished();
- QByteArray result = checkProcess2.readAllStandardError();
+ QByteArray result = checkProcess2.readAllStandardOutput();
if (!result.contains("sdl") || !result.contains("sdl_preview")) errorMessage.append(i18n("MLT's SDL module not found. Please check your MLT install. Kdenlive will not work until this issue is fixed.") + '\n');
if (!errorMessage.isEmpty()) {