使用ffmpeg.wasm解码视频(avi,mpg等格式)问题

21 阅读1分钟

一、FFmpeg 初始化失败: ReferenceError: SharedArrayBuffer is not defined

解决方法:

Vite 配置 (vite.config.js) : 增加

export default defineConfig({
    server: {
      // ffmpeg需要跨域隔离
      headers: {
        'Cross-Origin-Opener-Policy': 'same-origin',
        'Cross-Origin-Embedder-Policy': 'credentialless' // 无需第三方配合
      }
    }
  })

这个只能本地运行起作用

如果发到线上需要配置nginx

nginx

server {
    
    location / {
        # 启用跨域隔离
        add_header Cross-Origin-Opener-Policy same-origin;
        add_header Cross-Origin-Embedder-Policy credentialless;
        
        # 其他配置...
    }
}

'Cross-Origin-Embedder-Policy': 'credentialless'设置成credentialless才能不影响到第三方的,否则第三方的图片等资源无法播放