[FFmpeg-user] ffmpeg-lambda-layer and concat protocol

mark at shazaml.com mark at shazaml.com
Wed Dec 18 18:44:52 EET 2019

I am using the ffmpeg-lambda-layer in the AWS Serverless Application
Repository published by Gojko Adzic:



I want to concatenate multiple MP3 files together into a single audio file.
I have what I think is the correct command, but I am not sure how to
represent it in code so that it is formatted correctly for the lambda layer.


Here is the code sample. Any assistance is greatly appreciated:



  const childProcess = require('child_process');





      '-i', `"concat:/tmp/a.mp3|/tmp/b.mp3|/tmp/c.mp3|/tmp/d.mp3"`,





    { stdio: "inherit" }





ffmpeg docs: https://trac.ffmpeg.org/wiki/Concatenate#protocol



This is one Lambda function of multiple that makes up a Step Function state


The Lambda is throwing an exception: "ENOENT: no such file or directory,
open '/tmp/out.mp3'"


The output in CloudWatch is:


ffmpeg version 4.1.3-static https://johnvansickle.com/ffmpeg/ Copyright (c)
2000-2019 the FFmpeg developers

built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516

configuration: --enable-gpl --enable-version3 --enable-static
--disable-debug --disable-ffplay --disable-indev=sndio
--disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r
--enable-gnutls --enable-gmp --enable-gray --enable-libaom
--enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype
--enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libopenjpeg --enable-librubberband --enable-libsoxr
--enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora
--enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp
--enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid
--enable-libzvbi --enable-libzimg

libavutil 56. 22.100 / 56. 22.100

libavcodec 58. 35.100 / 58. 35.100

libavformat 58. 20.100 / 58. 20.100

libavdevice 58. 5.100 / 58. 5.100

libavfilter 7. 40.101 / 7. 40.101

libswscale 5. 3.100 / 5. 3.100

libswresample 3. 3.100 / 3. 3.100

libpostproc 55. 3.100 / 55. 3.100

"concat:/tmp/a.mp3|/tmp/b.mp3|/tmp/c.mp3|/tmp/d.mp3": No such file or


What is the correct way to pass this command to ffmpeg?






More information about the ffmpeg-user mailing list