fix: ffmpeg 压缩适配

This commit is contained in:
tim
2025-09-11 19:10:14 +08:00
parent ea079e8b8a
commit ab04a8b6b1
5 changed files with 7 additions and 6 deletions

View File

@@ -98,7 +98,7 @@ export default defineNuxtConfig({
}, },
vite: { vite: {
optimizeDeps: { optimizeDeps: {
include: ['@ffmpeg/ffmpeg', '@ffmpeg/util'], exclude: ['@ffmpeg/ffmpeg', '@ffmpeg/util'],
}, },
build: {}, build: {},
}, },

View File

@@ -6,7 +6,7 @@
"": { "": {
"name": "frontend_nuxt", "name": "frontend_nuxt",
"dependencies": { "dependencies": {
"@ffmpeg/ffmpeg": "^0.12.10", "@ffmpeg/ffmpeg": "^0.12.2",
"@ffmpeg/util": "^0.12.2", "@ffmpeg/util": "^0.12.2",
"@icon-park/vue-next": "^1.4.2", "@icon-park/vue-next": "^1.4.2",
"@nuxt/image": "^1.11.0", "@nuxt/image": "^1.11.0",

View File

@@ -13,7 +13,7 @@
}, },
"dependencies": { "dependencies": {
"@icon-park/vue-next": "^1.4.2", "@icon-park/vue-next": "^1.4.2",
"@ffmpeg/ffmpeg": "^0.12.10", "@ffmpeg/ffmpeg": "^0.12.2",
"@ffmpeg/util": "^0.12.2", "@ffmpeg/util": "^0.12.2",
"@nuxt/image": "^1.11.0", "@nuxt/image": "^1.11.0",
"@stomp/stompjs": "^7.0.0", "@stomp/stompjs": "^7.0.0",

View File

@@ -10,11 +10,12 @@ export default defineNuxtPlugin(() => {
ffmpeg: async () => { ffmpeg: async () => {
if (ffmpeg) return ffmpeg if (ffmpeg) return ffmpeg
ffmpeg = new FFmpeg() ffmpeg = new FFmpeg()
const base = `https://unpkg.com/@ffmpeg/core-mt@0.12.10/dist/umd` const base = `https://unpkg.com/@ffmpeg/core@0.12.2/dist/esm`
const libBase = `https://unpkg.com/@ffmpeg/ffmpeg@0.12.2/dist/esm`
await ffmpeg.load({ await ffmpeg.load({
coreURL: await toBlobURL(`${base}/ffmpeg-core.js`, 'text/javascript'), coreURL: await toBlobURL(`${base}/ffmpeg-core.js`, 'text/javascript'),
wasmURL: await toBlobURL(`${base}/ffmpeg-core.wasm`, 'application/wasm'), wasmURL: await toBlobURL(`${base}/ffmpeg-core.wasm`, 'application/wasm'),
workerURL: await toBlobURL(`${base}/ffmpeg-core.worker.js`, 'text/javascript'), workerURL: await toBlobURL(`${libBase}/worker.js`, 'text/javascript'),
}) })
return ffmpeg return ffmpeg

View File

@@ -118,7 +118,7 @@ export function createVditor(editorId, options = {}) {
// 如果是视频文件且需要压缩 // 如果是视频文件且需要压缩
if (isVideo && sizeCheck.needsCompression) { if (isVideo && sizeCheck.needsCompression) {
try { try {
vditor.tip('视频压缩中...', 0) vditor.tip('开始部署ffmpeg环境... 请稍等', 0)
vditor.disabled() vditor.disabled()
// 使用 FFmpeg 压缩视频 // 使用 FFmpeg 压缩视频