Fred808 commited on
Commit
70e2016
·
verified ·
1 Parent(s): 53d888f

Update download_api.py

Browse files
Files changed (1) hide show
  1. download_api.py +5 -4
download_api.py CHANGED
@@ -15,12 +15,12 @@ from datetime import datetime
15
 
16
  import torch
17
 
18
- # Import from vision_analyzer (previously cursor_tracker)
19
  from vision_analyzer import (
20
  main_processing_loop,
21
  processing_status,
22
  log_message,
23
- FRAMES_OUTPUT_FOLDER # Add this import for frames directory
24
  )
25
 
26
  # FastAPI App Definition
@@ -42,6 +42,7 @@ processing_thread = None
42
  frame_locks = {} # Dict to track frame locks: {course: {frame: {"locked_by": id, "locked_at": timestamp}}}
43
  processed_frames = {} # Dict to track processed frames: {course: {frame: {"processed_by": id, "processed_at": timestamp}}}
44
  LOCK_TIMEOUT = 300 # 5 minutes timeout for locks
 
45
 
46
  def save_tracking_state():
47
  """Save frame tracking state to disk"""
@@ -50,7 +51,7 @@ def save_tracking_state():
50
  "processed_frames": processed_frames
51
  }
52
  try:
53
- with open("frame_tracking.json", "w") as f:
54
  json.dump(state, f, indent=2)
55
  except Exception as e:
56
  log_message(f"Error saving tracking state: {e}")
@@ -59,7 +60,7 @@ def load_tracking_state():
59
  """Load frame tracking state from disk"""
60
  global frame_locks, processed_frames
61
  try:
62
- with open("frame_tracking.json", "r") as f:
63
  state = json.load(f)
64
  frame_locks = state.get("frame_locks", {})
65
  processed_frames = state.get("processed_frames", {})
 
15
 
16
  import torch
17
 
18
+ # Import core functionality
19
  from vision_analyzer import (
20
  main_processing_loop,
21
  processing_status,
22
  log_message,
23
+ FRAMES_OUTPUT_FOLDER
24
  )
25
 
26
  # FastAPI App Definition
 
42
  frame_locks = {} # Dict to track frame locks: {course: {frame: {"locked_by": id, "locked_at": timestamp}}}
43
  processed_frames = {} # Dict to track processed frames: {course: {frame: {"processed_by": id, "processed_at": timestamp}}}
44
  LOCK_TIMEOUT = 300 # 5 minutes timeout for locks
45
+ TRACKING_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "frame_tracking.json")
46
 
47
  def save_tracking_state():
48
  """Save frame tracking state to disk"""
 
51
  "processed_frames": processed_frames
52
  }
53
  try:
54
+ with open(TRACKING_FILE, "w") as f:
55
  json.dump(state, f, indent=2)
56
  except Exception as e:
57
  log_message(f"Error saving tracking state: {e}")
 
60
  """Load frame tracking state from disk"""
61
  global frame_locks, processed_frames
62
  try:
63
+ with open(TRACKING_FILE, "r") as f:
64
  state = json.load(f)
65
  frame_locks = state.get("frame_locks", {})
66
  processed_frames = state.get("processed_frames", {})