From c3b23734d11a5241c5cb202a0501df812f60d110 Mon Sep 17 00:00:00 2001 From: Georg Hagen Date: Fri, 14 Feb 2025 12:03:45 +0100 Subject: [PATCH] Fix xmp create date --- openVulkanoCpp/AR/ArRecorder.cpp | 2 +- openVulkanoCpp/Image/XmpBuilder.cpp | 7 +++++++ openVulkanoCpp/Image/XmpBuilder.hpp | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/openVulkanoCpp/AR/ArRecorder.cpp b/openVulkanoCpp/AR/ArRecorder.cpp index 1c23438..ab4f462 100644 --- a/openVulkanoCpp/AR/ArRecorder.cpp +++ b/openVulkanoCpp/AR/ArRecorder.cpp @@ -126,7 +126,7 @@ namespace OpenVulkano::AR auto exif = exifBuilder.Build(); Image::XmpBuilder xmpBuilder; xmpBuilder.SetPose(arFrame->GetPose()); - xmpBuilder.SetCreateDate(exifBuilder.dateTaken); //TODO + xmpBuilder.SetCreateDateNow(); xmpBuilder.SetExposureTime(arFrame->GetExposureTime()); xmpBuilder.SetFocalLength(arFrame->GetFocalLength()); xmpBuilder.SetCameraIntrinsic(arFrame->GetCameraIntrinsic()); diff --git a/openVulkanoCpp/Image/XmpBuilder.cpp b/openVulkanoCpp/Image/XmpBuilder.cpp index dcc81f3..57acd83 100644 --- a/openVulkanoCpp/Image/XmpBuilder.cpp +++ b/openVulkanoCpp/Image/XmpBuilder.cpp @@ -95,6 +95,13 @@ namespace OpenVulkano::Image return *this; } + [[maybe_unused]] XmpBuilder& XmpBuilder::SetCreateDateNow() + { + std::chrono::system_clock::now(); + std::time_t currentTime = std::chrono::system_clock::to_time_t(now); + SetCreateDate(currentTime); + } + [[maybe_unused]] XmpBuilder& XmpBuilder::SetCreateDate(const std::time_t time) { return SetCreateDate(fmt::format("{:%FT%T%Ez}", fmt::localtime(time))); diff --git a/openVulkanoCpp/Image/XmpBuilder.hpp b/openVulkanoCpp/Image/XmpBuilder.hpp index af9aae5..c0f1cce 100644 --- a/openVulkanoCpp/Image/XmpBuilder.hpp +++ b/openVulkanoCpp/Image/XmpBuilder.hpp @@ -28,6 +28,7 @@ namespace OpenVulkano::Image [[maybe_unused]] XmpBuilder& SetFocalLength(float focalLengthMM); [[maybe_unused]] XmpBuilder& SetExposureTime(double exposureTime); + [[maybe_unused]] XmpBuilder& SetCreateDateNow(); [[maybe_unused]] XmpBuilder& SetCreateDate(const std::time_t time); [[maybe_unused]] XmpBuilder& SetCreateDate(const std::string& createDate);