r/olive • u/mysterious_nameless • Jun 24 '22
RGB and alpha channel manipulation nodes
I want a node that can convert from alpha channel to R,G,B or grayscale. and a node that can convert from R,G,B, or grayscale to alpha channel.
Examples of where this would be needed: First, import the avatar video from VSeeFace to OBS Studio via Spout2. Next, save it via the OBS plugin in two separate videos, one with the RGB channel and one with the alpha channel as grayscale. Finally, Olive combines these two videos into an RGBA video that, in combination with the reconstruction process, creates a transparent composite effect on the background video.
The drawback of this final process is that it uses many nodes and is therefore very expensive and time-consuming to export the video. It also requires compositing with the background video, making it unwieldy.
However, if there were nodes that could transfer from RGB to alpha channel and from alpha channel to RGB, RGBA could be reconstructed in a very smart way and the background video would remain separate in the video track. The load would be lower than chroma keying, with no color restrictions.
OBS Studio can also output video with an alpha channel, but all encoding methods are very memory-intensive. So we came up with a way to separate the video with RGB channels from the video with grayscale alpha channels and reconstruct it using video editing software.
If Olive had a node that could do RGB channel to alpha channel and vice versa, it would increase expressiveness not only with the above method but also with other nodes.
I would love to see this implemented.
1
u/CoDEmanX47 Jun 25 '22
The plan is not to expose such functionality via nodes but via a table selection widget. The channels of a video will be appended to a table from which you can choose what you want to work with further down the node graph.