snprintf(property, sizeof(property), "meta.media.%d.codec.long_name", vindex);
if (producer->get(property)) {
filePropertyMap["videocodec"] = producer->get(property);
- } else {
- snprintf(property, sizeof(property), "meta.media.%d.codec.name", vindex);
- if (producer->get(property))
- filePropertyMap["videocodec"] = producer->get(property);
+ }
+ snprintf(property, sizeof(property), "meta.media.%d.codec.name", vindex);
+ if (producer->get(property)) {
+ filePropertyMap["videocodecid"] = producer->get(property);
}
QString query;
query = QString("meta.media.%1.codec.pix_fmt").arg(vindex);
bool Render::mltRemoveClip(int track, GenTime position)
{
m_refreshTimer.stop();
+
Mlt::Service service(m_mltProducer->parent().get_service());
if (service.type() != tractor_type) {
kWarning() << "// TRACTOR PROBLEM";
return false;
}
- //service.lock();
+ service.lock();
Mlt::Tractor tractor(service);
Mlt::Producer trackProducer(tractor.track(track));
Mlt::Playlist trackPlaylist((mlt_playlist) trackProducer.get_service());
if (trackPlaylist.is_blank(clipIndex)) {
kDebug() << "// WARNING, TRYING TO REMOVE A BLANK: " << position.frames(m_fps);
- //service.unlock();
+ service.unlock();
return false;
}
Mlt::Producer *clip = trackPlaylist.replace_with_blank(clipIndex);
if (trackPlaylist.is_blank(i)) blk = "(blank)";
kDebug()<<"CLIP "<<i<<": ("<<blankStart<<'x'<<blankStart + blankDuration<<")"<<blk;
}*/
- //service.unlock();
+ service.unlock();
if (track != 0 && trackPlaylist.count() <= clipIndex) mltCheckLength(&tractor);
return true;
}