Render scripts
Required arguments
pixelflow <SCRIPT> -o <PATH>
<SCRIPT>is path to script file.-o <PATH>selects output destination. PixelFlow chooses the stream format from the final clip format.-o -writes the selected stream to stdout.
Command reads script, indexes reachable source(...) nodes, validates final graph, and writes either Y4M or rawvideo output.
Flags
--set NAME=VALUE
Pass script parameters as named values.
--start N
Start render at zero-based frame index N.
--end N
Stop before frame index N.
--threads N
Override worker thread count. N must be positive non-zero integer.
--timings
Print per-node timing report to stderr after render completes.
Examples
pixelflow demo.pf -o out.y4m
pixelflow demo.pf -o - > out.y4m
pixelflow demo.pf -o out.y4m --set width=1280 --set fps=24000/1001
pixelflow demo.pf -o out.y4m --start 100 --end 200
pixelflow demo.pf -o out.y4m --threads 4 --timings
Output formats
PixelFlow auto-detects the final clip format:
- Integer Gray and YUV clips are written as Y4M.
- Planar RGB clips are written as FFmpeg-compatible rawvideo.
Rawvideo has no header. When piping or importing RGB output into ffmpeg, pass the pixel format, frame size, and frame rate explicitly. PixelFlow planar RGB maps to FFmpeg planar GBR names:
| PixelFlow format | FFmpeg -pixel_format |
|---|---|
rgbp8 | gbrp |
rgbp10 | gbrp10le |
rgbp12 | gbrp12le |
rgbp16 | gbrp16le |
rgbpf32 | gbrpf32le |
Example for a 1920x1080 RGB clip at 24000/1001 fps:
pixelflow rgb.pf -o - | ffmpeg -f rawvideo -pixel_format gbrp -video_size 1920x1080 -framerate 24000/1001 -i - out.mkv
Progress output
When stderr is connected to an interactive terminal, PixelFlow shows indexing and rendering progress with transient progress bars. Progress is hidden in non-interactive shells so CI logs and redirected diagnostics stay clean.
When rendering to stdout with -o -, indexing progress may still appear on interactive stderr, but rendering progress is suppressed so stdout piping workflows remain quiet apart from the Y4M stream.