Implemented Oscilloscope correctly now

Have tested it with a 5 minute long audio file
Bigger files and different formats still needs testing
This commit is contained in:
2025-12-21 13:51:16 +01:00
parent ad6587978a
commit 1495a9a5c5
6 changed files with 269 additions and 100 deletions
+4
View File
@@ -12,12 +12,14 @@ export function useAudioAnalyzer() {
const [isLoading, setIsLoading] = useState(false);
const [error, setError] = useState<string | null>(null);
const [fileName, setFileName] = useState<string | null>(null);
const [originalFile, setOriginalFile] = useState<File | null>(null);
const audioContextRef = useRef<AudioContext | null>(null);
const loadAudioFile = useCallback(async (file: File) => {
setIsLoading(true);
setError(null);
setFileName(file.name);
setOriginalFile(file);
try {
// Create or reuse AudioContext
@@ -55,6 +57,7 @@ export function useAudioAnalyzer() {
const reset = useCallback(() => {
setAudioData(null);
setFileName(null);
setOriginalFile(null);
setError(null);
}, []);
@@ -63,6 +66,7 @@ export function useAudioAnalyzer() {
isLoading,
error,
fileName,
originalFile,
loadAudioFile,
reset,
};