]> git.sesse.net Git - kdenlive/blobdiff - src/profilesdialog.h
Bezier Spline:
[kdenlive] / src / profilesdialog.h
index b6fd0a42c0d726e4cd4066024f9d7a65e6aa6c80..a9927babaa901bfda785a0054e3cc248a7cc3885 100644 (file)
@@ -33,7 +33,6 @@ public:
     ProfilesDialog(QWidget * parent = 0);
 
     void fillList(const QString selectedProfile = QString());
-    static QString getProfileDescription(QString name);
     static QMap< QString, QString > getSettingsForProfile(const QString profileName);
     static QMap< QString, QString > getSettingsFromFile(const QString path);
     static QString getPathFromDescription(const QString profileDesc);
@@ -43,6 +42,36 @@ public:
     static QString existingProfile(MltVideoProfile profile);
     static bool existingProfileDescription(const QString &desc);
 
+    /** @brief Check if a given profile matches passed properties:
+     *  @param width The profile frame width
+     *  @param height The profile frame height
+     *  @param fps The profile fps
+     *  @param par The sample aspect ratio
+     *  @param isImage If true, compare width with profile's display width ( = dar * height)
+     *  @param profile The profile to match
+     *  @return true if properties match profile */
+    static bool matchProfile(int width, int height, double fps, double par, bool isImage, MltVideoProfile profile);
+
+    /** @brief Find profiles that match parameter properties:
+     *  @param width The profile frame width
+     *  @param height The profile frame height
+     *  @param fps The profile fps
+     *  @param par The sample aspect ratio
+     *  @param useDisplayWidth If true, compare width with profile's display width ( = dar * height)
+     *  @return A string list of the matching profiles description */
+    static QMap <QString, QString> getProfilesFromProperties(int width, int height, double fps, double par, bool useDisplayWidth = false);
+
+    /** @brief Returns an value from a string by replacing "%width" and "%height" with given profile values:
+     *  @param profile The profile that gives width & height
+     *  @param eval The string to be evaluated, for example: "%width / 2"
+     *  @return the evaluated value */
+    static double getStringEval(const MltVideoProfile &profile, QString eval);
+
+    /** @brief Get the descriptive text for given colorspace code (defined by MLT)
+     *  @param colorspace An int as defined in mlt_profile.h
+     *  @return The string description */
+    static QString getColorspaceDescription(int colorspace);
+
 protected:
     virtual void closeEvent(QCloseEvent *event);