Nodes/IAMCCS-nodes/IAMCCS-CinePostEfx-v2 · Legacy workflow alias
ComfyUI Node

IAMCCS-CinePostEfx-v2 · Legacy workflow alias

IAMCCS_CineFilmGrainPro is a name, not a node — it's the old ID for CinePostEfx v2

By IAMCCS·Created 11 months ago·Updated about 17 hours ago· 113
IAMCCS-CinePostEfx-v2 · Legacy workflow alias
  • images
  • grain_plate
  • images
  • grain_map
  • report
enginefilm_emulsion
preset35mm_fine_negative
input_transfersrgb
blend_methodlog_density
strength0.100
grain_size_4k_px1.00
softness0.18
roughness0.24
complexity3
temporal_correlation0.00
chroma_amount0.055
shadow_response0.62
midtone_response1.00
highlight_response0.38
red_response1.00
green_response0.96
blue_response1.06
seed1
frame_start0
horizontal_instability0.00
chroma_spill0.00
luma_noise0.00
chroma_noise0.00
color_drift0.00
edge_echo0.00
line_dropout0.00
scanline_strength0.00
field_interlace0.00
vertical_roll0.00
highlight_glow0.00
head_switch_distortion0.00
luma_trail0.00
chroma_delay0.00
analog_mix1.00
tracking_error0.00
tape_warp0.00
ghost_echo0.00
signal_saturation1.00
black_lift0.00
chroma_phase_noise0.00
chroma_loss0.00
grain_profilenegative_stock
texture_microcontrast0.18
analog_color_lookneutral
disturbance_amount1.00
lens_presetlens_none
lens_master0.00
lens_distortion0.00
lens_edge_stretch0.00
lens_anamorphic_width0.00
lens_zoom1.00
lens_keystone_x0.00
lens_keystone_y0.00
lens_tilt_angle0
lens_focus_position0.00
lens_tilt_blur0.00
lens_chromatic_aberration0.00
lens_vignette0.00
settings_json
horizontal_instability_randomness0.00
tracking_randomness0.00
tape_warp_randomness0.00
color_drift_randomness0.00
scanline_randomness0.00
interlace_randomness0.00
vertical_roll_randomness0.00
head_switch_randomness0.00

Here is the entire node: IAMCCS_CineFilmGrainPro is a deprecated alias that points at IAMCCS-CinePostEfx-v2's class. Same inputs, same outputs, same code path - the class you actually get is IAMCCS_CinePostEfxV2. In the source it is literally five lines:

class IAMCCS_CineFilmGrainProLegacy(IAMCCS_CinePostEfxV2):
    """Load old workflows without keeping the former node in the add-node menu."""
    DEPRECATED = True

You found this page because an old workflow, a shared JSON, or a tutorial you downloaded references the old name. Good news: nothing is broken and you do not need to change anything. The ID resolves, the node runs, and it renders grain with every knob the current version has, because it is the current version.

Why it still exists at all

ComfyUI resolves saved workflows by string node type. If a pack deletes or renames a node class outright, every workflow that used it comes back with a red missing-node box and you have to hand-edit JSON. So the pack keeps the retired identifier registered and maps it to the live class. DEPRECATED = True is the polite part of this: the node still loads, but it is kept out of the add-node menu, so you cannot accidentally start a new graph on the old name.

The pack does this in three places at once - the hyphenated IAMCCS-CinePostEfx-v2 is the real ID, IAMCCS_CinePostEfxV2 is a short-lived underscored variant, and IAMCCS_CineFilmGrainPro is the oldest of the three, from before the node grew from a grain module into the full film/sensor/analogue/broadcast finishing suite.

What to do about it

Nothing, for an existing graph. It will queue and produce identical output to the hyphenated node.

For anything new, search the menu for CinePostEfx. If you want the full explanation of what the node does with your frames - the engines, the stock presets, the density-aware grain, the tape and broadcast sections - read the canonical page instead, because there is no second implementation hiding here:

If it doesn't load

The usual cause is not the alias, it is the install. The whole pack has to be present, since the alias is registered by the same module as the live node:

cd ComfyUI/custom_nodes
git clone https://github.com/IAMCCS/IAMCCS-nodes.git

Restart, then check you don't have a second copy of IAMCCS-nodes sitting in custom_nodes from an earlier manual install. Duplicated pack folders are a known cause of startup weirdness and stale definitions in this pack's own requirements notes, and a stale copy is exactly how an alias that should resolve ends up looking missing.

CategoryIAMCCS/Cine Nodes/Film Delivery

Inputs (69)

NameTypeDefaultDescription
imagesIMAGE
engineCOMBOfilm_emulsion5 options: film_emulsion, digital_sensor, scanned_grain_plate, analog_tape, broadcast_signal
presetCOMBO35mm_fine_negative34 options: 65mm_clean_scan, 35mm_fine_negative, 35mm_high_speed, 16mm_documentary, 8mm_expression, digital_cinema_sensor, +28
input_transferCOMBOsrgb3 options: srgb, rec709, linear
blend_methodCOMBOlog_density4 options: log_density, density_exposure, linear_additive, soft_light_luma
strengthFLOAT0.1000–1
grain_size_4k_pxFLOAT1.000.35–6
softnessFLOAT0.180–1
roughnessFLOAT0.240–1
complexityINT31–4
temporal_correlationFLOAT0.000–0.95
chroma_amountFLOAT0.0550–0.5
shadow_responseFLOAT0.620–2
midtone_responseFLOAT1.000–2
highlight_responseFLOAT0.380–2
red_responseFLOAT1.000.5–1.5
green_responseFLOAT0.960.5–1.5
blue_responseFLOAT1.060.5–1.5
seedINT10–9223372036854776000
frame_startINT00–2147483647
horizontal_instabilityFLOAT0.000–1
chroma_spillFLOAT0.000–1
luma_noiseFLOAT0.000–1
chroma_noiseFLOAT0.000–1
color_driftFLOAT0.000–1
edge_echoFLOAT0.000–1
line_dropoutFLOAT0.000–1
scanline_strengthFLOAT0.000–1
field_interlaceFLOAT0.000–1
vertical_rollFLOAT0.000–1
highlight_glowFLOAT0.000–1
head_switch_distortionFLOAT0.000–1
luma_trailFLOAT0.000–1
chroma_delayFLOAT0.000–1
analog_mixFLOAT1.000–1
tracking_errorFLOAT0.000–1
tape_warpFLOAT0.000–1
ghost_echoFLOAT0.000–1
signal_saturationFLOAT1.000–2
black_liftFLOAT0.000–1
chroma_phase_noiseFLOAT0.000–1
chroma_lossFLOAT0.000–1
grain_profileCOMBOnegative_stock5 options: modern_fine, negative_stock, high_speed_negative, reversal_stock, print_stock
texture_microcontrastFLOAT0.180–1
analog_color_lookCOMBOneutral14 options: neutral, consumer_color, warm_camcorder, cool_camcorder, tungsten_home_video, fluorescent_cctv, +8
disturbance_amountFLOAT1.000–2
lens_presetCOMBOlens_none11 options: lens_none, wide_angle_14mm, ultra_wide_10mm, fisheye_8mm, anamorphic_1_33x, anamorphic_2x_cinema, +5
lens_masterFLOAT0.000–2
lens_distortionFLOAT0.00-1–1
lens_edge_stretchFLOAT0.00-1–1
lens_anamorphic_widthFLOAT0.00-0.5–0.5
lens_zoomFLOAT1.000.7–1.6
lens_keystone_xFLOAT0.00-0.75–0.75
lens_keystone_yFLOAT0.00-0.75–0.75
lens_tilt_angleFLOAT0-90–90
lens_focus_positionFLOAT0.00-1–1
lens_tilt_blurFLOAT0.000–1
lens_chromatic_aberrationFLOAT0.000–1
lens_vignetteFLOAT0.000–1
settings_jsonSTRING
horizontal_instability_randomnessFLOAT0.000–1
tracking_randomnessFLOAT0.000–1
tape_warp_randomnessFLOAT0.000–1
color_drift_randomnessFLOAT0.000–1
scanline_randomnessFLOAT0.000–1
interlace_randomnessFLOAT0.000–1
vertical_roll_randomnessFLOAT0.000–1
head_switch_randomnessFLOAT0.000–1
grain_plateoptIMAGE

Outputs (3)

NameTypeDescription
imagesIMAGE
grain_mapMASK
reportSTRING