Publisher: Editorial publishing in Resolve with new publisher

As a part of prototyping development for the New Publisher refactor for Blackmagic Design DaVinci Resolve I’m looking to also convert the legacy Create Clip creator.

Which turns Create Publishable Clip into this:

Design wise - how would I build a new-style Creator (@iLLiCiT ?) that is basically just there in the Creator UI to “Create” instances but then create different instance types. (It basically spews out a lot of instances on Create) and I’d like to also have the possibility to have a Creator that creates just the one instance.

So it’s like:

  • Create Clip - single instance
  • Create Clip Batch - process the timeline using some settings on the Creator to create 10s or 100s of instances of Create Clip.

Extra tricky in this case is that the publishing of the Create Clip might need to publish into currently non-existing assets/subsets because the publishing itself can generate them. (It’s basically clip batch of editorial ingesting). Are there good new style publisher examples doing this already? What do those entries show as ‘asset’, etc.

Am I think about this the right way @jakub.jezek - or maybe you could do a screen recording of the expected behavior in Resolve and maybe provide input on how you’d expect that to translate to the new publisher.

1 Like

Hey @BigRoy, it’s great to see you getting involved in the editorial workflow!

The only implementation for a new publisher can be seen in Traypublisher’s Simple Editorial. You can add an EDL file with an MP4 reference video of the cut, and when you push ‘Create’, it will convert the EDL to an OTIO timeline (EditorialSimpleCreator > CollectEditorialInstance). It then iterates through all the clips and creates instances of:

  • ‘shot’ (EditorialShotInstanceCreator > CollectShotInstance),
  • ‘plate’, (EditorialPlateInstanceCreator > CollectClipInstance > CollectEditorialReviewable)
  • ‘reference’ (EditorialReviewInstanceCreator > CollectClipInstance > CollectEditorialReviewable)
  • ‘audio’ (EditorialAudioInstanceCreator > CollectClipInstance > CollectEditorialReviewable)

For future referenced assets a plugin responsible for distributing parents and hierarchy is ‘CollectHierarchy’.

In this case, the creator attributes are very limited, and most of the configuration that we deal with in Resolve Create Clip UI is hidden in the Settings project_settings/traypublisher/editorial_creators/editorial_simple for TrayPublisher Editorial workflow.

When it comes to publishing multiple or single clips, the control lies in the number of selected (brown colored) clips. However, regardless of the method used, OTIO will always require loading the entire timeline. One way to work around this is by creating a pseudo OTIO timeline with only the selected clips.

For productions, it would be more intriguing to have a creator for selected mediapool clips, specifically those with the product type ‘plate’. These clips do not require ClipIn and ClipOut like timeline clips do. Additionally, there should be a way to assign these clips to already created shots in the new Publisher GUI.

Hey guys, just jumping in here, I’m planning on using resolve studio on the next project to conform. Typically it would be some proress + EDL to conform with. In a typical VFX way we would want to export out EXR sequences into the shot folders. It doesnt look like thats an option yet so do we need to pre-convert everything to EXR to be able to handle this via AYON?

Any plans to have a way of doing this in the future? Or have I completely missed something?

Cheers all!

Hey, I remember this was mentioned sometime ago. Add optional different output file extensions in Hiero/Resolve
As far as I know, the extension of the output follows the extension of the input.

Just want to remark that massive work is being done on this here: AY-979 Finalize updating Resolve to new publisher by robin-ynput · Pull Request #15 · ynput/ayon-resolve · GitHub by @robin_de_lillo (after I had abandoned it, sorry!)

Due to his amazing efforts it’s now almost there - with many good improvements.

2 Likes

Nice! Wonde if hiero will get this update too?
and this would be nice if publishing review will go on task (for example: compositing) so reviews will get their way to kitsu and ftrack

I think @robin_de_lillo is trying to win your heart, because look what’s brewing for Hiero!

1 Like

Hey @BigRoy
Thank you for working on update of the Resolve publisher.
Last time I tested it with the OpenPype, and it had the old one. This experience now looks much more clean.

However I encountered a problem with my last try to publish clips from the timeline.
The error happens during the Collect Version Control Connection Info (Context)

This error is introduced in the publish details. Could someone please point me on what is happening here?

DEBUG: Has 34 enabled addons.
DEBUG: Starting new HTTP connection (1): localhost:64111
DEBUG: http://localhost:64111 "POST /perforce/login HTTP/1.1" 500 55
Traceback (most recent call last):
  File "C:\Users\videopro\AppData\Local\Ynput\AYON\dependency_packages\ayon_2411151105_windows.zip\dependencies\pyblish\plugin.py", line 528, in __explicit_process
    runner(*args)
  File "C:\Users\videopro\AppData\Local\Ynput\AYON\addons\version_control_0.1.0\version_control\plugins\publish\collect_version_control_login.py", line 37, in process
    PerforceRestStub.login(conn_info["host"], conn_info["port"],
  File "C:\Users\videopro\AppData\Local\Ynput\AYON\addons\version_control_0.1.0\version_control\rest\perforce\rest_stub.py", line 44, in login
    response = PerforceRestStub._wrap_call("login",
  File "C:\Users\videopro\AppData\Local\Ynput\AYON\addons\version_control_0.1.0\version_control\rest\perforce\rest_stub.py", line 32, in _wrap_call
    raise RuntimeError(response.text)
RuntimeError: 500 Internal Server Error

Server got itself in trouble

So, I’ve compared the last released version control addon package and it differs from the current status of the repo.

Are you able to build a package from the develop branch and check if it solves the issue?

Can you please elaborate if I can do this with the Docker setup?

The bigger question is. Do you need the Ayon version control plugin in this case? Because it seems to be that the bug is there and not necessarily in Resolve itself.

If you do need it. Please try latest version control plugin instead and if the issue persists best to report the issue on that addon instead.

He has the latest released version.
The code in develop branch differs from the latest released version.

Could you please point me to a documentation on building from developer branch? I guess I need to clone the repo (which one, please?), switch to dev branch and run build command. Also do I need to update the server for this task, or just update the client?

Hello,
Here is the guide How to Test Addons in Active Development on GitHub and here is the develop branch GitHub - ynput/ayon-version-control to build.

Note: This guide is quite recent and it has some links to unpublished documentation pages.