attached clip markers to footage markers

This commit is contained in:
itsmattkc
2019-02-04 01:34:51 +11:00
parent 87df07e6e7
commit e83d87d6ba
7 changed files with 88 additions and 35 deletions
+15 -6
View File
@@ -970,6 +970,7 @@ void Project::save_folder(QXmlStreamWriter& stream, int type, bool set_ids_only,
stream.writeAttribute("proxy", QString::number(f->proxy));
stream.writeAttribute("proxypath", f->proxy_path);
// save video stream metadata
for (int j=0;j<f->video_tracks.size();j++) {
const FootageStream& ms = f->video_tracks.at(j);
stream.writeStartElement("video");
@@ -978,8 +979,10 @@ void Project::save_folder(QXmlStreamWriter& stream, int type, bool set_ids_only,
stream.writeAttribute("height", QString::number(ms.video_height));
stream.writeAttribute("framerate", QString::number(ms.video_frame_rate, 'f', 10));
stream.writeAttribute("infinite", QString::number(ms.infinite_length));
stream.writeEndElement();
stream.writeEndElement(); // video
}
// save audio stream metadata
for (int j=0;j<f->audio_tracks.size();j++) {
const FootageStream& ms = f->audio_tracks.at(j);
stream.writeStartElement("audio");
@@ -987,9 +990,15 @@ void Project::save_folder(QXmlStreamWriter& stream, int type, bool set_ids_only,
stream.writeAttribute("channels", QString::number(ms.audio_channels));
stream.writeAttribute("layout", QString::number(ms.audio_layout));
stream.writeAttribute("frequency", QString::number(ms.audio_frequency));
stream.writeEndElement();
stream.writeEndElement(); // audio
}
stream.writeEndElement();
// save footage markers
for (int j=0;j<f->markers.size();j++) {
save_marker(stream, f->markers.at(j));
}
stream.writeEndElement(); // footage
media_id++;
} else if (type == MEDIA_TYPE_SEQUENCE) {
Sequence* s = m->to_sequence();
@@ -1062,8 +1071,8 @@ void Project::save_folder(QXmlStreamWriter& stream, int type, bool set_ids_only,
}
// save markers
// unnecessary for nested sequences since sequences have their own marker saving
if (c->media == nullptr || c->media->get_type() != MEDIA_TYPE_SEQUENCE) {
// only necessary for null media clips, since media has its own markers
if (c->media == nullptr) {
for (int k=0;k<c->get_markers().size();k++) {
save_marker(stream, c->get_markers().at(k));
}
@@ -1087,7 +1096,7 @@ void Project::save_folder(QXmlStreamWriter& stream, int type, bool set_ids_only,
stream.writeEndElement(); // clip
}
}
for (int j=0;j<s->markers.size();j++) {
for (int j=0;j<s->markers.size();j++) {
save_marker(stream, s->markers.at(j));
}
stream.writeEndElement();