-- Leo's gemini proxy

-- Connecting to gemini.techrights.org:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini;lang=en-GB

● 05.03.21


●● Adding, Seaming Together, Merging, or Concatenating Videos From the Command Line With FFMPEG (Scripting for Streamlining of Workflows)


Posted in Videos at 11:19 am by Dr. Roy Schestowitz


Video download link


↺ Video download link


http://techrights.org/videos/video-ffmpeg-concat.webm


Summary: In order to enrich the looks of videos with almost no extra time/effort (all scripted, no GUIs should be needed) use ffmpeg with the concat operator; but there are several big gotchas, namely lack of sound and need for consistency across formats/codecs and even sampling rates


TODAY we focused on some site ‘logistics’ and especially dealt with video and sound. The goal is to automate some tasks and/or improve the presentation of multimedia using Free software. Free as in freedom…


Frankly, the tool we used to generate some video segments was an “online” thing called Canva (never heard of it before, but it seems powerful enough and doesn’t require downloading anything, logging in etc. — not even an E-mail address). On the face of it, problem solved! But no… it gets trickier from then on. I spent many hours working around barriers.


↺ called Canva


Well, ffmpeg is very powerful and extremely versatile. However, as it turns out, ffmpeg will first need to convert .mp4 files downloaded from there (Canva) so as to incorporate sound, even if it’s just mute (inaudible sound track).


For this reason and for that purpose, as per people who had similar issues concatenation tracks that lack sound (merged or combined with some that do have sound), run a command as follows (depending on the sampling rate, 48000 in my case, or else the sound/pitch will be funny).


ffmpeg -i "file.mp4" -f lavfi -i anullsrc=cl=mono:r=48000 -shortest -y "file-new.mp4"


Assuming you now have a track that is compatible with what you’d merge it with, ensure that the original is moreover re-encoded for it to be applied consistently. As I always record as WebM, I need to then run (for a video like the above):


ffmpeg -i video-ffmpeg-concat.webm -c:v libx264 -preset slow video-ffmpeg-concat.mp4


This yields something suitable as it must be strictly compatible in sampling, codec type, and other factors. That’s a limitation in ffmpeg. This is a common issue for a lot of people and it took me hours to overcome (many trials and errors). I wished to document this as other people too got stuck (many forum posts).


Depending on which files you wish to concatenate with (and the order), write down the ‘recipe’, e.g. recipe.txt, containing



file file-new.mp4

file testing-6.mp4

file outro-new.mp4


Relative paths too can be prepended (e.g. file Videos/outro-new.mp4). The ffmpeg documentation explains the syntax better. There’s a lot more about concat [1, 2].


↺ 1

↺ 2


Then run everything as follows:


ffmpeg -f concat -i recipe.txt output.webm


The reason the assembly of files is done with .mp4 files (to yield a WebM) is the insistence of Canva that downloaded videos are either MP4 or GIF. There must be some better ways and I’ll improve this over time (this is all still very fresh in the mind; I’ve spent a lot of time on this).


From now on we have the ability to make videos that are 1) smaller in size because of re-encoding with strong compression and 2) have a little bit of extra context. We’ll improve this over time and push to git. █


Update: This is what the outcome can look like (mind start and end of clip).


Video download link


↺ Video download link


http://techrights.org/videos/ffmpeg-example-demo-final.webm


Share in other sites/networks: These icons link to social bookmarking sites where readers can share and discover new web pages.


Permalink  Send this to a friend


Permalink

↺ Send this to a friend



----------

Techrights

➮ Sharing is caring. Content is available under CC-BY-SA.

-- Response ended

-- Page fetched on Sat May 4 03:20:35 2024