Building a stack in python - input and output groups do not match error

I’m trying to build a stack in python for RV and get the below error message (even though the stack seems to work)

CODE

runs in python console for RV

import rv

src1 = “https://assets.mixkit.co/videos/preview/mixkit-striking-texture-of-the-liquid-from-a-lava-lamp-51737-large.mp4
src2 = “https://assets.mixkit.co/videos/preview/mixkit-strange-texture-of-a-bubbling-yellow-liquid-51732-large.mp4

src1_node = rv.commands.addSourceVerbose([src1])
src2_node = rv.commands.addSourceVerbose([src2])

rv.extra_commands.setUIName(rv.commands.nodeGroup(src1_node), “src1”)
rv.extra_commands.setUIName(rv.commands.nodeGroup(src2_node), “src2”)

stack_node = rv.commands.newNode(“RVStackGroup”, “PlateStack”)
rv.commands.setNodeInputs(stack_node, [src2_node, src1_node])

RESULT

WARNING: the input and output groups do not match:
lhs node sourceGroup000001_source is member of sourceGroup000001
rhs node PlateStack is top level node
WARNING: the input and output groups do not match:
lhs node sourceGroup000000_source is member of sourceGroup000000
rhs node PlateStack is top level node

Any idea what is wrong or how to fix it?

Thanks a lot!

Hi, it seems like

gives you back the source node (e.g. “sourceGroup0000_source”) and not the group node (“sourceGroup0000”) so when adding them to the stack like this it warns you that you didn’t add the complete group.
So also getting here the node groups first and adding the complete source group to the stack should get rid of the warning:

rv.commands.setNodeInputs(stack_node, [rv.commands.nodeGroup(src2_node), rv.commands.nodeGroup(src1_node)])

Cheers, Mirco

1 Like

The working example for building a stack

import rv

src1 = “https://assets.mixkit.co/videos/preview/mixkit-striking-texture-of-the-liquid-from-a-lava-lamp-51737-large.mp4 1”
src2 = “https://assets.mixkit.co/videos/preview/mixkit-strange-texture-of-a-bubbling-yellow-liquid-51732-large.mp4 1”

src1_node = rv.commands.addSourceVerbose([src1])
src2_node = rv.commands.addSourceVerbose([src2])

rv.extra_commands.setUIName(rv.commands.nodeGroup(src1_node), “src1”)
rv.extra_commands.setUIName(rv.commands.nodeGroup(src2_node), “src2”)

stack_node = rv.commands.newNode(“RVStackGroup”, “PlateStack”)
rv.commands.setNodeInputs(stack_node, [rv.commands.nodeGroup(src2_node), rv.commands.nodeGroup(src1_node)])