Supported Dynamic Patterns
| Pattern | Type | Description |
|---|---|---|
%0d / %03d | Input/Output | Sequence patterns for numbered files (e.g., frame_%03d.png) |
tee | Output | Write to multiple outputs simultaneously |
segment | Output | Split output into multiple segment files |
image2 | Input | Read image sequences with glob patterns |
concat | Input | Concatenate multiple files from a list |
HLS/DASH | Input/Output | Streaming manifests with multiple segments |
Dynamic Inputs
Rendi supports using a compressed .zip folder as an FFmpeg input source. This enables commands that require multiple input files, such as image sequences (%0d patterns), HLS playlists, or concat demuxer lists.
Use the field input_compressed_folder to supply a URL pointing to a .zip file. Rendi automatically downloads and decompresses the archive before running your FFmpeg command.
Important: Command run time includes the time required to decompress the .zip file.
Using HLS recording as input stored in a ZIP folder
This example demonstrates processing an HLS recording stored in a ZIP archive. The sample ZIP at playlist_sample.zip contains:playlist.m3u8- the HLS playlist fileoutput0.ts,output1.ts,output2.ts- the video segments
Tip: For faster processing without re-encoding, use -c copy -bsf:a aac_adtstoasc instead.
Using indexed image frames to create a video
This example demonstrates creating a video from a sequence of numbered image frames stored in a ZIP archive. The ZIP should contain files likeframe_001.png, frame_002.png, etc.
-framerate 30- Sets the input frame rate to 30 FPS-i frame_%03d.png- Reads sequentially numbered frames (frame_001.png, frame_002.png, …)-c:v libx264- Encodes output as H.264 video-pix_fmt yuv420p- Ensures compatibility with most video players
Tip: Adjust the pattern to match your file naming (e.g., img_%04d.jpg for img_0001.jpg, img_0002.jpg, etc.).
Dynamic Outputs
Rendi also supports compressed output folders. To enable this, set theoutput_files field to the special flag:
.zip archive containing only the output files produced by your FFmpeg command.
Important: Command runtime includes the time required to compress the output folder.
Extracting frames from an input video and storing them in a zip
This example extracts individual frames from a video and packages them into a ZIP archive. The output can be used as input for the “Using indexed image frames to create a video” example above.-i {{in_1}}- Reads the input video file-vf fps=30- Extracts frames at 30 frames per secondframe_%03d.png- Outputs frames asframe_001.png,frame_002.png, etc.
input_compressed_folder for video reconstruction or other processing.
Tip: Adjust thefpsvalue to control frame extraction density. Usefps=1for 1 frame per second, or omit-vf fps=30entirely to extract every frame at the video’s native framerate.
Generating an HLS output folder and storing it as a ZIP
Response Format for Compressed Output Folders
In addition to the usual fields, the response includes extra metadata describing the generated.zip archive:
Field Descriptions
- file_count - Number of files contained inside the output
.zipfolder. - size_mbytes - Total size (MB) of all files before compression.
- size_compressed_mbytes - Final compressed
.zipsize stored in Rendi. - file_format - Always
zip. - storage_url - The download URL of the compressed output folder.
The compressed output file name is: <command_id>.zip
Processing & Storage Quota
- Processing quota for inputs is calculated based on the size of the files after decompression.
- Processing quota for OUTPUT_FOLDER uses the size of files before compression.
- Storage usage is based on the size of the compressed .zip file.