diff --git a/frontend/src/components/AudioAnalysis.tsx b/frontend/src/components/AudioAnalysis.tsx
index cb830fa..4a8052f 100644
--- a/frontend/src/components/AudioAnalysis.tsx
+++ b/frontend/src/components/AudioAnalysis.tsx
@@ -148,7 +148,7 @@ export function AudioAnalysis({ result, analyzing, onAnalyze, showAnalyzeButton
Spectrum Meta
-
- Analysis Frames:
+ Display Frames:
{frames.toLocaleString()}
-
diff --git a/frontend/src/components/AudioAnalysisPage.tsx b/frontend/src/components/AudioAnalysisPage.tsx
index f907a3e..fd28169 100644
--- a/frontend/src/components/AudioAnalysisPage.tsx
+++ b/frontend/src/components/AudioAnalysisPage.tsx
@@ -1,5 +1,6 @@
import { useState, useCallback, useRef, useEffect, type ChangeEvent, type DragEvent, type CSSProperties } from "react";
import { Button } from "@/components/ui/button";
+import { Progress } from "@/components/ui/progress";
import { Upload, ArrowLeft, Trash2, Download } from "lucide-react";
import { AudioAnalysis } from "@/components/AudioAnalysis";
import { SpectrumVisualization } from "@/components/SpectrumVisualization";
@@ -37,12 +38,14 @@ function fileNameFromPath(filePath: string): string {
export function AudioAnalysisPage({ onBack }: AudioAnalysisPageProps) {
const {
analyzing,
+ analysisProgress,
result,
analyzeFile,
analyzeFilePath,
clearResult,
selectedFilePath,
spectrumLoading,
+ spectrumProgress,
reAnalyzeSpectrum,
} = useAudioAnalysis();
@@ -229,9 +232,14 @@ export function AudioAnalysisPage({ onBack }: AudioAnalysisPageProps) {
)}
{analyzing && !result && (
-
-
-
Analyzing audio file...
+
+
+
+ Processing...
+ {analysisProgress.percent}%
+
+
+
)}
@@ -252,6 +260,7 @@ export function AudioAnalysisPage({ onBack }: AudioAnalysisPageProps) {
fileName={fileName}
onReAnalyze={reAnalyzeSpectrum}
isAnalyzingSpectrum={spectrumLoading}
+ spectrumProgress={spectrumProgress}
/>
)}
diff --git a/frontend/src/components/SpectrumVisualization.tsx b/frontend/src/components/SpectrumVisualization.tsx
index 7af73c7..bcc5b9c 100644
--- a/frontend/src/components/SpectrumVisualization.tsx
+++ b/frontend/src/components/SpectrumVisualization.tsx
@@ -1,6 +1,7 @@
import { useEffect, useRef, useState, forwardRef, useImperativeHandle } from "react";
import type { SpectrumData } from "@/types/api";
import { Label } from "@/components/ui/label";
+import { Progress } from "@/components/ui/progress";
import {
loadAudioAnalysisPreferences,
saveAudioAnalysisPreferences,
@@ -27,6 +28,10 @@ interface SpectrumVisualizationProps {
fileName?: string;
onReAnalyze?: (fftSize: number, windowFunction: string) => void;
isAnalyzingSpectrum?: boolean;
+ spectrumProgress?: {
+ percent: number;
+ message: string;
+ };
}
type ColorScheme = AnalyzerColorScheme;
@@ -489,6 +494,7 @@ export const SpectrumVisualization = forwardRef {
const canvasRef = useRef(null);
const preferencesRef = useRef(loadAudioAnalysisPreferences());
@@ -565,6 +571,8 @@ export const SpectrumVisualization = forwardRef
@@ -638,9 +646,14 @@ export const SpectrumVisualization = forwardRef
{isAnalyzingSpectrum && (
-
-
-
Re-analyzing spectrum...
+
+
+
+ Processing...
+ {spectrumPercent}%
+
+
+
)}