Quazim0t0 commited on
Commit
8856aeb
·
verified ·
1 Parent(s): 36f204b

Upload 51 files

Browse files
src/components/MultiSourceCaptioningView.tsx CHANGED
@@ -86,6 +86,7 @@ export default function MultiSourceCaptioningView() {
86
  const processingVideoRef = useRef<HTMLVideoElement | null>(null);
87
  const canvasRef = useRef<HTMLCanvasElement | null>(null);
88
  const imageRef = useRef<HTMLImageElement | null>(null);
 
89
  const webcamStreamRef = useRef<MediaStream | null>(null);
90
  const { isLoaded, isLoading, error: modelError, runInference } = useVLMContext();
91
 
@@ -136,12 +137,11 @@ export default function MultiSourceCaptioningView() {
136
  // Box persistence logic (2 seconds)
137
  const now = Date.now();
138
  if (Array.isArray(boxes) && boxes.length > 0) {
139
- if (!window._boxHistory) window._boxHistory = [];
140
- window._boxHistory = window._boxHistory.filter((b) => now - b.timestamp < 2000);
141
- window._boxHistory.push(...boxes.map(box => ({ ...box, timestamp: now })));
142
  }
143
  // Draw all boxes from last 2 seconds
144
- const boxHistory = (window._boxHistory || []).filter((b) => now - b.timestamp < 2000);
145
  ctx.clearRect(0, 0, canvas.width, canvas.height);
146
  if (boxHistory.length > 0) {
147
  const scaleX = canvas.width / video.videoWidth;
 
86
  const processingVideoRef = useRef<HTMLVideoElement | null>(null);
87
  const canvasRef = useRef<HTMLCanvasElement | null>(null);
88
  const imageRef = useRef<HTMLImageElement | null>(null);
89
+ const boxHistoryRef = useRef<any[]>([]);
90
  const webcamStreamRef = useRef<MediaStream | null>(null);
91
  const { isLoaded, isLoading, error: modelError, runInference } = useVLMContext();
92
 
 
137
  // Box persistence logic (2 seconds)
138
  const now = Date.now();
139
  if (Array.isArray(boxes) && boxes.length > 0) {
140
+ boxHistoryRef.current = boxHistoryRef.current.filter((b: any) => now - b.timestamp < 2000);
141
+ boxHistoryRef.current.push(...boxes.map(box => ({ ...box, timestamp: now })));
 
142
  }
143
  // Draw all boxes from last 2 seconds
144
+ const boxHistory = boxHistoryRef.current.filter((b: any) => now - b.timestamp < 2000);
145
  ctx.clearRect(0, 0, canvas.width, canvas.height);
146
  if (boxHistory.length > 0) {
147
  const scaleX = canvas.width / video.videoWidth;