WriteFFmpeg node

pluginIcon

This documentation is for version 1.0 of WriteFFmpeg.

Description

Write images or video file using FFmpeg.

FFmpeg versions (compiled with / running with):

libavformat 57.56.100 / 57.56.100

libavcodec 57.64.101 / 57.64.101

libavutil 55.34.100 / 55.34.100

libswscale 4.2.100 / 4.2.100

Inputs

Input Description Optional
Source   No

Controls

Parameter / script name Type Default Function
Output Components / outputComponents Choice RGBA Map the input layer to this type of components before writing it to the output file.
File / filename N/A   The output image sequence/video stream file(s). The string must match the following format: path/sequenceName###.ext where the number of # (hashes) will define the number of digits to append to each file. For example path/mySequence###.jpg will be translated to path/mySequence000.jpg, path/mySequence001.jpg, etc. %d printf-like notation can also be used instead of the hashes, for example path/sequenceName%03d.ext will achieve the same than the example aforementionned. there will be at least 2 digits). The file name may not contain any # (hash) in which case it will be overriden everytimes. Views can be specified using the “long” view notation %V or the “short” notation using %v.
Format Type / formatType Choice Project Format
Determines which rectangle of pixels will be written in output.
Input Format: Renders the pixels included in the input format
Project Format: Renders the pixels included in the project format
Fixed Format: Renders the pixels included in the format indicated by the Format parameter.
Format / NatronParamFormatChoice Choice HD 1920x1080 The output format to render
OCIO Config File / ocioConfigFile N/A   OpenColorIO configuration file
Input Colorspace / ocioInputSpace String scene_linear Input data is taken to be in this colorspace.
Input Colorspace / ocioInputSpaceIndex Choice linear
Input data is taken to be in this colorspace.
linear: Scene-linear, high dynamic range. Used for rendering and compositing. (reference, scene_linear)
sRGB: Standard RGB Display Space (color_picking, texture_paint, matte_paint)
rec709: Rec. 709 (Full Range) Display Space
Cineon: Cineon (Log Film Scan) (compositing_log, color_timing)
Gamma1.8: Emulates an idealized Gamma 1.8 display device.
Gamma2.2: Emulates an idealized Gamma 2.2 display device.
Gamma2.4: Emulates an idealized Gamma 2.4 display device.
Panalog: Sony/Panavision Genesis Log Space
REDLog: RED Log Space
ViperLog: Viper Log Space
AlexaV3LogC: Alexa Log C
PLogLin: Josh Pines style pivoted log/lin conversion. 445->0.18
SLog: Sony SLog
SLog1: Sony SLog1
SLog2: Sony SLog2
SLog3: Sony SLog3
CLog: Canon CLog
Protune: GoPro Protune
raw: Raw Data. Used for normals, points, etc. (default, data)
File Colorspace / ocioOutputSpace String rec709 Output data is taken to be in this colorspace.
File Colorspace / ocioOutputSpaceIndex Choice rec709
Output data is taken to be in this colorspace.
linear: Scene-linear, high dynamic range. Used for rendering and compositing. (reference, scene_linear)
sRGB: Standard RGB Display Space (color_picking, texture_paint, matte_paint)
rec709: Rec. 709 (Full Range) Display Space
Cineon: Cineon (Log Film Scan) (compositing_log, color_timing)
Gamma1.8: Emulates an idealized Gamma 1.8 display device.
Gamma2.2: Emulates an idealized Gamma 2.2 display device.
Gamma2.4: Emulates an idealized Gamma 2.4 display device.
Panalog: Sony/Panavision Genesis Log Space
REDLog: RED Log Space
ViperLog: Viper Log Space
AlexaV3LogC: Alexa Log C
PLogLin: Josh Pines style pivoted log/lin conversion. 445->0.18
SLog: Sony SLog
SLog1: Sony SLog1
SLog2: Sony SLog2
SLog3: Sony SLog3
CLog: Canon CLog
Protune: GoPro Protune
raw: Raw Data. Used for normals, points, etc. (default, data)
key1 / key1 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
value1 / value1 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
key2 / key2 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
value2 / value2 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
key3 / key3 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
value3 / value3 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
key4 / key4 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
value4 / value4 String  
OCIO Contexts allow you to apply specific LUTs or grades to different shots.
Here you can specify the context name (key) and its corresponding value.
Full details of how to set up contexts and add them to your config can be found in the OpenColorIO documentation:
OCIO config help... / ocioHelp Button   Help about the OpenColorIO configuration.
Input Premult / inputPremult Choice PreMultiplied
Input is considered to have this premultiplication state.
If it is Premultiplied, red, green and blue channels are divided by the alpha channel before applying the colorspace conversion.
This is set automatically from the input stream information, but can be adjusted if this information is wrong.
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: The image is premultiplied by its alpha (also called “associated alpha”).
UnPreMultiplied: The image is unpremultiplied (also called “unassociated alpha”).
Clip Info... / clipInfo Button   Display information about the inputs
Frame Range / frameRange Choice Project frame range
What frame range should be rendered.
Union of input ranges: The union of all inputs frame ranges will be rendered.
Project frame range: The frame range delimited by the frame range of the project will be rendered.
Manual: The frame range will be the one defined by the first frame and last frame parameters.
First Frame / firstFrame Integer 0  
Last Frame / lastFrame Integer 0  
Format / format Choice guess from filename
Output format/container.
AVI (Audio Video Interleaved) [avi]: Compatible with ayuv, cinepak, ffv1, ffvhuff, flv, huffyuv, jpeg2000, jpegls, ljpeg, mjpeg, mpeg2video, mpeg4, msmpeg4v2, msmpeg4, png, rawvideo, svq1, targa, v308, v408, v410, vc2, libschroedinger, libvpx, libx264, libx264rgb.
raw H.264 video [h264]: Compatible with libx264, libx264rgb.
raw MPEG-4 video [m4v]: Compatible with mpeg4.
Matroska [matroska]: Compatible with prores_ksap4h, prores_ksapch, prores_ksapcn, prores_ksapcs, prores_ksapco, mjpeg, mpeg2video, mpeg4, msmpeg4, rawvideo, vc2, libschroedinger, libvpx, libx264, libx264rgb.
QuickTime / MOV [mov]: Compatible with prores_ksap4h, prores_ksapch, prores_ksapcn, prores_ksapcs, prores_ksapco, avrp, cinepak, dnxhd, jpeg2000, mjpeg, mpeg2video, mpeg4, msmpeg4, png, qtrle, rawvideo, svq1, targa, tiff, v308, v408, v410, vc2, libschroedinger, libx264, libx264rgb.
MP4 (MPEG-4 Part 14) [mp4]: Compatible with jpeg2000, mjpeg, mpeg2video, mpeg4, png, vc2, libschroedinger, libx264, libx264rgb.
MPEG-1 Systems / MPEG program stream [mpeg]: Compatible with libx264, libx264rgb.
MPEG-TS (MPEG-2 Transport Stream) [mpegts]: Compatible with mpeg2video, mpeg4, vc2, libschroedinger, libx264, libx264rgb.
MXF (Material eXchange Format) [mxf]: Compatible with dnxhd, mpeg2video, libx264, libx264rgb.
3GP2 (3GPP2 file format) [3g2]: Compatible with mpeg4, libx264, libx264rgb.
3GP (3GPP file format) [3gp]: Compatible with mpeg4, libx264, libx264rgb.
Codec / codec Choice ap4h Apple ProRes 4444
Output codec used for encoding. The general recommendation is to write either separate frames (using WriteOIIO), or an uncompressed video format, or a “digital intermediate” format (ProRes, DNxHD), and to transcode the output and mux with audio with a separate tool (such as the ffmpeg or mencoder command-line tools).
The FFmpeg encoder codec name is given between brackets at the end of each codec description.
Please refer to the FFmpeg documentation http://ffmpeg.org/ffmpeg-codecs.html for codec options.
ap4h Apple ProRes 4444: Compatible with matroska, mov.
apch Apple ProRes 422 HQ: Compatible with matroska, mov.
apcn Apple ProRes 422: Compatible with matroska, mov.
apcs Apple ProRes 422 LT: Compatible with matroska, mov.
apco Apple ProRes 422 Proxy: Compatible with matroska, mov.
AVrp Avid 1:1 10-bit RGB Packer [avrp]: Compatible with mov.
AYUV Uncompressed packed MS 4:4:4:4 [ayuv]: Compatible with avi.
cvid Cinepak [cinepak]: Compatible with avi, mov.
AVdn VC3/DNxHD [dnxhd]: Compatible with mov, mxf.
FFV1 FFmpeg video codec #1 [ffv1]: Compatible with avi.
FFVH Huffyuv FFmpeg variant [ffvhuff]: Compatible with avi.
FLV1 FLV / Sorenson Spark / Sorenson H.263 (Flash Video) [flv]: Compatible with avi.
HFYU HuffYUV [huffyuv]: Compatible with avi.
mjp2 JPEG 2000 [jpeg2000]: Compatible with avi, mov, mp4.
MJLS JPEG-LS [jpegls]: Compatible with avi.
LJPG Lossless JPEG [ljpeg]: Compatible with avi.
jpeg Photo JPEG [mjpeg]: Compatible with avi, matroska, mov, mp4.
m2v1 MPEG-2 Video [mpeg2video]: Compatible with avi, matroska, mov, mp4, mpegts, mxf.
mp4v MPEG-4 Video [mpeg4]: Compatible with avi, m4v, matroska, mov, mp4, mpegts, 3g2, 3gp.
MP42 MPEG-4 part 2 Microsoft variant version 2 [msmpeg4v2]: Compatible with avi.
3IVD MPEG-4 part 2 Microsoft variant version 3 [msmpeg4]: Compatible with avi, matroska, mov.
png PNG (Portable Network Graphics) image [png]: Compatible with avi, mov, mp4.
rle QuickTime Animation (RLE) video [qtrle]: Compatible with mov.
RGBx Uncompressed 4:2:2 8-bit [rawvideo]: Compatible with avi, matroska, mov.
SVQ1 Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1 [svq1]: Compatible with avi, mov.
tga Truevision Targa image [targa]: Compatible with avi, mov.
tiff TIFF image [tiff]: Compatible with mov.
v308 Uncompressed 8-bit 4:4:4 [v308]: Compatible with avi, mov.
v308 Uncompressed 8-bit QT 4:4:4:4 [v408]: Compatible with avi, mov.
v410 Uncompressed 4:4:4 10-bit [v410]: Compatible with avi, mov.
drac SMPTE VC-2 (previously BBC Dirac Pro) [vc2]: Compatible with avi, matroska, mov, mp4, mpegts.
drac libschroedinger Dirac [libschroedinger]: Compatible with avi, matroska, mov, mp4, mpegts.
VP80 On2 VP8 [libvpx]: Compatible with avi, matroska.
avc1 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 [libx264]: Compatible with avi, h264, matroska, mov, mp4, mpeg, mpegts, mxf, 3g2, 3gp.
avc1 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 RGB [libx264rgb]: Compatible with avi, h264, matroska, mov, mp4, mpeg, mpegts, mxf, 3g2, 3gp.
Codec Name / codecShortName String   The codec used when the writer was configured. If this parameter is visible, this means that this codec may not be supported by this version of the plugin.
FPS / fps Double 24 File frame rate
Reset FPS / resetFps Button   Reset FPS from the input FPS.
DNxHD Codec Profile / DNxHDCodecProfile Choice DNxHR HQ
Only for the Avid DNxHD codec, select the target bit rate for the encoded movie. The stream may be resized to 1920x1080 if resolution is not supported. Writing in thin-raster HDV format (1440x1080) is not supported by this plug-in, although FFmpeg supports it.
DNxHR HQ: DNxHR High Quality (8 bit, 4:2:2 chroma sub-sampling, 4.5:1 compression)
DNxHR SQ: DNxHR Standard Quality (8 bit, 4:2:2 chroma sub-sampling, 7:1 compression)
DNxHR LB: DNxHR Low Bandwidth (8 bit, 4:2:2 chroma sub-sampling, 22:1 compression)
DNxHD 422 10-bit 440Mbit: 880x in 1080p/60 or 1080p/59.94, 730x in 1080p/50, 440x in 1080p/30, 390x in 1080p/25, 350x in 1080p/24
DNxHD 422 10-bit 220Mbit: 440x in 1080p/60 or 1080p/59.94, 365x in 1080p/50, 220x in 1080i/60 or 1080i/59.94, 185x in 1080i/50 or 1080p/25, 175x in 1080p/24 or 1080p/23.976, 220x in 1080p/29.97, 220x in 720p/59.94, 175x in 720p/50
DNxHD 422 8-bit 220Mbit: 440 in 1080p/60 or 1080p/59.94, 365 in 1080p/50, 220 in 1080i/60 or 1080i/59.94, 185 in 1080i/50 or 1080p/25, 175 in 1080p/24 or 1080p/23.976, 220 in 1080p/29.97, 220 in 720p/59.94, 175 in 720p/50
DNxHD 422 8-bit 145Mbit: 290 in 1080p/60 or 1080p/59.94, 240 in 1080p/50, 145 in 1080i/60 or 1080i/59.94, 120 in 1080i/50 or 1080p/25, 115 in 1080p/24 or 1080p/23.976, 145 in 1080p/29.97, 145 in 720p/59.94, 115 in 720p/50
DNxHD 422 8-bit 36Mbit: 90 in 1080p/60 or 1080p/59.94, 75 in 1080p/50, 45 in 1080i/60 or 1080i/59.94, 36 in 1080i/50 or 1080p/25, 36 in 1080p/24 or 1080p/23.976, 45 in 1080p/29.97, 100 in 720p/59.94, 85 in 720p/50
Enable Alpha / enableAlpha Boolean On Write alpha channel to the video file (if supported by the codec).
DNxHD Output Range / DNxHDEncodeVideoRange Choice Video Range
When encoding using DNxHD this is used to select between full scale data range and ‘video/legal’ data range.
Full scale data range is 0-255 for 8-bit and 0-1023 for 10-bit. ‘Video/legal’ data range is a reduced range, 16-240 for 8-bit and 64-960 for 10-bit.
Bitrate / bitrateMbps Double 185
The target bitrate the codec will attempt to reach (in Megabits/s), within the confines of the bitrate tolerance and quality min/max settings. Only supported by certain codecs (e.g. hev1, m2v1, MP42, 3IVD, but not mp4v, avc1 or H264).
Option -b in ffmpeg (multiplied by 1000000).
Bitrate Tolerance / bitrateToleranceMbps Double 0
Set video bitrate tolerance (in Megabits/s). In 1-pass mode, bitrate tolerance specifies how far ratecontrol is willing to deviate from the target average bitrate value. This is not related to min/max bitrate. Lowering tolerance too much has an adverse effect on quality. As a guideline, the minimum slider range of target bitrate/target fps is the lowest advisable setting. Anything below this value may result in failed renders.
Only supported by certain codecs (e.g. MP42, 3IVD, but not avc1, hev1, m2v1, mp4v or H264).
A reasonable value is 5 * bitrateMbps / fps. This corresponds to option -bt in ffmpeg (multiplied by 1000000).
Quality / quality Integer min: 2 max: 31
The quality range the codec is allowed to vary the image data quantiser between to attempt to hit the desired bitrate. Higher values mean increased image degradation is possible, but with the upside of lower bit rates. Only supported by certain codecs (e.g. VP80, VP90, avc1, but not hev1 or mp4v).
Options -qmin and -qmax in ffmpeg.
GOP Size / gopSize Integer 12
Specifies how many frames may be grouped together by the codec to form a compression GOP. Exercise caution with this control as it may impact whether the resultant file can be opened in other packages. Only supported by certain codecs.
Option -g in ffmpeg.
B Frames / bFrames Integer 0
Controls the maximum number of B frames found consecutively in the resultant stream, where zero means no limit imposed. Must be an integer between -1 and 16. 0 means that B-frames are disabled. If a value of -1 is used, it will choose an automatic value depending on the encoder. Only supported by certain codecs.
Option -bf in ffmpeg.
Write NCLC / writeNCLC Boolean On Write nclc data in the colr atom of the video header. QuickTime only.