Setting up Zoom Client for VideoFX

Apart from setting up the servers, you also need to set up Zoom Clients to be able to use VideoFX flow.

Follow for your Zoom version:

From Zoom 7.3 onwards

As hook files are not required anymore while setting up VideoFX, so the configuration for Zoom Clients is also simpler.

Update zoom.properties

Each Zoom Client needs some properties added to their zoom.properties file. The easiest way to do this is to add these properties for the desired locations so these are propagated to all Zoom Clients in that location.

  1. Log into the Web Management Console as an admin.
  2. Open the Server Zoom Properties page under System node in the Admin Menu sidebar.

  3. Choose your desired location from the Locations dropdown and click Add. We need to add the properties THIRD_PARTY_MOUNT_POINT and USAN_POINTS for any location that is configured for VideoFX.

  4. Specify the paths designated for each of them and click Submit to add these properties for our selected location.
  5. The properties will now be pulled by the Zoom Clients during auto-sync or manual sync.

Alternatively, you can add zoom.properties file individually on each Zoom Client machine, but this will take longer.

Z Settings

For the first-time set up of Zoom Clients after upgrading to/installing Zoom 7.3, you need to select the location where the Zoom Client is working in. If you do not choose this then by default Global location is set.

After launching Zoom ClientProxy, you will see a message to set up a default Zoom Server.

Click Yes to see the Z Settings window. Alternatively, right-click on the Z icon and choose Settings from the Z menu.

Select Server/WC Settings in the left sidebar.

Click Add to see the Add Server Settings window. Notice that this popup window also has a Location drop-down now.

Specify the Server URL and press Tab to move to the next field. A Zoom Server Login window is shown.

Specify your username and password to log into Zoom. After a successful login, the Add Server Settings window is shown again. Choose a location from the list. Specify an alias, default working copy and default check-out locations. Click Add to log in, validate, and add the server settings.

Click Make Default to make this Zoom Server as the default server. Also, select Always Use Default to make sure that this Zoom Client seamlessly connects to the default Zoom Server every time.

For Zoom versions up to 7.2

For Zoom versions before 7.3, follow the rest of the post to set up Zoom Client machines.

For each Zoom Client, a few settings are required in the property files, hook.properties and zoom.properties. These files reside in the user directory $HOME/.zm. 

Best Practice is to test the hook.properties and zoom.properties on a client workstation and then copy them to the Zoom Server in order for all client workstations to automatically pull these as described here.

Create hook.properties

You could create a single hook.properties as shown below. Copy this file to a test client workstation and replace the paths and folder names as per that client’s settings. Once finalized, copy this file to the Zoom server for automatic push to all client workstations as described here.

PropertyDescription
MD_BASED_INGEST_FORMAT

This property holds the folder structure under which the high-res assets must be stored when they are ingested in the mount location. This structure will also be used for proxies and placeholders of the high-res assets on the Zoom Server. This pattern is based on the Zoom Metadata properties selected as mandatory in the section above.

MD_BASED_INGEST_FORMAT = /#CORP_Show#/#CORP_Episode Title#/#OLD_NAME#_#TSTAMP#
PRE_HOOK_SERVER_URL

This specifies the ingest server aka script execution server’s URL. At present, Zoom houses the script execution engine within the Zoom Preview Server. Therefore this URL must point to a preview server host/port.

PRE_HOOK_SERVER_URL = http\://192.168.0.99\:8873
Special characters like the “:” should be escaped using a preceding slash.
PRE_HOOK_SCRIPT_PATH

This specifies the path of the script on the Zoom ingest server that would be invoked prior to the actual check-in of assets to Zoom. This path exists on the machine where the scripts are executed, which is the script executor framework running off the Zoom Preview Server. Therefore this script must be located in the specified location within that machine.

PRE_HOOK_SCRIPT_PATH = /home/evolphin/zoom-deploy/pre-hook/pre-checkin.pl
POST_HOOK_SCRIPT_PATH

This specifies the path of the script that would be invoked after running the check-in operation. Again, this is with respect to the Zoom Preview Server machine.

POST_HOOK_SCRIPT_PATH = /home/evolphin/zoom-deploy/post-hook/post-checkin.pl
ZOOM_PROXY_INOUT

This is the path used to exchange data between the client machine and the script executor engine regarding the ingest operations. Both machines (the client and the preview server machines) must have sufficient access privileges to be able to read from / write to this location.

For example, from a Mac client, a mounted network share that is accessible to both the client machine and the Linux preview server could look like this. The folder must be readable by the client and writable by the Zoom ingest server/script execution server.

Same as PreHook#zmInOutPrefix

Same as PostHook#zmInOutPrefix

ZOOM_PROXY_INOUT = /Volumes/usan/.zoom-deploy/zoom-proxy-inout
HI_RES_FOLDERThis specifies the path where the assets to be checked in are located. Check-in may be triggered by dragging assets from this location into the Asset Browser or from within the Zoom plugin panel inside the Adobe application. This path must be set to a location that is accessible from both the client and from the ingest server.

 

Same as PreHook#workspaceRoot

HI_RES_FOLDER = /Volumes/usan/hires
DELETE_INOUT_JSON_FILES
DELETE_INOUT_JSON_FILES = true
EXCLUDE_PROJ_IN_HIRES
EXCLUDE_PROJ_IN_HIRES = defproj:Images
SKIP_MD_BASED_INGEST_PATH
SKIP_MD_BASED_INGEST_PATH = true

Update zoom.properties

Copy this file to a test client workstation and replace the paths and folder names as per that client’s settings. Once finalized, copy this file to the Zoom server for automatic push to all client workstations as described here.

Tip: You can use environment variables like $HOME to change the property value based on a user’s home directory when pushing the property file from Zoom server to a user’s workstation.

PropertySample ValueCross-references
THIRD_PARTY_MOUNT_POINT/Volumes/psan/tpm

Same as PreHook#TPMPrefix

Same as PostHook#TPMPrefix

Same as Vantage#TPMPrefix

THIRD_PARTY_MOUNT_POINT1

THIRD_PARTY_MOUNT_POINT2

.

.

.

THIRD_PARTY_MOUNT_POINTN

D\:\\TPM

Multiple third party mount points are mapped starting from THIRD_PARTY_MOUNT_POINT1

EXTENSIONS_PROXY_MAPmp4 -> mov, mxf

Low-res Proxy format (mp4 in the sample) same as Vantage WorkflowPreHook#defaultExtProxy and Vantage#lowProxyExt

ProRes format (mov in the sample) same as Vantage Workflow and Vantage#proResExt

PLUGIN_METADATA_TO_SHOWEDIT_Category,EDIT_Brand,  EDIT_Source,WKFL_Route toDefined in Server Metadata Schema
LIST_DEF_PROPS

EDIT_Category|Event, Edit_Brand|People,  Edit_Source|Getty,  WKFL_Route to|Evan

Defined in Server Metadata Schema
IGNORE_PATTERN_IN_LINK_FILENAME_originalNone
SHOW_STATUS_ALERTfalseNone
HI_RES_PATH_PROP VDEO_Native File Path

 Same as Prehook Hires Path

 and Post Hook Hires Path

PRO_RES_PATH_PROP VDEO_ProRes File PathNone
PRORES_SUFFIX -midresNone

Update Z settings

Use the Settings dialog from Z-Icon to update the following values: 

defaultCheckoutLocation: This property defines the location where, by default, any checked out asset is placed. So, it will not prompt to select location every time a user tries to check-out a file from the Zoom repository.

DEF_ZOOM_SERVER: In typical deployments, clients only connect to a single Zoom server and therefore it is recommended that this property is configured to minimize user intervention in running Zoom operations.  

alwaysUseDefaultServer:  This property directs all Zoom operations from the client to the default server. This must be set to true to execute search operations from inside the Zoom Adobe plugins.