editly: Error: gl returned null (missing dependencies)
While attempting to run the “kenBurns” example in a Debian docker image (using a node:14-stretch base image) I get the following error:
640x640 25fps
Error: gl returned null, this probably means that some dependencies are not installed. See README.
at module.exports (/usr/local/lib/node_modules/editly/glTransitions.js:12:11)
at module.exports (/usr/local/lib/node_modules/editly/index.js:265:36)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async /usr/local/lib/node_modules/editly/cli.js:124:3
For reference, here’s the Dockerfile I’m using:
FROM node:14-stretch
RUN apt-get -qq update \
&& apt-get -qq install \
build-essential \
libcairo2-dev \
libpango1.0-dev \
libjpeg-dev \
libgif-dev \
librsvg2-dev \
libxi-dev \
libglu1-mesa-dev \
libglew-dev \
pkg-config \
python2.7 \
python-pip \
ffmpeg
RUN mkdir -p /opt/node \
&& cd /opt/node \
&& npm install --global --unsafe-perm editly
About this issue
- Original URL
- State: open
- Created 4 years ago
- Comments: 52 (16 by maintainers)
Merely installing
xvfbjust… installs it. However it is not running. I’ve used the instructions found hereUsing that command results in e.g.
xvfb-run -s "-ac -screen 0 1280x1024x24" editly --json kenBurns.json5which now complains about assets not found.BTW I find it unfortunate that there are no sample assets. Makes it harder to play around with it.
I did get further along with this Docker File…But now its failing when FFMPEG tries to write out to the temp dir- Hope this helps someone
@Stefan-Hanke solution works for me https://github.com/mifi/editly/issues/33#issuecomment-622289045
If I run xvfb-run editly --json kenBurns.json5 the video is created. What’s the downside of this technique? I need to run from node, can I use this lib for that https://www.npmjs.com/package/xvfb ?
thanks! Armando
google can help you with this
macOS: BigSur 11.4 nodejs: v12.14.1 ffmpeg: 4.4 python: 3.9
$ editly --fast mosaic.json5 ffmpeg version 4.4 WARNING: ffmpeg issue: Invalid Version: 4.4 ffprobe version 4.4 WARNING: ffprobe issue: Invalid Version: 4.4 250x250 15fps Caught error Error: gl returned null, this probably means that some dependencies are not installed. See README. at module.exports (/usr/local/lib/node_modules/editly/glTransitions.js:12:11) at Editly (/usr/local/lib/node_modules/editly/index.js:172:60) at async /usr/local/lib/node_modules/editly/cli.js:136:3Ah yes, the
xvfb-runbit was 100% part of my dockerfile as well. Sorry if that wasn’t clear beforeSorry, not sure then! You might want to clarify (for future travellers) if you built with all the same flags from the dockerfile I linked, so ppl will know which approach you’ve exhausted
Hi @patcon I updated the versions:
and throws the same error 😦
Got this working in Docker thanks to @maerics @chapmanjacobd @MDrooker, thanks all! See #96 (I’m 100% sure it can be improved after [or before?] merge 🎉 )
EDIT: just confirmed gl shaders work.
I’m running node v15.2.0, throw an error:
`node:internal/modules/cjs/loader:1161 return process.dlopen(module, path.toNamespacedPath(filename)); ^
Error: The module ‘/usr/local/lib/node_modules/editly/node_modules/canvas/build/Release/canvas.node’ was compiled against a different Node.js version using NODE_MODULE_VERSION 72. This version of Node.js requires NODE_MODULE_VERSION 88. Please try re-compiling or re-installing`
Good job!
I don’t want to include the sample assets in this repository because they are quite huge and I don’t want everyone who downloads the repo to have to download hundreds of megabytes. But I’m thinking about putting them in a separate github repo and then having a download script from here.
No change after installing that package, still seeing the same error