]> git.sesse.net Git - kdenlive/commitdiff
Add XML files for frei0r contrast0r and brightness effects so that we have correct...
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Mon, 20 Jul 2009 20:45:22 +0000 (20:45 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Mon, 20 Jul 2009 20:45:22 +0000 (20:45 +0000)
http://www.kdenlive.org/mantis/view.php?id=1014

svn path=/trunk/kdenlive/; revision=3743

data/blacklisted_effects.txt
effects/CMakeLists.txt
effects/frei0r_brightness.xml [new file with mode: 0644]
effects/frei0r_contrast0r.xml [new file with mode: 0644]
src/cliptranscode.cpp
src/cliptranscode.h
src/initeffects.cpp
src/kdenlivesettings.kcfg
src/kdenlivetranscodingrc
src/mainwindow.cpp
src/timecode.h

index 583daaa4d814a4701b7763fca1d886bb5dcc6f13..900739e16bbc67d865bb2bed18699cf667d008dd 100644 (file)
@@ -15,3 +15,5 @@ frei0r.twolay0r
 frei0r.balanc0r
 frei0r.colordistance
 frei0r.scale0tilt
+frei0r.contrast0r
+frei0r.brightness
index 8183188c88fcb57098495ac1156ba4681caa62cd..07ce81efc41b222d816dccaca0ef6a97a50289f8 100644 (file)
@@ -49,6 +49,8 @@ frei0r_squareblur.xml
 frei0r_distort0r.xml
 frei0r_balanc0r.xml
 frei0r_scale0tilt.xml
+frei0r_contrast0r.xml
+frei0r_brightness.xml
 gain.xml
 fade_from_black.xml
 fade_to_black.xml
diff --git a/effects/frei0r_brightness.xml b/effects/frei0r_brightness.xml
new file mode 100644 (file)
index 0000000..8081c24
--- /dev/null
@@ -0,0 +1,9 @@
+<!DOCTYPE kpartgui>
+<effect tag="frei0r.brightness" id="frei0r.brightness">
+       <name>Brightness</name>
+       <description>Adjusts the brightness of a source image</description>
+       <author>Jean-Sebastien Senecal</author>
+       <parameter type="constant" name="Brightness" default="500" min="0" max="1000" factor="1000">
+               <name>Contrast</name>
+       </parameter>
+</effect>
diff --git a/effects/frei0r_contrast0r.xml b/effects/frei0r_contrast0r.xml
new file mode 100644 (file)
index 0000000..383305f
--- /dev/null
@@ -0,0 +1,9 @@
+<!DOCTYPE kpartgui>
+<effect tag="frei0r.contrast0r" id="frei0r.contrast0r">
+       <name>Contrast0r</name>
+       <description>Adjusts the contrast of a source image</description>
+       <author>Jean-Sebastien Senecal</author>
+       <parameter type="constant" name="Contrast" default="250" min="0" max="1000" factor="500">
+               <name>Contrast</name>
+       </parameter>
+</effect>
index 3386edf6981f1d771dcacad9d049d1b4025ef784..e2211d94d9a9d528a928074949745c8b4e067106 100644 (file)
 #include <KDebug>
 #include <KGlobalSettings>
 #include <KMessageBox>
+#include <KFileDialog>
 
 
-ClipTranscode::ClipTranscode(KUrl::List urls, const QString &params, QWidget * parent) :
-        QDialog(parent), m_urls(urls)
+ClipTranscode::ClipTranscode(KUrl::List urls, const QString &params, MltVideoProfile profile, QWidget * parent) :
+        QDialog(parent), m_urls(urls), m_profile(profile)
 {
     setFont(KGlobalSettings::toolBarFont());
     m_view.setupUi(this);
@@ -39,6 +40,8 @@ ClipTranscode::ClipTranscode(KUrl::List urls, const QString &params, QWidget * p
         KUrl dest(newFile);
         m_view.source_url->setUrl(m_urls.at(0));
         m_view.dest_url->setUrl(dest);
+        m_view.dest_url->setMode(KFile::File);
+        m_view.dest_url->fileDialog()->setOperationMode(KFileDialog::Saving);
         m_view.urls_list->setHidden(true);
         connect(m_view.source_url, SIGNAL(textChanged(const QString &)), this, SLOT(slotUpdateParams()));
     } else {
@@ -52,7 +55,7 @@ ClipTranscode::ClipTranscode(KUrl::List urls, const QString &params, QWidget * p
     if (!params.isEmpty()) {
         m_view.label_profile->setHidden(true);
         m_view.profile_list->setHidden(true);
-        m_view.params->setPlainText(params.simplified());
+        m_view.params->setPlainText(prepareParams(params));
     } else {
         // load Profiles
         KSharedConfigPtr config = KSharedConfig::openConfig("kdenlivetranscodingrc");
@@ -149,7 +152,7 @@ void ClipTranscode::slotUpdateParams(int ix)
     QString fileName = m_view.source_url->url().path();
     if (ix != -1) {
         QString params = m_view.profile_list->itemData(ix).toString();
-        m_view.params->setPlainText(params.simplified());
+        m_view.params->setPlainText(prepareParams(params));
     }
 
     QString newFile = m_view.params->toPlainText().simplified().section(' ', -1).replace("%1", fileName);
@@ -157,6 +160,11 @@ void ClipTranscode::slotUpdateParams(int ix)
 
 }
 
+QString ClipTranscode::prepareParams(QString params)
+{
+    return "-s " + QString::number(m_profile.width) + 'x' + QString::number(m_profile.height) + " -r " + QString::number((double) m_profile.frame_rate_num / m_profile.frame_rate_den) + ' ' + params.simplified();
+}
+
 #include "cliptranscode.moc"
 
 
index e46fc53a000f7377bc33bd2246110d90495203b2..a9d21022e9cfa88fde751aedf4458613e11d6059 100644 (file)
@@ -22,6 +22,7 @@
 #define CLIPTRANSCODE_H
 
 
+#include "definitions.h"
 #include "ui_cliptranscode_ui.h"
 
 #include <KUrl>
@@ -33,7 +34,7 @@ class ClipTranscode : public QDialog
     Q_OBJECT
 
 public:
-    ClipTranscode(KUrl::List urls, const QString &params, QWidget * parent = 0);
+    ClipTranscode(KUrl::List urls, const QString &params, MltVideoProfile profile, QWidget * parent = 0);
     ~ClipTranscode();
 
 
@@ -47,6 +48,8 @@ private:
     Ui::ClipTranscode_UI m_view;
     QProcess m_transcodeProcess;
     KUrl::List m_urls;
+    MltVideoProfile m_profile;
+    QString prepareParams(QString params);
 
 signals:
     void addClip(KUrl url);
index e13b63c571177eed536a75808c5e9db945390870..c5157ec3ccc04859bfa0e590554638f4f2fe41b1 100644 (file)
@@ -673,7 +673,7 @@ void initEffects::fillTransitionsList(Mlt::Repository * repository, EffectsList*
             }
 
             if (name == "luma") {
-                ktrans.setAttribute("id", name);
+                ktrans.setAttribute("id", "luma");
                 tname.appendChild(ret.createTextNode("Wipe"));
                 desc.appendChild(ret.createTextNode("Applies a stationary transition between the current and next frames"));
 
index 693a449d8dc05432172daef641606fd6bfba13e9..bfc2b57adc97bdfd294469deddd3107f058b64b1 100644 (file)
       <default></default>
     </entry>
 
+    <entry name="autoaudiodrivername" type="String">
+      <label>Audio driver selected automatically.</label>
+      <default></default>
+    </entry>
+
     <entry name="videodrivername" type="String">
       <label>Video driver used for output.</label>
       <default></default>
       <default>true</default>
     </entry>
 
-    <entry name="autoaudiodrivername" type="String">
-      <label>Audio driver selected automatically.</label>
-      <default></default>
-    </entry>
-
     <entry name="audiocodecs" type="StringList">
       <label>Available avformat audio codecs.</label>
       <default></default>
index 5159490428ed1bd13c614a68934d11bf5051f062..922ab7755c59ae5e86965cdd2f8d0bb13fec7407 100644 (file)
@@ -1,2 +1,2 @@
 [Transcoding]
-DNxHD 1920x1080=-s 1920x1080 -r pal -b 220000k -threads 2 -vcodec dnxhd -acodec copy %1.mov
+DNxHD HQ=-b 220000k -threads 2 -vcodec dnxhd -acodec copy %1.mov
index 43d32f02eec08cf3c388f7e14321f0755424ea48..6fe15337650e5e536723d4ebde2c144d7995145d 100644 (file)
@@ -2694,7 +2694,7 @@ void MainWindow::slotTranscode(KUrl::List urls)
         params = action->data().toString();
     }
     if (urls.isEmpty()) return;
-    ClipTranscode *d = new ClipTranscode(urls, params);
+    ClipTranscode *d = new ClipTranscode(urls, params, m_activeDocument->mltProfile());
     connect(d, SIGNAL(addClip(KUrl)), this, SLOT(slotAddProjectClip(KUrl)));
     d->show();
     //QProcess::startDetached("ffmpeg", parameters);
index e4b32548e275886573e9d7025000df5e70e20fe3..28ccb625d4e8de961a9a20c07dace76c994cba2a 100644 (file)
 #ifndef TIMECODE_H
 #define TIMECODE_H
 
-#include <qstring.h>
-
 #include "gentime.h"
 
+#include <qstring.h>
+
 /**
 Handles the conversion of a GenTime into a nicely formatted string, taking into account things such as drop frame if necessary. Handles multiple formats, such as HH:MM:SS:FF, HH:MM:SS:F, All Frames, All Seconds, etc.