So it looks like the software is not closely tied to any version, though it would be nice to know minimum requirements for nodejs version, which I am not able to find right now.
Is the UCP node server running for you? Mine is flamed after following the wiki with the only change being node v12 vs v11. This was the same problem I had earlier.
No. I just went through it and confirm what you and dicko are reporting. v12 will not build the obsolete mariasql module, and thus the UCP daemon will not run.
With nodejs 11, I got many error messages when installing pm2 module
Installing pm2…
Installing/Updating Required Libraries. This may take a while…The following messages are ONLY FOR DEBUGGING. Ignore anything that says ‘WARN’ or is just a warning
npm WARN deprecated [email protected]: Package no longer supported. Contact [email protected] for more info.
Installed npm-cache v0.7.0
Running installation…
[npm-cache] [INFO] using /var/lib/asterisk/.package_cache as cache directory
[npm-cache] [INFO] creating cache directory
[npm-cache] [INFO] [composer] Dependency config file /var/www/html/admin/modules/pm2/node/composer.json does not exist. Skipping install
[npm-cache] [INFO] [npm] config file exists
[npm-cache] [INFO] [npm] cli exists
[npm-cache] [INFO] [npm] hash of /var/www/html/admin/modules/pm2/node/package.json: fa2348032788d5067b56972347177c79
[npm-cache] [INFO] [npm] running [npm install]…
npm WARN deprecated [email protected]: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated [email protected]: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated [email protected]: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated [email protected]: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated [email protected]: Please see https://github.com/lydell/urix#deprecated
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.2.7 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {“os”:“darwin”,“arch”:“any”} (current: {“os”:“linux”,“arch”:“x64”})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents/node_modules/abbrev):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename ‘/var/www/html/admin/modules/pm2/node/node_modules/fsevents/node_modules/abbrev’ -> ‘/var/www/html/admin/modules/pm2/node/node_modules/fsevents/node_modules/.abbrev.DELETE’
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents/node_modules/ansi-regex):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename ‘/var/www/html/admin/modules/pm2/node/node_modules/fsevents/node_modules/ansi-regex’ -> ‘/var/www/html/admin/modules/pm2/node/node_modules/fsevents/node_modules/.ansi-regex.DELETE’
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents/node_modules/aproba):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename ‘/var/www/html/admin/modules/pm2/node/node_modules/fsevents/node_modules/aproba’ -> ‘/var/www/html/admin/modules/pm2/node/node_modules/fsevents/node_modules/.aproba.DELETE’ …
I see the same as @dicko. With ffmpeg and sox installed I think all my bases are covered. I have not seen any problems playing back voicemail in UCP or converting sound files in the System Recordings module.
More importantly, whether there’s something actually missing. The fact that a warning appears for my build but not for yours doesn’t make me happy, even though I don’t see any issues. There might be some use case that I haven’t hit. If you happen to figure that out, let us know.
I might take a look this weekend. I also want to look at what the true footprint of my build vs the static is. My ffmpeg w/library is smaller, but brings in more dependencies.
Looks like the johnvansickle.com static ffmpeg build won’t provide mp4 or m4a support to FreePBX.
In libraries/BMO/Media.class.php, FreePBX looks up browser supported formats and compares to what conversion utilities it can find on the system. If the browser supports m4a or mp4, FreepBX wants to find aac support in libraries/media/Media/Driver/Drivers/FfmpegShell.php.
The hasAAC function in libraries/media/Media/Driver/Drivers/FfmpegShell.php calls ffmpeg -version and greps for the string “enable-libfdk-aac”. The johnvansickle.com static ffmpeg is not built with --enable-libfdk-aac.
From ffmpeg -codecs, it looks like the static build gets aac from another lib. While the static build might technically be aac capable, FreePBX won’t use the static ffmpeg for m4a/mp4/aac.
But… Most browsers probably have another mutually supported codec available.