Skip to content

Commit 15a9942

Browse files
authored
Merge pull request #228 from KumarLabJax/fix-unnecessary-project-file-updates
fix some unnecessary project.json file updates
2 parents 24852f0 + 28272d1 commit 15a9942

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

src/jabs/project/project.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,8 @@ def __init__(
6969
self._session_tracker = SessionTracker(self, tracking_enabled=enable_session_tracker)
7070

7171
# write out the defaults to the project file
72-
self._settings_manager.save_project_file({"defaults": self.get_project_defaults()})
72+
if self._settings_manager.project_settings.get("defaults") != self.get_project_defaults():
73+
self._settings_manager.save_project_file({"defaults": self.get_project_defaults()})
7374

7475
# Start a session tracker for this project.
7576
# Since the session has a reference to the Project, the Project should be fully initialized before starting

src/jabs/project/video_manager.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ def get_video_identity_count(self, video_name: str) -> int:
143143
def _load_video_metadata(self):
144144
"""Load metadata for each video and calculate total identities."""
145145
video_metadata = self._settings_manager.project_settings.get("video_files", {})
146+
flush = False
146147
for video in self._videos:
147148
vinfo = video_metadata.get(video, {})
148149
nidentities = vinfo.get("identities")
@@ -153,11 +154,13 @@ def _load_video_metadata(self):
153154
)
154155
nidentities = pose_file.num_identities
155156
vinfo["identities"] = nidentities
157+
flush = True
156158

157159
self._video_identity_count[video] = nidentities
158160
self._total_project_identities += nidentities
159161
video_metadata[video] = vinfo
160-
self._settings_manager.save_project_file({"video_files": video_metadata})
162+
if flush:
163+
self._settings_manager.save_project_file({"video_files": video_metadata})
161164

162165
def _validate_video_frame_counts(self):
163166
"""Ensure video and pose file frame counts match."""

0 commit comments

Comments
 (0)