diff options
Diffstat (limited to 'apps/web/src/lib/ffmpeg-utils.ts')
| -rw-r--r-- | apps/web/src/lib/ffmpeg-utils.ts | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/apps/web/src/lib/ffmpeg-utils.ts b/apps/web/src/lib/ffmpeg-utils.ts index 1fd6ce64..ae0c267b 100644 --- a/apps/web/src/lib/ffmpeg-utils.ts +++ b/apps/web/src/lib/ffmpeg-utils.ts @@ -117,7 +117,14 @@ export const getVideoInfo = async (videoFile: File): Promise<{ ffmpeg.on('log', ({ message }) => listener(message)); // Run ffmpeg to get info (stderr will contain the info) - await ffmpeg.exec(['-i', inputName, '-f', 'null', '-']); + try { + await ffmpeg.exec(['-i', inputName, '-f', 'null', '-']); + } catch (error) { + listening = false; + await ffmpeg.deleteFile(inputName); + console.error('FFmpeg execution failed:', error); + throw new Error('Failed to extract video info. The file may be corrupted or in an unsupported format.'); + } // Disable listener after exec completes listening = false; |
