A Go language library for parsing file sequence strings commonly used in VFX and animation applications.
Ported from the original fileseq Python library: https://github.com/justinfx/fileseq
For C++, see C++ Support
Support for:
- Standard: 1-10
- Comma Delimted: 1-10,10-20
- Chunked: 1-100x5
- Filled: 1-100y5
- Staggered: 1-100:3 (1-100x3, 1-100x2, 1-100)
- Negative frame numbers: -10-100
- Padding: #=4 padded, @=single pad
- Printf Syntax Padding: %04d=4 padded, %01d=1 padded
- Houdini Syntax Padding: $F4=4 padding, $F=1 padded
- Udim Syntax Padding: or %(UDIM)d, always 4 padded
Sequences of files are expected to follow a pattern similar to:
- /path/to/some/file_foo.0100.exr
- /path/to/some/file_foo.1-100#.jpg
- /path/to/some/file_foo.1-100@@@.tif
- /path/to/some/file_foo.1-100%03d.tif
- /path/to/some/file_foo.1-100$F3.tif
- /path/to/some/file_foo.1-100.tif
- /path/to/some/file_foo.1-100%(UDIM)d.tif
go get github.com/justinfx/gofileseq/v2
Also included is a seqls
tool, which uses gofileseq
to produce an executable, used for listing sequences on the filesystem:
And seqinfo
tool, which can print plain-text or json parsed information about one or more sequence strings.
Download the latest binary release
Or install from source:
go get github.com/justinfx/gofileseq/v2/cmd/seqls
seql some/images
# some/images/file_foo.1-100@@@.tif
A C++ pure port of gofileseq is also available in the cpp dir