From: <j-...@us...> - 2009-04-14 21:29:12
|
Revision: 3305 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3305&view=rev Author: j-b-m Date: 2009-04-14 21:28:58 +0000 (Tue, 14 Apr 2009) Log Message: ----------- Getting ready for MLT 0.3.8 Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-04-14 21:09:57 UTC (rev 3304) +++ trunk/kdenlive/src/wizard.cpp 2009-04-14 21:28:58 UTC (rev 3305) @@ -31,7 +31,7 @@ #include <QXmlStreamWriter> #include <QTimer> -const double recommendedMltVersion = 36; +const double recommendedMltVersion = 38; Wizard::Wizard(bool upgrade, QWidget *parent) : QWizard(parent) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2009-05-25 23:57:36
|
Revision: 3424 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3424&view=rev Author: j-b-m Date: 2009-05-25 23:57:23 +0000 (Mon, 25 May 2009) Log Message: ----------- Add m2ts extension to the list of supported files: http://www.kdenlive.org/mantis/view.php?id=850 Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-05-25 23:39:44 UTC (rev 3423) +++ trunk/kdenlive/src/wizard.cpp 2009-05-25 23:57:23 UTC (rev 3424) @@ -443,7 +443,7 @@ { if (m_extra.installmimes->isChecked()) { QStringList globs; - globs << "*.mts" << "*.m2t" << "*.mod" << "*.ts"; + globs << "*.mts" << "*.m2t" << "*.mod" << "*.ts" << "*.m2ts"; installExtraMimes("video/mpeg", globs); globs.clear(); globs << "*.dv"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <xz...@us...> - 2009-06-04 16:17:27
|
Revision: 3489 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3489&view=rev Author: xzhayon Date: 2009-06-04 16:17:20 +0000 (Thu, 04 Jun 2009) Log Message: ----------- fix a typo and set mlt 0.4.0 as the minimum version supported Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-06-04 16:03:44 UTC (rev 3488) +++ trunk/kdenlive/src/wizard.cpp 2009-06-04 16:17:20 UTC (rev 3489) @@ -194,7 +194,7 @@ mltVersion = mltVersion.section(' ', -1).simplified(); version = 100 * mltVersion.section('.', 0, 0).toInt() + 10 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); kDebug() << "// FOUND MLT version: " << version; - if (version > 34) recentMlt = true; + if (version >= 40) recentMlt = true; } } @@ -499,7 +499,7 @@ { QString errorMessage; if (KdenliveSettings::rendererpath().isEmpty()) { - errorMessage.append(i18n("your MLT installation cannot be found. Install MLT and restart Kdenlive.\n")); + errorMessage.append(i18n("Your MLT installation cannot be found. Install MLT and restart Kdenlive.\n")); } /*QProcess checkProcess; checkProcess.start(KdenliveSettings::rendererpath(), QStringList() << "-query" << "producer"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2009-06-18 14:41:43
|
Revision: 3574 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3574&view=rev Author: j-b-m Date: 2009-06-18 12:44:45 +0000 (Thu, 18 Jun 2009) Log Message: ----------- Small cleanup to MLT version check Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-06-18 12:42:03 UTC (rev 3573) +++ trunk/kdenlive/src/wizard.cpp 2009-06-18 12:44:45 UTC (rev 3574) @@ -168,7 +168,6 @@ } else { avformatItem->setIcon(0, m_okIcon); // Make sure we have MLT > 0.3.4 - bool recentMlt = false; int version = 0; QString mltVersion; QString exepath = KStandardDirs::findExe("pkg-config"); @@ -181,7 +180,6 @@ mltVersion = checkProcess.readAllStandardOutput(); version = 100 * mltVersion.section('.', 0, 0).toInt() + 10 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); kDebug() << "// FOUND MLT's pkgconfig version: " << version; - if (version > 34) recentMlt = true; } } if (version == 0) { @@ -195,21 +193,22 @@ mltVersion = mltVersion.section(' ', -1).simplified(); version = 100 * mltVersion.section('.', 0, 0).toInt() + 10 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); kDebug() << "// FOUND MLT version: " << version; - if (version >= 40) recentMlt = true; } } mltitem->setText(1, i18n("MLT version: %1", mltVersion.simplified())); mltitem->setSizeHint(0, itemSize); - if (version < recommendedMltVersion) { - mltitem->setData(1, Qt::UserRole, i18n("Please upgrade to the latest MLT version")); + if (version < 40) { + mltitem->setData(1, Qt::UserRole, i18n("Your MLT version is unsupported!!!")); mltitem->setIcon(0, m_badIcon); } else { - mltitem->setData(1, Qt::UserRole, i18n("MLT version is correct")); - mltitem->setIcon(0, m_okIcon); - } - - if (recentMlt) { + if (version < recommendedMltVersion) { + mltitem->setData(1, Qt::UserRole, i18n("Please upgrade to the latest MLT version")); + mltitem->setIcon(0, m_badIcon); + } else { + mltitem->setData(1, Qt::UserRole, i18n("MLT version is correct")); + mltitem->setIcon(0, m_okIcon); + } // Check installed audio codecs QProcess checkProcess2; checkProcess2.start(KdenliveSettings::rendererpath(), QStringList() << "noise:" << "-consumer" << "avformat" << "acodec=list"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2009-06-26 23:18:09
|
Revision: 3675 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3675&view=rev Author: j-b-m Date: 2009-06-26 23:18:07 +0000 (Fri, 26 Jun 2009) Log Message: ----------- Fix compilation Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-06-26 22:18:36 UTC (rev 3674) +++ trunk/kdenlive/src/wizard.cpp 2009-06-26 23:18:07 UTC (rev 3675) @@ -352,10 +352,10 @@ if (program.isEmpty()) program = KStandardDirs::findExe("traverso"); if (!program.isEmpty()) KdenliveSettings::setDefaultaudioapp(program); } - if (KdenliveSettings::defaultvideoapp().isEmpty()) { + if (KdenliveSettings::defaultplayerapp().isEmpty()) { KService::Ptr offer = KMimeTypeTrader::self()->preferredService("video/mpeg"); if (offer) - KdenliveSettings::setDefaultvideoapp(KRun::binaryName(offer->exec(), true)); + KdenliveSettings::setDefaultplayerapp(KRun::binaryName(offer->exec(), true)); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <xz...@us...> - 2009-07-08 08:50:31
|
Revision: 3728 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3728&view=rev Author: xzhayon Date: 2009-07-08 08:06:30 +0000 (Wed, 08 Jul 2009) Log Message: ----------- mlt 0.4.5 required (pkg-config integration in cmake module coming soon) Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-07-04 21:06:12 UTC (rev 3727) +++ trunk/kdenlive/src/wizard.cpp 2009-07-08 08:06:30 UTC (rev 3728) @@ -35,7 +35,7 @@ #include <QXmlStreamWriter> #include <QTimer> -const double recommendedMltVersion = 44; +const double recommendedMltVersion = 45; static const char version[] = VERSION; Wizard::Wizard(bool upgrade, QWidget *parent) : This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dde...@us...> - 2009-09-16 07:33:50
|
Revision: 3898 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3898&view=rev Author: ddennedy Date: 2009-09-16 07:33:40 +0000 (Wed, 16 Sep 2009) Log Message: ----------- Suppress detection of recordmydesktop and dvgrab on OS X. Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-09-16 07:18:40 UTC (rev 3897) +++ trunk/kdenlive/src/wizard.cpp 2009-09-16 07:33:40 UTC (rev 3898) @@ -316,6 +316,7 @@ else if (KStandardDirs::findExe("ffplay").isEmpty()) item->setIcon(0, m_badIcon); else item->setIcon(0, m_okIcon); +#ifndef Q_WS_MAC item = new QTreeWidgetItem(m_check.programList, QStringList() << QString() << i18n("Recordmydesktop")); item->setData(1, Qt::UserRole, i18n("Required for screen capture")); item->setSizeHint(0, itemSize); @@ -327,6 +328,7 @@ item->setSizeHint(0, itemSize); if (KStandardDirs::findExe("dvgrab").isEmpty()) item->setIcon(0, m_badIcon); else item->setIcon(0, m_okIcon); +#endif item = new QTreeWidgetItem(m_check.programList, QStringList() << QString() << i18n("Dvdauthor")); item->setData(1, Qt::UserRole, i18n("Required for creation of DVD")); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2009-10-08 17:35:19
|
Revision: 4017 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=4017&view=rev Author: j-b-m Date: 2009-10-08 17:35:13 +0000 (Thu, 08 Oct 2009) Log Message: ----------- get ready for 0.7.6 Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2009-10-08 17:34:08 UTC (rev 4016) +++ trunk/kdenlive/src/wizard.cpp 2009-10-08 17:35:13 UTC (rev 4017) @@ -35,7 +35,7 @@ #include <QXmlStreamWriter> #include <QTimer> -const double recommendedMltVersion = 45; +const double recommendedMltVersion = 46; static const char version[] = VERSION; Wizard::Wizard(bool upgrade, QWidget *parent) : This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2010-02-17 07:37:49
|
Revision: 4314 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=4314&view=rev Author: j-b-m Date: 2010-02-17 07:37:42 +0000 (Wed, 17 Feb 2010) Log Message: ----------- Bump recommended MLT version Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2010-02-17 07:34:24 UTC (rev 4313) +++ trunk/kdenlive/src/wizard.cpp 2010-02-17 07:37:42 UTC (rev 4314) @@ -35,7 +35,7 @@ #include <QXmlStreamWriter> #include <QTimer> -const double recommendedMltVersion = 46; +const double recommendedMltVersion = 50; static const char version[] = VERSION; Wizard::Wizard(bool upgrade, QWidget *parent) : This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2010-02-26 21:43:21
|
Revision: 4342 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=4342&view=rev Author: j-b-m Date: 2010-02-26 21:43:15 +0000 (Fri, 26 Feb 2010) Log Message: ----------- Fix possible confusion in variable name Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2010-02-26 21:38:53 UTC (rev 4341) +++ trunk/kdenlive/src/wizard.cpp 2010-02-26 21:43:15 UTC (rev 4342) @@ -36,7 +36,7 @@ #include <QTimer> const double recommendedMltVersion = 50; -static const char version[] = VERSION; +static const char kdenlive_version[] = VERSION; Wizard::Wizard(bool upgrade, QWidget *parent) : QWizard(parent) @@ -48,7 +48,7 @@ page1->setTitle(i18n("Welcome")); QLabel *label; if (upgrade) - label = new QLabel(i18n("Your Kdenlive version was upgraded to version %1. Please take some time to review the basic settings", QString(version).section(' ', 0, 0))); + label = new QLabel(i18n("Your Kdenlive version was upgraded to version %1. Please take some time to review the basic settings", QString(kdenlive_version).section(' ', 0, 0))); else label = new QLabel(i18n("This is the first time you run Kdenlive. This wizard will let you adjust some basic settings, you will be ready to edit your first movie in a few seconds...")); label->setWordWrap(true); @@ -581,7 +581,7 @@ void Wizard::slotShowWebInfos() { - KRun::runUrl(KUrl("http://kdenlive.org/discover/" + QString(version).section(' ', 0, 0)), "text/html", this); + KRun::runUrl(KUrl("http://kdenlive.org/discover/" + QString(kdenlive_version).section(' ', 0, 0)), "text/html", this); } #include "wizard.moc" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2010-09-14 06:41:04
|
Revision: 4886 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=4886&view=rev Author: j-b-m Date: 2010-09-14 06:40:58 +0000 (Tue, 14 Sep 2010) Log Message: ----------- Fix detection of MLT version and recommand 0.5.10 Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2010-09-14 06:16:52 UTC (rev 4885) +++ trunk/kdenlive/src/wizard.cpp 2010-09-14 06:40:58 UTC (rev 4886) @@ -35,7 +35,7 @@ #include <QXmlStreamWriter> #include <QTimer> -const double recommendedMltVersion = 50; +const double recommendedMltVersion = 510; static const char kdenlive_version[] = VERSION; Wizard::Wizard(bool upgrade, QWidget *parent) : @@ -180,7 +180,7 @@ } else { checkProcess.waitForFinished(); mltVersion = checkProcess.readAllStandardOutput(); - version = 100 * mltVersion.section('.', 0, 0).toInt() + 10 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); + version = 1000 * mltVersion.section('.', 0, 0).toInt() + 100 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); kDebug() << "// FOUND MLT's pkgconfig version: " << version; } } @@ -193,14 +193,14 @@ mltVersion = checkProcess.readAllStandardError(); mltVersion = mltVersion.section('\n', 0, 0).simplified(); mltVersion = mltVersion.section(' ', -1).simplified(); - version = 100 * mltVersion.section('.', 0, 0).toInt() + 10 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); + version = 1000 * mltVersion.section('.', 0, 0).toInt() + 100 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); kDebug() << "// FOUND MLT version: " << version; } } mltitem->setText(1, i18n("MLT version: %1", mltVersion.simplified())); mltitem->setSizeHint(0, itemSize); - if (version < 40) { + if (version < 506) { mltitem->setData(1, Qt::UserRole, i18n("Your MLT version is unsupported!!!")); mltitem->setIcon(0, m_badIcon); } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dde...@us...> - 2010-10-29 04:10:22
|
Revision: 5059 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=5059&view=rev Author: ddennedy Date: 2010-10-29 04:10:16 +0000 (Fri, 29 Oct 2010) Log Message: ----------- Do not show the webcam/capture page of the config wizard on OS X. Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2010-10-29 03:41:25 UTC (rev 5058) +++ trunk/kdenlive/src/wizard.cpp 2010-10-29 04:10:16 UTC (rev 5059) @@ -123,6 +123,7 @@ slotCheckThumbs(); addPage(page3); +#ifndef Q_WS_MAC QWizardPage *page6 = new QWizardPage; page6->setTitle(i18n("Webcam")); m_capture.setupUi(page6); @@ -131,8 +132,8 @@ m_capture.button_reload->setIcon(KIcon("view-refresh")); addPage(page6); +#endif - QWizardPage *page5 = new QWizardPage; page5->setTitle(i18n("Checking system")); m_check.setupUi(page5); @@ -146,9 +147,9 @@ void Wizard::slotDetectWebcam() { +#ifndef Q_WS_MAC m_capture.device_list->clear(); -#ifndef Q_WS_MAC // Video 4 Linux device detection V4lCaptureHandler v4l(NULL); for (int i = 0; i < 10; i++) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2010-12-26 12:01:11
|
Revision: 5202 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=5202&view=rev Author: j-b-m Date: 2010-12-26 12:01:04 +0000 (Sun, 26 Dec 2010) Log Message: ----------- Check for xine in config wizard: http://www.kdenlive.org/mantis/view.php?id=1133 Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2010-12-26 11:32:43 UTC (rev 5201) +++ trunk/kdenlive/src/wizard.cpp 2010-12-26 12:01:04 UTC (rev 5202) @@ -414,7 +414,13 @@ item->setIcon(0, m_okIcon); } else item->setIcon(0, m_badIcon); } else item->setIcon(0, m_okIcon); - + + item = new QTreeWidgetItem(m_check.programList, QStringList() << QString() << i18n("xine")); + item->setData(1, Qt::UserRole, i18n("Required to preview your DVD")); + item->setSizeHint(0, itemSize); + if (KStandardDirs::findExe("xine").isEmpty()) item->setIcon(0, m_badIcon); + else item->setIcon(0, m_okIcon); + // set up some default applications QString program; if (KdenliveSettings::defaultimageapp().isEmpty()) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2011-06-07 20:57:22
|
Revision: 5677 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=5677&view=rev Author: j-b-m Date: 2011-06-07 20:57:16 +0000 (Tue, 07 Jun 2011) Log Message: ----------- Rewrite MLT detection in Wizard since the previous was was ugly and broken by recent MLT commit Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2011-06-07 19:23:03 UTC (rev 5676) +++ trunk/kdenlive/src/wizard.cpp 2011-06-07 20:57:16 UTC (rev 5677) @@ -25,6 +25,9 @@ #endif #include "kdenlive-config.h" +#include <mlt++/Mlt.h> +#include <framework/mlt_version.h> + #include <KStandardDirs> #include <KLocale> #include <KProcess> @@ -38,11 +41,16 @@ #include <QXmlStreamWriter> #include <QTimer> -const double recommendedMltVersion = 510; +// Recommanded MLT version +const int mltVersionMajor = 0; +const int mltVersionMinor = 7; +const int mltVersionRevision = 2; + static const char kdenlive_version[] = VERSION; Wizard::Wizard(bool upgrade, QWidget *parent) : - QWizard(parent) + QWizard(parent), + m_systemCheckIsOk(false) { setWindowTitle(i18n("Config Wizard")); setPixmap(QWizard::WatermarkPixmap, QPixmap(KStandardDirs::locate("appdata", "banner.png"))); @@ -251,168 +259,140 @@ meltitem->setSizeHint(0, itemSize); meltitem->setIcon(0, m_okIcon); - // Check MLT's installed producers - QProcess checkProcess; - checkProcess.start(KdenliveSettings::rendererpath(), QStringList() << "-query" << "producer"); - if (!checkProcess.waitForStarted()) { - meltitem->setIcon(0, m_badIcon); - meltitem->setData(1, Qt::UserRole, i18n("Error starting MLT's command line player (melt)")); + + Mlt::Repository *repository = Mlt::Factory::init(); + if (!repository) { + mltitem->setData(1, Qt::UserRole, i18n("Cannot start the MLT video backend!")); + mltitem->setIcon(0, m_badIcon); + m_systemCheckIsOk = false; button(QWizard::NextButton)->setEnabled(false); - } else { - checkProcess.waitForFinished(); - QByteArray result = checkProcess.readAllStandardError(); + } + else { + int mltVersion = (mltVersionMajor << 16) + (mltVersionMinor << 8) + mltVersionRevision; + mltitem->setText(1, i18n("MLT version: %1", mlt_version_get_string())); + mltitem->setSizeHint(0, itemSize); + if (mlt_version_get_int() < 1792) { + mltitem->setData(1, Qt::UserRole, i18n("Your MLT version is unsupported!!!")); + mltitem->setIcon(0, m_badIcon); + m_systemCheckIsOk = false; + button(QWizard::NextButton)->setEnabled(false); + } + else if (mlt_version_get_int() < mltVersion) { + mltitem->setData(1, Qt::UserRole, i18n("Please upgrade to MLT %1.%2.%3", mltVersionMajor, mltVersionMinor, mltVersionRevision)); + mltitem->setIcon(0, m_badIcon); + } + else { + mltitem->setData(1, Qt::UserRole, i18n("MLT video backend!")); + mltitem->setIcon(0, m_okIcon); + } - // Check MLT avformat module + // Retrieve the list of available transitions. + Mlt::Properties *producers = repository->producers(); + QStringList producersItemList; + for (int i = 0; i < producers->count(); ++i) + producersItemList << producers->get_name(i); + delete producers; + + Mlt::Properties *consumers = repository->consumers(); + QStringList consumersItemList; + for (int i = 0; i < consumers->count(); ++i) + consumersItemList << consumers->get_name(i); + delete consumers; + + // SDL module + QTreeWidgetItem *sdlItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("SDL module")); + sdlItem->setData(1, Qt::UserRole, i18n("Required for Kdenlive")); + sdlItem->setSizeHint(0, itemSize); + + if (!consumersItemList.contains("sdl")) { + sdlItem->setIcon(0, m_badIcon); + m_systemCheckIsOk = false; + button(QWizard::NextButton)->setEnabled(false); + } + else { + sdlItem->setIcon(0, m_okIcon); + } + + // AVformat module QTreeWidgetItem *avformatItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("Avformat module (FFmpeg)")); avformatItem->setData(1, Qt::UserRole, i18n("Required to work with various video formats (hdv, mpeg, flash, ...)")); avformatItem->setSizeHint(0, itemSize); - if (!result.contains("- avformat")) { + Mlt::Consumer *consumer = NULL; + Mlt::Profile p; + if (consumersItemList.contains("avformat")) + consumer = new Mlt::Consumer(p, "avformat"); + if (consumer == NULL || !consumer->is_valid()) { avformatItem->setIcon(0, m_badIcon); m_mltCheck.tabWidget->setTabEnabled(1, false); - } else { + } + else { avformatItem->setIcon(0, m_okIcon); - // Make sure we have MLT > 0.3.4 - int version = 0; - QString mltVersion; - QString exepath = KStandardDirs::findExe("pkg-config"); - if (!exepath.isEmpty()) { - checkProcess.start(exepath, QStringList() << "--variable=version" << "mlt++"); - if (!checkProcess.waitForStarted()) { - kDebug() << "// Error querying MLT's version"; - } else { - checkProcess.waitForFinished(); - mltVersion = checkProcess.readAllStandardOutput(); - version = 1000 * mltVersion.section('.', 0, 0).toInt() + 100 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt(); - kDebug() << "// FOUND MLT's pkgconfig version: " << version; - } - } - if (version == 0) { - checkProcess.start(KdenliveSettings::rendererpath(), QStringList() << "--version"); - if (!checkProcess.waitForStarted()) { - kDebug() << "// Error querying MLT's version"; - } else { - checkProcess.waitForFinished(); - mltVersion = checkProcess.readAllStandardError(); - 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(); - kDebug() << "// FOUND MLT version: " << version; - } - } - - mltitem->setText(1, i18n("MLT version: %1", mltVersion.simplified())); - mltitem->setSizeHint(0, itemSize); - if (version < 506) { - mltitem->setData(1, Qt::UserRole, i18n("Your MLT version is unsupported!!!")); - mltitem->setIcon(0, m_badIcon); - } else { - if (version < recommendedMltVersion) { - mltitem->setData(1, Qt::UserRole, i18n("Please upgrade to the latest MLT version")); - mltitem->setIcon(0, m_badIcon); - } else { - mltitem->setData(1, Qt::UserRole, i18n("MLT version is correct")); - mltitem->setIcon(0, m_okIcon); - } - // Check installed audio codecs - QProcess checkProcess2; - checkProcess2.start(KdenliveSettings::rendererpath(), QStringList() << "noise:" << "-consumer" << "avformat" << "acodec=list"); - if (!checkProcess2.waitForStarted()) { - m_mltCheck.tabWidget->setTabEnabled(1, false); - kDebug() << "// Error parsing MLT's avformat codecs"; - } else { - checkProcess2.waitForFinished(); - QByteArray codecList = checkProcess2.readAllStandardError(); - QString acodecList(codecList); - QStringList result; - QStringList alist = acodecList.split('\n', QString::SkipEmptyParts); - for (int i = 0; i < alist.count(); i++) { - if (alist.at(i).contains("- ")) result.append(alist.at(i).section("- ", 1).simplified().toLower()); - } - m_mltCheck.acodecs_list->addItems(result); - KdenliveSettings::setAudiocodecs(result); - //kDebug()<<"// FOUND LIST:\n\n"<<m_audioCodecs<<"\n\n++++++++++++++++++++"; - } - // Check video codecs - checkProcess2.start(KdenliveSettings::rendererpath(), QStringList() << "noise:" << "-consumer" << "avformat" << "vcodec=list"); - if (!checkProcess2.waitForStarted()) { - kDebug() << "// Error parsing MLT's avformat codecs"; - } else { - checkProcess2.waitForFinished(); - QByteArray codecList = checkProcess2.readAllStandardError(); - QString vcodecList(codecList); - QStringList result; - QStringList vlist = vcodecList.split('\n', QString::SkipEmptyParts); - for (int i = 0; i < vlist.count(); i++) { - if (vlist.at(i).contains("- ")) result.append(vlist.at(i).section("- ", 1).simplified().toLower()); - } - m_mltCheck.vcodecs_list->addItems(result); - KdenliveSettings::setVideocodecs(result); - //kDebug()<<"// FOUND LIST:\n\n"<<m_videoCodecs<<"\n\n++++++++++++++++++++"; - } - // Check formats - checkProcess2.start(KdenliveSettings::rendererpath(), QStringList() << "noise:" << "-consumer" << "avformat" << "f=list"); - if (!checkProcess2.waitForStarted()) { - kDebug() << "// Error parsing MLT's avformat codecs"; - } else { - checkProcess2.waitForFinished(); - QByteArray codecList = checkProcess2.readAllStandardError(); - QString vcodecList(codecList); - QStringList result; - QStringList vlist = vcodecList.split('\n', QString::SkipEmptyParts); - for (int i = 0; i < vlist.count(); i++) { - if (vlist.at(i).contains("- ")) { - QString format = vlist.at(i).section("- ", 1).simplified().toLower(); - if (format.contains(',')) { - QStringList sub = format.split(',', QString::SkipEmptyParts); - for (int j = 0; j < sub.count(); j++) - result.append(sub.at(j)); - } else result.append(format); - } - } - m_mltCheck.formats_list->addItems(result); - KdenliveSettings::setSupportedformats(result); - //kDebug()<<"// FOUND LIST:\n\n"<<m_videoCodecs<<"\n\n++++++++++++++++++++"; - } - } - + consumer->set("vcodec", "list"); + consumer->set("acodec", "list"); + consumer->set("f", "list"); + consumer->start(); + QStringList result; + Mlt::Properties vcodecs((mlt_properties) consumer->get_data("vcodec")); + for (int i = 0; i < vcodecs.count(); i++) + result << QString(vcodecs.get(i)); + m_mltCheck.vcodecs_list->addItems(result); + result.clear(); + Mlt::Properties acodecs((mlt_properties) consumer->get_data("acodec")); + for (int i = 0; i < acodecs.count(); i++) + result << QString(acodecs.get(i)); + m_mltCheck.acodecs_list->addItems(result); + result.clear(); + Mlt::Properties formats((mlt_properties) consumer->get_data("f")); + for (int i = 0; i < formats.count(); i++) + result << QString(formats.get(i)); + m_mltCheck.formats_list->addItems(result); + delete consumer; } - // Check MLT dv module + // DV module QTreeWidgetItem *dvItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("DV module (libdv)")); dvItem->setData(1, Qt::UserRole, i18n("Required to work with dv files if avformat module is not installed")); dvItem->setSizeHint(0, itemSize); - if (!result.contains("- libdv")) { + if (!producersItemList.contains("libdv")) { dvItem->setIcon(0, m_badIcon); - } else { + } + else { dvItem->setIcon(0, m_okIcon); } - // Check MLT image format module + // Image module QTreeWidgetItem *imageItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("QImage module")); imageItem->setData(1, Qt::UserRole, i18n("Required to work with images")); imageItem->setSizeHint(0, itemSize); - if (!result.contains("- qimage")) { + if (!producersItemList.contains("qimage")) { imageItem->setIcon(0, m_badIcon); imageItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("Pixbuf module")); imageItem->setData(1, Qt::UserRole, i18n("Required to work with images")); imageItem->setSizeHint(0, itemSize); - if (!result.contains("- pixbuf")) imageItem->setIcon(0, m_badIcon); - else imageItem->setIcon(0, m_okIcon); - } else { + if (producersItemList.contains("pixbuf")) { + imageItem->setIcon(0, m_badIcon); + } + else { + imageItem->setIcon(0, m_okIcon); + } + } + else { imageItem->setIcon(0, m_okIcon); } - // Check MLT title module + // Titler module QTreeWidgetItem *titleItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("Title module")); titleItem->setData(1, Qt::UserRole, i18n("Required to work with titles")); titleItem->setSizeHint(0, itemSize); - if (!result.contains("- kdenlivetitle")) { + if (!producersItemList.contains("kdenlivetitle")) { KdenliveSettings::setHastitleproducer(false); titleItem->setIcon(0, m_badIcon); } else { titleItem->setIcon(0, m_okIcon); KdenliveSettings::setHastitleproducer(true); } + + Mlt::Factory::close(); } } @@ -645,26 +625,7 @@ if (KdenliveSettings::rendererpath().isEmpty()) { errorMessage.append(i18n("Your MLT installation cannot be found. Install MLT and restart Kdenlive.\n")); } - /*QProcess checkProcess; - checkProcess.start(KdenliveSettings::rendererpath(), QStringList() << "-query" << "producer"); - if (!checkProcess.waitForStarted()) - errorMessage.append(i18n("Error starting MLT's command line player (melt)") + ".\n"); - checkProcess.waitForFinished(); - - QByteArray result = checkProcess.readAllStandardError(); - 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; - checkProcess2.start(KdenliveSettings::rendererpath(), QStringList() << "-query" << "consumer"); - if (!checkProcess2.waitForStarted()) - errorMessage.append(i18n("Error starting MLT's command line player (melt).") + '\n'); - - checkProcess2.waitForFinished(); - - QByteArray result = checkProcess2.readAllStandardError(); - 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()) { errorMessage.prepend(QString("<b>%1</b><br />").arg(i18n("Fatal Error"))); QLabel *pix = new QLabel(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <j-...@us...> - 2011-06-07 21:06:15
|
Revision: 5678 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=5678&view=rev Author: j-b-m Date: 2011-06-07 21:06:09 +0000 (Tue, 07 Jun 2011) Log Message: ----------- Fix startup crash Modified Paths: -------------- trunk/kdenlive/src/wizard.cpp Modified: trunk/kdenlive/src/wizard.cpp =================================================================== --- trunk/kdenlive/src/wizard.cpp 2011-06-07 20:57:16 UTC (rev 5677) +++ trunk/kdenlive/src/wizard.cpp 2011-06-07 21:06:09 UTC (rev 5678) @@ -391,8 +391,6 @@ titleItem->setIcon(0, m_okIcon); KdenliveSettings::setHastitleproducer(true); } - - Mlt::Factory::close(); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |