OutPoint Control via DMX - Explained OutPoint Control via DMX - Explained

OutPoint Control via DMX - Explained

This article will explain how we have implemented control of the OutPoint pin when using the DMX2 component. It will cover why this encoder is 24-bit, how the 24-bit encoder is mapped across three channels and their ranges, and a breakdown of the unique DMX value mapping for this pin.

The OutPoint pin was originally a 16-bit encoder offering a max value of 65,536 which after conversion in Hippotizer equated to an equal number of frames. This limit posed difficult when you calculate the total clip length possible from this value at approximately 36 minutes when your content is rendered at 30fps. Therefore, the encoder used was updated to 24-bit, meaning the output control is now capable of outputting a value up to 16,777,216 a total time of approximately 155 hours.

The implementation of this encoder in Hippotizer uses the course, fine and ultrafine channels to scroll through from a value of 0 through to max. The ultra-fine control gives a precise 1 frame per click which equates to 1/16777216 per click, the fine encoder has a click equal to 8389 or 0.05% of max and the course encoder has a click at 83886 frames or 0.5% of max. It is important to realise that a single click of the course encoder equates to a jump of 46 minutes. Therefore, when moving the outpoint on shorter clips you must use the fine encoder, or you will exceed the clips total frames in a single click.

We created a unique data type for the OutPoint pin to guarantee that at a value of 0, the console default, the OutPoint will always be at the end of the loaded clip. This is achieved by converting the 0 DMX value on all channels to the maximum value for the 24-bit encoder. If you move the ultra-fine encoder, a single click, to a DMX value of 1 this will now move the Outpoint to the first frame of the loaded clip. The 0 to int max conversion saves having to scan back from the maximum value when you want to change the OutPoint position, because of the assumption that an average clip length tends to be much closer to the bottom end of the 24-bit range.

Another piece of logic added to this pin is that if the Outpoint value exceeds the total frames in the loaded clip, then the Outpoint should equal the total frames in the loaded clip.

A final note on using the 24-bit encoder to control the OutPoint. If you are using a console to scan the outpoint and the course encoder is at a DMX value of 1. The ultra-fine encoder now starts it range from 83886 frames into the clip. It is necessary to make sure both course and fine control encoders are set at a value of 0 before you use the ultra-fine encoder for shorter clips.


Encoder Type Channel Channel Range
Channel Range
Frames / Click Time@30fps / Click % / Click
Course 56 16,777,216 6d11h20m40s 83,886 46m36s 0.5
Fine 57 65,280 36m16s 8,389 4m40s 0.05
Ultra-fine 58 255 8.5s 1 0.033s 1/16,777,216

Data based on a 24-bit encoder with a physical range of 0-100 on an GrandMa2 console.