]> git.sesse.net Git - kdenlive/blobdiff - src/markerdialog.cpp
Changing the timecode format in statur bar (from hh:mm:ss:ff to frames) now also...
[kdenlive] / src / markerdialog.cpp
index 72806c30c44f8608f8fc1ad761bfbcdcb7ae9374..7fd788439be7808e0b8e8f1ba32df06908c7e445 100644 (file)
@@ -31,7 +31,6 @@ MarkerDialog::MarkerDialog(DocClipBase *clip, CommentedTime t, Timecode tc, cons
         m_producer(NULL),
         m_profile(NULL),
         m_clip(clip),
-        m_marker(t),
         m_tc(tc)
 {
     setFont(KGlobalSettings::toolBarFont());
@@ -46,16 +45,17 @@ MarkerDialog::MarkerDialog(DocClipBase *clip, CommentedTime t, Timecode tc, cons
         m_profile = new Mlt::Profile((char*) KdenliveSettings::current_profile().data());
         m_dar = m_profile->dar();
         QDomDocument doc;
-        QDomElement westley = doc.createElement("westley");
-        QDomElement play = doc.createElement("playlist");
-        doc.appendChild(westley);
-        westley.appendChild(play);
+        QDomElement mlt = doc.createElement("mlt");
+        QDomElement play = doc.createElement("mlt");
+        doc.appendChild(mlt);
+        mlt.appendChild(play);
         play.appendChild(doc.importNode(clip->toXML(), true));
         //char *tmp = doc.toString().toUtf8().data();
-        m_producer = new Mlt::Producer(*m_profile, "westley-xml", doc.toString().toUtf8().data());
+        m_producer = new Mlt::Producer(*m_profile, "xml-string", doc.toString().toUtf8().data());
         //delete[] tmp;
-
-        QPixmap p((int)(100 * m_dar), 100);
+        int width = 100.0 * m_dar;
+        if (width % 2 == 1) width++;
+        QPixmap p(width, 100);
         QString colour = clip->getProperty("colour");
         switch (m_clip->clipType()) {
         case VIDEO:
@@ -65,7 +65,7 @@ MarkerDialog::MarkerDialog(DocClipBase *clip, CommentedTime t, Timecode tc, cons
             connect(this, SIGNAL(updateThumb()), m_previewTimer, SLOT(start()));
         case IMAGE:
         case TEXT:
-            p = KThumb::getFrame(m_producer, t.time().frames(m_fps), (int)(100 * m_dar), 100);
+            p = KThumb::getFrame(m_producer, t.time().frames(m_fps), width, 100);
             break;
         case COLOR:
             colour = colour.replace(0, 2, "#");
@@ -105,7 +105,9 @@ void MarkerDialog::slotUpdateThumb()
 {
     m_previewTimer->stop();
     int pos = m_tc.getFrameCount(m_view.marker_position->text(), m_fps);
-    QPixmap p = KThumb::getFrame(m_producer, pos, (int)(100 * m_dar), 100);
+    int width = 100.0 * m_dar;
+    if (width % 2 == 1) width++;
+    QPixmap p = KThumb::getFrame(m_producer, pos, width, 100);
     if (!p.isNull()) m_view.clip_thumb->setPixmap(p);
     else kDebug() << "!!!!!!!!!!!  ERROR CREATING THUMB";
 }