Package: catframes
CatframesA script that concatenates frames. FFmpeg wrapper.With this software, you can, for example,create a timelapse video,turn an animation rendered in a PNG sequence into a video,or compress a sequence of frames from a surveillance camera using a video codec.The script simply accepts folders with JPEG and PNG files as input and outputs MP4 or WebM.InstallationFrom PyPII recommend to do it as root.python3 -m pip install catframesInstalling dependencies:Alpine:apk add ffmpeg font-dejavuDebian/Ubuntu:apt-get install ffmpeg fonts-dejavuCentos/RHEL:yum install ffmpeg dejavu-sans-mono-fontsWindows:Get FFmpeg Windows buildsFrom source (Linux, Unix-like)Catframes is a script. Everything, including tests,
is contained in a single file that you can upload
to a system yourself.cp catframes.py /usr/local/bin/
chmod 755       /usr/local/bin/catframes.py
ln -s /usr/local/bin/catframes.py /usr/local/bin/catframesInstalling dependencies: exactly the same, except forPillow.If you don't want to use pip, the library usually can be installed from operating system repository.Alpine:apk add py3-pillowDebian/Ubuntu:apt-get install python3-pilCentos/RHEL:yum install python3-pillowIt is better to run tests as a regular user.python3 -m unittest discover /usr/local/bin/ -p catframes.pyFrom source (Windows)You need Python3 to be available incmdaspython3.Copy bothcatframes.pyandcatframes.batto a folder (for instance,C:\Program Files\MyScripts).Add this folder toPATHenvironment variable.InstallFFmpeg.Add the folder, whereffmpeg.exeis installed, to thePATHenvironment variable.Install Pillow.You don't have to install fonts, because Windows already has Courier New.You may install Pillow, usingpip.If you don't usepipfor some reason, you maydownload Pillow*.whlfile,
corresponding to your Python version, unpack it and putPILin your Python interpreter directory.
This usually works.
Files withwhlextension are ordinary ZIP archives.If everything is done, the following commands will work in any folder.ffmpeg -version

catframes --helpYou may run unit tests with the following line:python3 -m unittest discover "C:\Program Files\MyScripts" -p catframes.pyUsageVideo encoding is a long process. If you are launching the program for the first time,
a good way to try different options is to use--limitto make short video samples.The command to run it with default settings looks like this:catframes folderA folderB folderC result.webmFor automatic launches (through a CRON job, etc.), I recommend to add these options:catframes -sf --port-range=10140:10240 folderA folderB folderC result.webmDefault settingsFrame rate:30 frames per second.You may change it with-rparameter.
Acceptable values are from 1 to 60.
All source frames will be included, so this parameter
determines speed of your video record.Compression quality:medium.You may change it with-qparameter.
Acceptable values arepoor,medium,high.Margin (background) color:black.You may change it with--margin-color.
It takes values in formats#rrggbband#rgb(hexadecimal digits;#abcmeans#aabbcc).Text overlaysThere is a 3 by 3 grid. You can place labels in all cells except the central one.Please, use--left,--right,--top,--left-top, etc.Important:One of the cells must be reserved for important warnings.
It is set byWARNvalue (in any case). By default, this is the top cell.You can use any constant text in the labels, including line feeds (\n).
You can also use a limited set of functions in curly brackets that output
information about the source image or about the system.To prevent special characters from being interpreted, you should usesingle quotes in Unix Shell, however,
youmustuse double quotes in the Windows command line.Example (Bash):catframes \
    -r=5 --limit=10 \
    --left-top='Frame {frame:video}' \
    --left-bottom='{dir}/{fn}\n\nModified: {mtime}' \
    --right-bottom='Compressed {vtime:%Y-%m-%d %H:%M}' \
    folder video.webmRead more about these functions in the docs.See alsoDocumentation (in Russian)