Trackball automation

User avatar
Micha Clazing
Posts: 4
Joined: Sat May 12, 2018 5:28 am

Trackball automation

#1

Post by Micha Clazing » Sat May 12, 2018 5:51 am

Hi!

Fusion's scripting environment coming to Resolve has been a dream come true as I've been asking for script/automation support in Resolve for a long time.

I've read the extremely meagre script notes in ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting as well as the scripting manual for Fusion 8. In that sense this forum is a breath of fresh air as there seems to be a lot of information here that isn't documented by BMD officially yet.

I'd like to ask for some pointers and maybe where to look if I wanted to automate parts of the Color page programatically (preferably in Python).

My end goal is to write a C++ application that intercepts HID events from a USB trackball and blocks them from being registered as mouse cursor movement, and instead passes them on to a Python script running inside Resolve's script environment which will need to check if it's on the Color page, which controls are activated, and potentially switch between things like Primaries Wheels and Log controls, before forwarding the trackball motion to the selected colour wheel. I've got the hardware side of things pretty much figured out, I'm just looking for a way to pass the events on to Resolve without resorting to hacky things like reading pixel values off the UI and emulating mouse movement.

I'm a licensed dongle user so I should have full access to (external) scripting capabilities. Thanks in advance and I'm looking forward to learning a lot here.

Tags:

User avatar
Micha Clazing
Posts: 4
Joined: Sat May 12, 2018 5:28 am

Re: Trackball automation

#2

Post by Micha Clazing » Wed May 16, 2018 8:46 am

Well, I've found InputControl->ColorWheelControl using the FusionScript help browser... But nothing on how to use it. Am I looking in the right direction, or is it better to wait a few betas for the scripting support to mature?

User avatar
Chad
Fusionator
Posts: 1262
Joined: Fri Aug 08, 2014 1:11 pm
Been thanked: 20 times

Re: Trackball automation

#3

Post by Chad » Wed May 16, 2018 9:02 am

That's only going to affect the color wheels on the Fusion page.

User avatar
Igor Ridanovic
Posts: 4
Joined: Mon Apr 16, 2018 11:17 pm
Location: Los Angeles
Contact:

Re: Trackball automation

#4

Post by Igor Ridanovic » Mon May 21, 2018 11:06 pm

It's against BMD's best interest to implement anything that circumvents their own panels. It would be welcome if they did, but I doubt they would. You may want to look at this from Glenn Venghaus: http://posttools.tachyon-consulting.com/

User avatar
Micha Clazing
Posts: 4
Joined: Sat May 12, 2018 5:28 am

Re: Trackball automation

#5

Post by Micha Clazing » Tue May 22, 2018 5:59 am

Igor Ridanovic wrote:
Mon May 21, 2018 11:06 pm
It's against BMD's best interest to implement anything that circumvents their own panels.
Ah, the old conundrum Apple has been in for decades; selling both software and hardware, so they feel the need to cripple their software so as to sell more of their hardware. I seriously doubt that's BMD's motive here though; as you know Resolve natively supports inexpensive Tangent trackballs, which would "circumvent" their own panels as well by your logic. I can afford a Tangent Ripple but I simply feel it's an inelegant solution for my needs. We can argue taste but I think more choice is always a good thing.

As for my use case; the use of a single trackball as opposed to three or four trackballs doesn't impede on anyone's market share because it is an entirely separate market for which there is currently no turnkey solution (super-compact grading on-set or on-the-go).

Anything using Controllermate is in my book "macro hacking" and liable to break if things aren't pixel-aligned or minute changes happen between point versions of Resolve. I'd like to avoid such an approach but I will begrudgingly implement it that way if Color page scripting doesn't pan out. Additionally, I'm a Windows user and Controllermate is Mac-only.

I would expect scripting support to eventually support my cause though as I can think of other scripts that would need similar functionality to be exposed and the hardware sales argument would be quite ridiculous if it prevented those "legitimate" scripts from functioning. I'd also like to add that I did do my due diligence and contacted BMD directly through their support channel to try to get these trackballs supported officially, along with rationale as to why I think it would support their marketing strategy well. This was almost a year ago though so that's why I'm taking steps towards a practical solution myself.