tractor.removeChild(track);
setSceneList(doc.toString(), m_framePosition);
mltCheckLength();
- return;
-
- blockSignals(true);
- m_isBlocked = true;
-
- m_mltConsumer->set("refresh", 0);
- mlt_service_lock(m_mltConsumer->get_service());
- Mlt::Service service(m_mltProducer->parent().get_service());
- if (service.type() != tractor_type) kWarning() << "// TRACTOR PROBLEM";
-
- /*Mlt::Tractor tractor(service);
-
-
- Mlt::Multitrack *multi = tractor.multitrack();
-
-
- int ct = tractor.count();
- kDebug() << "// TRACK REMOVE: " << ix << ", MAX: " << ct;
- int pos = ix;
- for (; pos < ct ; pos++) {
- Mlt::Service *lastTrack = new Mlt::Service(tractor.track(pos)->get_service());
- //mlt_service_close(lastTrack->get_service());
- delete lastTrack;
- Mlt::Producer *prodToMove = new Mlt::Producer(tractor.track(pos + 1));
- Mlt::Producer *prodToClose = new Mlt::Producer(tractor.track(pos));
- mlt_service_close(prodToMove->get_service());
- mlt_service_close(prodToClose->get_service());
- tractor.set_track(*prodToMove, pos);
- }*/
-
- // Move transitions
- /*mlt_service serv = m_mltProducer->parent().get_service();
- mlt_service nextservice = mlt_service_get_producer(serv);
- mlt_properties properties = MLT_SERVICE_PROPERTIES(nextservice);
- QString mlt_type = mlt_properties_get(properties, "mlt_type");
- QString resource = mlt_properties_get(properties, "mlt_service");
-
- while (mlt_type == "transition") {
- if (resource != "mix") {
- mlt_transition tr = (mlt_transition) nextservice;
- int currentTrack = mlt_transition_get_b_track(tr);
- int currentaTrack = mlt_transition_get_a_track(tr);
- mlt_properties properties = MLT_TRANSITION_PROPERTIES(tr);
-
- if (currentTrack >= ix) {
- mlt_properties_set_int(properties, "b_track", currentTrack + 1);
- mlt_properties_set_int(properties, "a_track", currentaTrack + 1);
- }
- }
- nextservice = mlt_service_producer(nextservice);
- if (nextservice == NULL) break;
- properties = MLT_SERVICE_PROPERTIES(nextservice);
- mlt_type = mlt_properties_get(properties, "mlt_type");
- resource = mlt_properties_get(properties, "mlt_service");
- }
-
- // Add audio mix transition to last track
- Mlt::Field *field = tractor.field();
- Mlt::Transition *transition = new Mlt::Transition(*m_mltProfile, "mix");
- //transition->set("mlt_service", "mix");
- transition->set("a_track", 1);
- transition->set("b_track", ct);
- transition->set("always_active", 1);
- transition->set("internal_added", 237);
- transition->set("combine", 1);
- field->plant_transition(*transition, 1, ct);
- */
-
- mlt_service_unlock(m_mltConsumer->get_service());
- m_isBlocked = false;
- blockSignals(false);
}