From 843bbbcb9bca8dcaf49652d812d5188facc9c623 Mon Sep 17 00:00:00 2001 From: pollutri Date: Tue, 26 May 2026 16:37:58 +0200 Subject: [PATCH] video limit conf. --- app/api/upload/route.ts | 7 ++----- lib/config.ts | 10 ++++++++++ 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/api/upload/route.ts b/app/api/upload/route.ts index 80ec297..e69d031 100644 --- a/app/api/upload/route.ts +++ b/app/api/upload/route.ts @@ -3,6 +3,7 @@ import { writeFile, mkdir, rename, unlink } from 'fs/promises'; import path from 'path'; import { fromBuffer as fileTypeFromBuffer } from 'file-type'; import { enqueueTranscode, needsTranscode, probeCodecs, isFfmpegAvailable } from '@/lib/transcode'; +import { UPLOAD_LIMITS } from '@/lib/config'; export const dynamic = 'force-dynamic'; export const maxDuration = 300; @@ -31,11 +32,7 @@ const ALLOWED_MIMES: Record = { pdf: ['application/pdf'], }; -const MAX_BYTES: Record = { - image: 25 * 1024 * 1024, // 25 MB - pdf: 20 * 1024 * 1024, // 20 MB (pdfjs lato browser non regge bene di più) - video: 1024 * 1024 * 1024, // 1 GB (verrà ricodificato lato server se necessario) -}; +const MAX_BYTES: Record = UPLOAD_LIMITS; const UPLOAD_DIR = path.join(process.cwd(), 'data', 'uploads'); const TMP_DIR = path.join(UPLOAD_DIR, '.tmp'); diff --git a/lib/config.ts b/lib/config.ts index dc398cf..9ca2587 100644 --- a/lib/config.ts +++ b/lib/config.ts @@ -22,3 +22,13 @@ export const TEXT_LIMITS = { welcomeText: 1000, }, } as const; + +// Dimensioni massime upload per famiglia di file (in byte). +// Usati lato server in app/api/upload/route.ts; sforare → 413. +// Nota: i video grandi vengono comunque transcodificati (può durare minuti). +const MB = 1024 * 1024; +export const UPLOAD_LIMITS = { + image: 25 * MB, // 25 MB + pdf: 20 * MB, // 20 MB (pdfjs lato browser non regge bene molto di più) + video: 1024 * MB, // 1 GB +} as const;