7. visit_utils¶
visit_utils is a pure python module distributed along with Visit’s Python interface. It provides a simple interface to encode movie files and methods that wrap more complex VisIt Python command sequences to simplify a few common use cases. It also provides a stand alone PySide based annotation rendering API.
Here we provide details on the encoding and engine launching modules:
7.1. visit_utils.encoding¶
visit_utils.encoding
provides methods that allow you to use movie encoders (e.g ffmpeg) to encode movies from sequences of image files and extract image files from movie files.
Methods:
-
visit_utils.encoding.
encode
(ipattern, ofile, fdup=None, etype=None, stereo=False, input_frame_rate=None, output_frame_rate=None)¶ Encodes a sequence of images into a movie.
Example Usage:
from visit_utils.encoding import * encode("input.%04d.png","output.mpg") encode("input.%04d.png","output.wmv",fdup=5) encode("input.%04d.png","output.sm") encode("input.%04d.png","output.sm",stereo=True)
Parameters: - ipattern – Input file pattern. Requires a printf style # format like “file%04d.png”.
- ofile – Output file name
- fdup – Allows you to set an integer number of times to duplicate the input frames as they are passed to the encoder. (The duplication actually happens via symlinks) [Default = None]
- etype – Allows to select which encoder to use ( If not passed the file extension is used to select an encoder ) [Default = None]
- input_frame_rate – Allows you to set the input frame rate, in frames per second, that the encoder uses. [Default = None]
- output_frame_rate – Allows you to set the output frame rate, in frames per second, that the encoder uses. Note output formats typically only support a few output fps values. To obtain a perceived fps, the input_frame_rate is a better option to try. [Default = None]
-
visit_utils.encoding.
extract
(ifile, opattern)¶ Extracts a sequence of images from a a movie.
Example:
extract("movie.mpg","output%04d.png")
Parameters: - ifile – Input file.
- opattern – Output file pattern. Requires a printf style # format like “file%04d.png”.
-
visit_utils.encoding.
encoders
()¶ Returns: A list of strings of the available encoders.
7.2. visit_utils.engine¶
visit_utils.engine
provides an interface to launch VisIt engines that uses installed host profiles.
Methods:
-
visit_utils.engine.
open
(nprocs, method, ppn=1, part=None, bank=None, rtime=None, vdir=None)¶ Launch VisIt compute engine on the current host.
Example usage:
Launch engine with 36 MPI tasks using default options for this host:
engine.open(nprocs=36)
Launch engine with 36 MPI tasks using a specific partition:
engine.open(nprocs=36, part="pbatch")
Launch engine with 36 MPI tasks, ask for 60 minute time limit:
engine.open(nprocs=36, rtime=60)
If you already have a slurm batch allocation, you can use:
engine.open(method="slurm")
This reads the
SLURM_JOB_NUM_NODES
andSLURM_CPUS_ON_NODE
env vars and uses these values to launch with srun.If you already have a lsf batch allocation, you can use:
engine.open(method="lsf")
This reads the
LSB_DJOB_NUMPROC
env var and uses it the to launch with mpirun.Parameters: - nprocs – Number of MPI tasks
- methods – Launch Method (srun, etc)
- ppn – MPI tasks per node
- part – Partition
- rtime – Job time
- vdir – Path to VisIt install
-
visit_utils.engine.
close
(ename=None)¶ Closes VisIt’s Compute Engine.
Parameters: ename – Engine name to close (optional)
-
visit_utils.engine.
supported_hosts
()¶ Returns: A list of the names of supported hosts.