+}
+
+//static
+QPixmap KThumb::getImage(KUrl url, int frame, int width, int height) {
+ Mlt::Profile profile((char*) KdenliveSettings::current_profile().data());
+ QPixmap pix(width, height);
+ if (url.isEmpty()) return pix;
+
+ char *tmp = Render::decodedString("<westley><playlist><producer resource=\"" + url.path() + "\" /></playlist></westley>");
+ Mlt::Producer producer(profile, "westley-xml", tmp);
+ delete[] tmp;
+
+ if (producer.is_blank()) {
+
+ pix.fill(Qt::black);
+ return pix;
+ }
+ return getFrame(producer, frame, width, height);
+}
+
+//static
+QPixmap KThumb::getImage(QDomElement xml, int frame, int width, int height) {
+ Mlt::Profile profile((char*) KdenliveSettings::current_profile().data());
+ QPixmap pix(width, height);
+ QDomDocument doc;
+ QDomElement westley = doc.createElement("westley");
+ QDomElement play = doc.createElement("playlist");
+ doc.appendChild(westley);
+ westley.appendChild(play);
+ play.appendChild(doc.importNode(xml, true));
+ char *tmp = Render::decodedString(doc.toString());
+ Mlt::Producer producer(profile, "westley-xml", tmp);
+ delete[] tmp;
+
+ if (producer.is_blank()) {
+ pix.fill(Qt::black);
+ return pix;
+ }
+ return getFrame(producer, frame, width, height);
+}