From 0901138019ba18507e405be9bb8a6d002ffb7591 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Sun, 17 Nov 2019 17:20:49 +0100 Subject: [PATCH] add info header to pptl --- src/canvas.cpp | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/canvas.cpp b/src/canvas.cpp index acbf698..734d113 100644 --- a/src/canvas.cpp +++ b/src/canvas.cpp @@ -2317,6 +2317,12 @@ bool Canvas::project_save_thread(std::string file_path, bool show_progress) { BinaryStreamWriter sw; sw.init(BinaryStream::ByteOrder::LittleEndian); + Serializer::Descriptor info; + info.class_id = "tracks-info"; + info.name = L"Timelapse Tracks"; + info.props["has-track-360"] = std::make_shared(true); + info.props["version"] = std::make_shared(1); + sw << info; sw << *Canvas::I->m_encoder; if (!sw.save(lapse_path)) LOG("cannot save timelase to %s", lapse_path.c_str()); @@ -2524,9 +2530,14 @@ bool Canvas::project_open_thread(std::string file_path) { BinaryStreamReader sr; sr.load(lapse_path, BinaryStream::ByteOrder::LittleEndian); - m_encoder = std::make_unique(); - sr >> *m_encoder; - m_encoder->init(); + Serializer::Descriptor info; + sr >> info; + if (info.value("has-track-360")) + { + m_encoder = std::make_unique(); + sr >> *m_encoder; + m_encoder->init(); + } } else {