# Read node¶

This documentation is for version 1.0 of Read (fr.inria.built-in.Read).

## Description¶

Node used to read images or videos from disk. The image/video is identified by its filename and its extension. Given the extension, the Reader selected from the Preferences to decode that specific format will be used.

## Inputs¶

Input Description Optional
Sync   Yes

## Controls¶

Parameter / script name Type Default Function
File Info… / fileInfo Button   Press to display information about the file
Decoder / decodingPluginChoice Choice Default
Select the internal decoder plug-in used for this file format. By default this uses the plug-in selected for this file extension in the Preferences of Natron
Default: Use the default plug-in chosen from the Preferences to read this file format
File / filename N/A   The input image sequence/video stream file(s).
First Frame / firstFrame Integer 0 The first frame number to read from this image sequence or video file. This cannot be less than the first frame of the image sequence or video file, and cannot be greater than the last frame of the image sequence or video file. The first frame of a video file is numbered 1. If startingTime is 1 or timeOffset is 0, this is also the first output frame.
Before / before Choice Hold
What to do before the first frame of the sequence.
Hold (hold): While before the sequence, load the first frame.
Loop (loop): Repeat the sequence before the first frame
Bounce (bounce): Repeat the sequence in reverse before the first frame
Black (black): Render a black image
Error (error): Report an error
Last Frame / lastFrame Integer 0 The last frame number to read from this image sequence or video file. This cannot be less than the first frame of the image sequence or video file, and cannot be greater than the last frame of the image sequence or video file. The first frame of a video file is numbered 1. If startingTime is 1 or timeOffset is 0, this is also the last output frame.
After / after Choice Hold
What to do after the last frame of the sequence.
Hold (hold): While before the sequence, load the first frame.
Loop (loop): Repeat the sequence before the first frame
Bounce (bounce): Repeat the sequence in reverse before the first frame
Black (black): Render a black image
Error (error): Report an error
On Missing Frame / onMissingFrame Choice Error
What to do when a frame is missing from the sequence/stream.
Hold previous (previous): Try to load the previous frame in the sequence/stream, if any.
Load next (next): Try to load the next frame in the sequence/stream, if any.
Load nearest (nearest): Try to load the nearest frame in the sequence/stream, if any.
Error (error): Report an error
Black (black): Render a black image
Frame Mode / frameMode Choice Starting Time

Starting Time (startingTime): Set at what output frame the first sequence frame is output. The sequence frame designated by the firstFrame parameter is output at frame timeOffset.
Time Offset (timeOffset): Set an offset to be applied as a number of frames. The sequence frame designated by the firstFrame parameter is output at frame firstFrame+timeOffset.
Starting Time / startingTime Integer 0 At what time (on the timeline) should this sequence/video start.
Time Offset / timeOffset Integer 0 Offset applied to the sequence in time units (i.e. frames).
Proxy File / proxy N/A   Filename of the proxy images. They will be used instead of the images read from the File parameter when the proxy mode (downscaling of the images) is activated.
Proxy threshold / proxyThreshold Double x: 1 y: 1 The scale of the proxy images. By default it will be automatically computed out of the images headers when you set the proxy file(s) path. When the render scale (proxy) is set to a scale lower or equal to this value then the proxy image files will be used instead of the original images. You can change this parameter by checking the “Custom scale” checkbox so that you can change the scale at which the proxy images should be used instead of the original images.
Custom Proxy Scale / customProxyScale Boolean Off Check to enable the Proxy scale edition.
File Premult / filePremult Choice PreMultiplied
The image file being read is considered to have this premultiplication state.
To get UnPremultiplied (or “unassociated alpha”) images, set the “Output Premult” parameter to Unpremultiplied.
By default the value should be correctly be guessed by the image file, but this parameter can be edited if the metadatas inside the file are wrong.
- Opaque means that the alpha channel is considered to be 1 (one), and it is not taken into account in colorspace conversion.
- Premultiplied, red, green and blue channels are divided by the alpha channel before applying the colorspace conversion, and re-multiplied by alpha after colorspace conversion.
- UnPremultiplied, means that red, green and blue channels are not modified before applying the colorspace conversion, and are multiplied by alpha after colorspace conversion.
This is set automatically from the image file and the plugin, but can be adjusted if this information is wrong in the file metadata.
RGB images can only be Opaque, and Alpha images can only be Premultiplied (the value of this parameter doesn’t matter).
Opaque (opaque): The image is opaque and so has no premultiplication state, as if the alpha component in all pixels were set to the white point.
PreMultiplied (premult): The image is premultiplied by its alpha (also called “associated alpha”).
UnPreMultiplied (unpremult): The image is unpremultiplied (also called “unassociated alpha”).
Output Premult / outputPremult Choice PreMultiplied
The alpha premultiplication in output of this node will have this state.
Opaque (opaque): The image is opaque and so has no premultiplication state, as if the alpha component in all pixels were set to the white point.
PreMultiplied (premult): The image is premultiplied by its alpha (also called “associated alpha”).
UnPreMultiplied (unpremult): The image is unpremultiplied (also called “unassociated alpha”).
Output Components / outputComponents Choice RGBA
What type of components this effect should output when the main color plane is requested. For the Read node it will map (in number of components) the Output Layer choice to these.
RGBA
RGB
RG
Alpha
Frame rate / frameRate Double 24 By default this value is guessed from the file. You can override it by checking the Custom fps parameter. The value of this parameter is what will be visible by the effects down-stream.
Custom FPS / customFps Boolean Off If checked, you can freely force the value of the frame rate parameter. The frame-rate is just the meta-data that will be passed downstream to the graph, no retime will actually take place.
OCIO Config File / ocioConfigFile N/A   OpenColorIO configuration file
File Colorspace / ocioInputSpaceIndex Choice   Input data is taken to be in this colorspace.
Output Colorspace / ocioOutputSpaceIndex Choice   Output data is taken to be in this colorspace.
OCIO config help… / ocioHelp Button   Help about the OpenColorIO configuration.