Skip to main content

我可以使用 Vercel 无服务器函数渲染视频吗?

目前由于 Vercel 无服务器函数的最大函数大小为 50MB,无法在 Vercel 无服务器函数上渲染视频或静止图像。由于 Chromium 是 Remotion 的一个依赖项,它几乎完全占用了可用的配额。

但是,您可以通过 Vercel 无服务器函数触发 Remotion Lambda 渲染 - 这是我们构建应用程序的首选选择。查看我们的 Next 模板GitHub Unwrapped 项目 以了解如何操作的示例。

我可以在 Next.js 中渲染视频吗?

如果您不部署到 Vercel,可能可以使用 服务器端渲染 原语在 API 路由中渲染视频。
请检查您的提供商是否有足够的磁盘空间来存储 Chromium 和 Remotion,并且具有足够的 CPU 和 RAM 来渲染视频。

⚠️ 您需要注意以下事项:

  • 您不能在 API 路由中使用 @remotion/bundler,因为它包含 Webpack,并且 API 路由本身正在使用 Webpack 进行打包。无法使用 Webpack 打包 Webpack。相反,使用 @remotion/bundler 在 API 路由之外创建一个包,并在 API 路由中使用生成的文件夹。
  • @remotion/renderer 包需要来自 node_modules 的 FFmpeg 二进制文件。由于 API 路由正在被打包,您可能需要覆盖 Webpack 配置以确保 remotion 二进制文件被包含在其中。
  • 有关 Next.js 应用程序路由器的错误已被报告,因为 remotion 包导出了客户端组件。这些是错误的警告,因为没有渲染任何 React 组件。

建议:

I'm ready to start the translation once you provide the Markdown content.