if (m_mltProfile) delete m_mltProfile;
m_mltProfile = NULL;
- m_mltProfile = new Mlt::Profile((char*) profile.toUtf8().data());
+ char *tmp = decodedString(profile);
+ m_mltProfile = new Mlt::Profile(tmp);
+ delete[] tmp;
m_mltConsumer = new Mlt::Consumer(*m_mltProfile , "sdl_preview"); //consumer;
m_mltConsumer->set("resize", 1);
m_mltConsumer->set("window_id", m_winid);
m_mltConsumer->set("audio_buffer", 1024);
m_mltConsumer->set("frequency", 48000);
- Mlt::Producer *producer = new Mlt::Producer(*m_mltProfile , "westley-xml", (char *) scene.toUtf8().data());
+ tmp = decodedString(scene);
+ Mlt::Producer *producer = new Mlt::Producer(*m_mltProfile , "westley-xml", tmp);
+ delete[] tmp;
m_mltProducer = producer;
m_mltConsumer->connect(*m_mltProducer);
m_mltProducer->set_speed(0.0);
filter->set("in", x1);
filter->set("out", x2);
//kDebug() << "// ADDING KEYFRAME vals: " << min<<" / "<<max<<", "<<y1<<", factor: "<<factor;
- filter->set(starttag, QString::number((min + y1 * (max - min) / 100.0) / factor).toUtf8().data());
- filter->set(endtag, QString::number((min + y2 * (max - min) / 100.0) / factor).toUtf8().data());
+ filter->set(starttag, QString::number((min + y1) / factor).toUtf8().data());
+ filter->set(endtag, QString::number((min + y2) / factor).toUtf8().data());
clipService.attach(*filter);
offset = 1;
}
}
void Render::mltUpdateTransition(QString oldTag, QString tag, int a_track, int b_track, GenTime in, GenTime out, QDomElement xml) {
- //kDebug() << "update transition" << tag;
+ // kDebug() << "update transition" << tag << " at pos " << in.frames(25);
if (oldTag == tag) mltUpdateTransitionParams(tag, a_track, b_track, in, out, xml);
else {
mltDeleteTransition(oldTag, a_track, b_track, in, out, xml, false);
kDebug() << "// FOUND EXISTING TRANS, IN: " << currentIn << ", OUT: " << currentOut << ", TRACK: " << currentTrack;
if (resource == tag && b_track == currentTrack && currentIn <= old_pos && currentOut >= old_pos) {
+ //kDebug() << " / / / / /DELETE TRANS DOOOMNE";
mlt_field_disconnect_service(field->get_field(), nextservice);
break;
}