1 /***************************************************************************
2 initeffects.h - description
5 copyright : (C) 2006 by Jean-Baptiste Mardelle
7 ***************************************************************************/
9 /***************************************************************************
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
16 ***************************************************************************/
22 #include <QDomDocument>
24 #include <mlt++/Mlt.h>
27 /**Init the MLT effects
28 *@author Jean-Baptiste Mardelle
33 class initEffectsThumbnailer : public QThread {
36 initEffectsThumbnailer();
37 void prepareThumbnailsCall(const QStringList&);
44 class initEffects : public QObject {
50 static Mlt::Repository *parseEffectFiles();
51 static void refreshLumas();
52 static QDomDocument createDescriptionFromMlt(Mlt::Repository* repository, const QString& type, const QString& name);
53 static void fillTransitionsList(Mlt::Repository *, EffectsList* transitions, QStringList names);
54 static QDomElement quickParameterFill(QDomDocument & doc, QString name, QString tag, QString type, QString def = QString(), QString min = QString(), QString max = QString(), QString list = QString(), QString listdisplaynames = QString(), QString factor = QString(), QString namedesc = QString(), QString format = QString());
55 static void parseEffectFile(EffectsList *customEffectList, EffectsList *audioEffectList, EffectsList *videoEffectList, QString name, QStringList filtersList, QStringList producersList);
56 static void parseCustomEffectsFile();
57 static char* ladspaEffectString(int ladspaId, QStringList params);
58 static void ladspaEffectFile(const QString & fname, int ladspaId, QStringList params);
60 static char* ladspaPitchEffectString(QStringList params);
61 static char* ladspaReverbEffectString(QStringList params);
62 static char* ladspaRoomReverbEffectString(QStringList params);
63 static char* ladspaEqualizerEffectString(QStringList params);
64 static char* ladspaDeclipEffectString(QStringList);
65 static char* ladspaVinylEffectString(QStringList params);
66 static char* ladspaLimiterEffectString(QStringList params);
67 static char* ladspaPitchShifterEffectString(QStringList params);
68 static char* ladspaPhaserEffectString(QStringList params);
69 static char* ladspaRateScalerEffectString(QStringList params);
71 static initEffectsThumbnailer thumbnailer;