Page 1 of 1

Cryptomatte

PostPosted: Sat Jul 28, 2018 10:05 am
by cedricduriau
Hi

My name is Cédric Duriau and I am the developer of the Fusion version of Cryptomatte.

Andrew Hazelden, who contributes to the project, reported the issue that Cryptomatte currently does not work in Resolve. He pointed out the fact that the input node in Resolve is a MediaIn node, unlike the Loader node in Fusion. I quickly found out that within the Metadata of the Fusion Loader, I can retrieve the path of the input EXR as following:
Code: Select all
input_image.Metadata["Filename"]

This key is not present in the metadata of the image coming from a MediaIn node.

Considering the code is contained inside the Cryptomatte node, I cannot just ask for the MediaIn "MEDIA_NAME" information. Unless there is a way I am not aware of. So here lays my question, how can I get the file path of the input image, not having the input node object?

Looking at the calendar, SIGGRAPH 2018 isn't so far away, but looks far enough to find a solution to this quite simple problem. I would really appreciate it, and I think we all can benefit from a Resolve Cryptomatte, if this issue could be resolved by then. If you understand my point of view.

Cheers
Cédric

GitHub issue: https://github.com/cedricduriau/Cryptomatte/issues/6

Re: Cryptomatte

PostPosted: Thu Aug 09, 2018 2:19 am
by Rajiv Mudgal
plus1
Cryptomatte is a time/life saver

Re: Cryptomatte

PostPosted: Sat Sep 15, 2018 12:45 am
by ftesla
Sorry!!!
In 15.1 it works!! Using the Loader node not the MediaIn.

Re: Cryptomatte

PostPosted: Tue Sep 18, 2018 4:08 pm
by cedricduriau
Hi all

Yup, just confirmed this publicly.
Cryptomatte will from now on work out of the box with Resolve 15.1.

Enjoy!

Cheers
Cedric

PS: BMD, I still would have liked an update on this.

Re: Cryptomatte

PostPosted: Thu Sep 20, 2018 7:09 pm
by Peter Chamberlain
What more do u need Cédric?

Re: Cryptomatte

PostPosted: Sat Oct 27, 2018 5:58 pm
by Simas Gineika
I found that 15.1.2.008 Cryptomatte is very slow, and Resolve crashed few times. It send out some diagnostics for devs too. In general Viewport is so slow that it is impossible to work :(

Re: Cryptomatte

PostPosted: Thu Mar 14, 2019 9:03 am
by Ricky Scharneck
Hi, is there any news on Cryptomatte in Resolve? I have a project coming up that could really benefit from it. Thanks :)

Re: Cryptomatte

PostPosted: Thu Mar 14, 2019 4:26 pm
by Kays Alatrakchi
Ricky Scharneck wrote:Hi, is there any news on Cryptomatte in Resolve? I have a project coming up that could really benefit from it. Thanks :)



Not sure what you're asking. It works in the latest Resolve.

Re: Cryptomatte

PostPosted: Tue Apr 16, 2019 10:28 am
by mattrm
Hi all,

Someone have a link how to install it in Davinvi Resolve 16 ?
Thank you !!!

Matt

Re: Cryptomatte

PostPosted: Tue Sep 22, 2020 11:57 pm
by waltervolpatto
i found that it works in resolve if i put a [loader], but it not works with a shot form the timeline [MediaIn].

is this the case or I'm doing something wrong?

Re: Cryptomatte

PostPosted: Wed Sep 23, 2020 12:00 am
by waltervolpatto
Code: Select all
{
   Tools = ordered() {
      MediaOut3 = MediaOut {
         Inputs = {
            Index = Input { Value = "2", },
            Input = Input {
               SourceOp = "Cryptomatte1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 315.061, 183.562 } },
      },
      Cryptomatte1 = Fuse.Cryptomatte {
         Inputs = {
            Input = Input {
               SourceOp = "Loader1",
               Source = "Output",
            },
            Locator = Input { Value = { 0.82139577594123, 0.561524334251607 }, },
            MatteList = Input { Value = "\"/shop/mat1/standard_surface1\"", },
            CryptoLayerSlider = Input { Value = 3, },
            CryptoLayer = Input { Value = "crypto_material", },
         },
         ViewInfo = OperatorInfo { Pos = { 205.061, 183.562 } },
         Version = 121
      },
      MediaOut2 = MediaOut {
         CtrlWZoom = false,
         Inputs = {
            Index = Input { Value = "1", },
            Input = Input {
               SourceOp = "Cryptomatte1_1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 321.341, 121.639 } },
      },
      Loader1 = Loader {
         Clips = {
            Clip {
               ID = "Clip1",
               Filename = "C:\\jobs\\test\\11_criptomattes\\multichannel.exr",
               FormatID = "OpenEXRFormat",
               StartFrame = -1,
               LengthSetManually = true,
               TrimIn = 0,
               TrimOut = 0,
               ExtendFirst = 0,
               ExtendLast = 0,
               Loop = 0,
               AspectMode = 0,
               Depth = 0,
               TimeCode = 0,
               GlobalStart = 0,
               GlobalEnd = 0
            }
         },
         Inputs = {
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            ["Clip1.OpenEXRFormat.RedName"] = Input { Value = FuID { "R" }, },
            ["Clip1.OpenEXRFormat.GreenName"] = Input { Value = FuID { "G" }, },
            ["Clip1.OpenEXRFormat.BlueName"] = Input { Value = FuID { "B" }, },
            ["Clip1.OpenEXRFormat.AlphaName"] = Input { Value = FuID { "A" }, },
         },
         ViewInfo = OperatorInfo { Pos = { 74.6391, 183.562 } },
      },
      Cryptomatte1_1 = Fuse.Cryptomatte {
         Inputs = {
            Input = Input {
               SourceOp = "Loader1",
               Source = "Output",
            },
            Locator = Input { Value = { 0.570707070707071, 0.594582185491276 }, },
            KeyableSurface = Input { Disabled = true, },
            ViewMode = Input {
               Value = 1,
               Disabled = true,
            },
            MatteOnly = Input { Value = 1, },
            MatteList = Input { Value = "\"/obj/instance1:instances:59\", \"/obj/instance1:instances:273\"", },
            CryptoLayerSlider = Input { Value = 1, },
            CryptoLayer = Input { Value = "crypto_object", },
         },
         ViewInfo = OperatorInfo { Pos = { 201.138, 121.639 } },
         Version = 121
      },
      MediaIn1 = MediaIn {
         ExtentSet = true,
         CustomData = {
            MediaProps = {
               MEDIA_FORMAT_TYPE = "EXR",
               MEDIA_HEIGHT = 128,
               MEDIA_LAYER_DESC = {
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = ""
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGB",
                     LAYER_NAME = "Cd"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGB",
                     LAYER_NAME = "crypto_asset"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_asset00"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_asset01"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_asset02"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGB",
                     LAYER_NAME = "crypto_material"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_material00"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_material01"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_material02"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGB",
                     LAYER_NAME = "crypto_object"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_object00"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_object01"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGBA",
                     LAYER_NAME = "crypto_object02"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_RGB",
                     LAYER_NAME = "shape"
                  },
                  {
                     LAYER_IMG_TYPE = "IMG_TYPE_LUMINANCE",
                     LAYER_NAME = "pscale"
                  }
               },
               MEDIA_MARK_IN = 0,
               MEDIA_MARK_OUT = 23,
               MEDIA_NAME = "multichannel.exr",
               MEDIA_NUM_FRAMES = 24,
               MEDIA_NUM_LAYERS = 16,
               MEDIA_PAR = 1,
               MEDIA_PATH = "C:\\jobs\\test\\11_criptomattes\\multichannel.exr",
               MEDIA_SRC_FRAME_RATE = 24,
               MEDIA_START_FRAME = 0,
               MEDIA_WIDTH = 128
            },
         },
         Inputs = {
            GlobalOut = Input { Value = 23, },
            Layer = Input { Value = "0", },
            ClipTimeEnd = Input { Value = 23, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            RedName = Input { Value = FuID { "R" }, },
            GreenName = Input { Value = FuID { "G" }, },
            BlueName = Input { Value = FuID { "B" }, },
            AlphaName = Input { Value = FuID { "A" }, },
         },
         ViewInfo = OperatorInfo { Pos = { 55, 49.5 } },
      },
      MediaOut1 = MediaOut {
         Inputs = {
            Index = Input { Value = "0", },
            Input = Input {
               SourceOp = "MediaIn1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 605, 49.5 } },
      }
   }
}


that is what i have to do.

Re: Cryptomatte

PostPosted: Wed Sep 23, 2020 2:03 pm
by Steve Roberts
Fusion supports cryptomatte, as does Resolve Fusion page, it is not supported in Resolve timeline, It uses extra channels that Fusion has. Also need Reactor plugins to get extra Cryptomatte tooling,

https://www.steakunderwater.com/wesuckl ... =32&t=1814

So Media In via timeline only gives RGBA, all Media reloaded from the media pool in the Fusion page will have the extra layers and channels, Loader in Fusion will work for this as well.

Re: Cryptomatte

PostPosted: Wed Sep 23, 2020 8:30 pm
by waltervolpatto
Steve Roberts wrote:Fusion supports cryptomatte, as does Resolve Fusion page, it is not supported in Resolve timeline, It uses extra channels that Fusion has. Also need Reactor plugins to get extra Cryptomatte tooling,

https://www.steakunderwater.com/wesuckl ... =32&t=1814

So Media In via timeline only gives RGBA, all Media reloaded from the media pool in the Fusion page will have the extra layers and channels, Loader in Fusion will work for this as well.


That is problematic if i have (literally) thousands of shots of animation that have criptomatte.

How is doable to have a OFX in color that extract the alpha? I can see in the color page that the layer form the exr are there.

Re: Cryptomatte

PostPosted: Fri Nov 13, 2020 3:54 pm
by RobertLech
It should be possible to do that. The advantage of using a very detailed masking in a color would be really useful. You already can adjust the layers, but there is not selection tool, as the plugin doesn't exist yet.
However, BM is kind of strange not support CG composition artist in general.

Fusion is closer and used a lot here, but BM isn't really bringing any Resolve technology to Fusion. For example the color page in Fusion offers new a lot HDR grading tools, that would ideal fit to Fusion and I also guess that it came from Fusion. No of that happened int 17. Not even the DaVince wide gamut made it.

Again, Resolve does it all nice, but there is no reason to use Resolve to color grade CG shots, that need a total different approach. Its possible yes. But there is a reason people use a node editor and not a timeline editing tool. Shot by Shot is workflow. Not a whole bunch of shots together.

Re: Cryptomatte

PostPosted: Fri Nov 13, 2020 7:24 pm
by waltervolpatto
RobertLech wrote:It should be possible to do that. The advantage of using a very detailed masking in a color would be really useful. You already can adjust the layers, but there is not selection tool, as the plugin doesn't exist yet.
However, BM is kind of strange not support CG composition artist in general.

Fusion is closer and used a lot here, but BM isn't really bringing any Resolve technology to Fusion. For example the color page in Fusion offers new a lot HDR grading tools, that would ideal fit to Fusion and I also guess that it came from Fusion. No of that happened int 17. Not even the DaVince wide gamut made it.

Again, Resolve does it all nice, but there is no reason to use Resolve to color grade CG shots, that need a total different approach. Its possible yes. But there is a reason people use a node editor and not a timeline editing tool. Shot by Shot is workflow. Not a whole bunch of shots together.


i agree, what happen sometimes boils down to: “The Client ask for it”. Regardless of it make sense or not.

Re: Cryptomatte

PostPosted: Fri Nov 13, 2020 8:54 pm
by Hendrik Proosa
I’m not super sure but I think ofx can’t access other channels besides RGBA so cryptomatte data might be unreachable for ofx plugin.