我怎样才能让Fluent-ffmpeg在Angular 8中工作

问题描述 投票:0回答:3

我已经在我的项目中安装了“ Fluent-ffmpeg”插件,并以这种方式将其添加到我的角度项目中

var ffmpeg = require('fluent-ffmpeg')
我也用过这个方法
import * as ffmpeg from 'fluent-ffmpeg'

我在使用 ngserve 构建时遇到以下问题

ERROR in ./node_modules/fluent-ffmpeg/index.js
Module not found: Error: Can't resolve './lib-cov/fluent-ffmpeg' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg'
ERROR in ./node_modules/fluent-ffmpeg/lib/ffprobe.js
Module not found: Error: Can't resolve 'child_process' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/utils.js
Module not found: Error: Can't resolve 'child_process' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/processor.js
Module not found: Error: Can't resolve 'child_process' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/recipes.js
Module not found: Error: Can't resolve 'fs' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/capabilities.js
Module not found: Error: Can't resolve 'fs' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/processor.js
Module not found: Error: Can't resolve 'fs' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/isexe/windows.js
Module not found: Error: Can't resolve 'fs' in '/home/projects/angular/demo/node_modules/isexe'
ERROR in ./node_modules/isexe/mode.js
Module not found: Error: Can't resolve 'fs' in '/home/projects/angular/demo/node_modules/isexe'
ERROR in ./node_modules/isexe/index.js
Module not found: Error: Can't resolve 'fs' in '/home/projects/angular/demo/node_modules/isexe'
ERROR in ./node_modules/fluent-ffmpeg/lib/utils.js
Module not found: Error: Can't resolve 'os' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/fluent-ffmpeg.js
Module not found: Error: Can't resolve 'path' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/processor.js
Module not found: Error: Can't resolve 'path' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/recipes.js
Module not found: Error: Can't resolve 'path' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/capabilities.js
Module not found: Error: Can't resolve 'path' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'
ERROR in ./node_modules/fluent-ffmpeg/lib/options/misc.js
Module not found: Error: Can't resolve 'path' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib/options'
ERROR in ./node_modules/which/which.js
Module not found: Error: Can't resolve 'path' in '/home/projects/angular/demo/node_modules/which'
ERROR in ./node_modules/fluent-ffmpeg/lib/recipes.js
Module not found: Error: Can't resolve 'stream' in '/home/projects/angular/demo/node_modules/fluent-ffmpeg/lib'

请问我该如何解决这个错误

angular ffmpeg fluent-ffmpeg
3个回答
1
投票

如果你想在 typescript 中使用任何适用于 Node 的库,那么就以这种方式使用它。

declare var require: any; 
var ffmpeg = require('fluent-ffmpeg');

0
投票

fluent-ffmpeg
是一个 JavaScript 库,因此您可能认为可以在 Angular 应用程序中使用它,但它是一个用于调用 ffmpeg 二进制文件的包装器。您无法将 ffmpeg 二进制文件嵌入到客户端 JavaScript 应用程序中,因此不幸的是,该库对您的用例没有帮助。

如果你想使用 ffmpeg,你需要调用你的服务器,并在服务器上使用 ffmpeg(如果你的服务器使用 Node 运行,则可能在服务器上使用 fluence-ffmpeg)。

您将遇到很多像这样的 JavaScript 项目,这些项目非常常见,但适用于类似服务器的用例,而不是客户端浏览器应用程序。


© www.soinside.com 2019 - 2024. All rights reserved.