Tremor Technical Reference

  1. Hardware Connections
  2. DVS Hardware/Software Configuration
  3. Tremor Hardware/Software Configuration
  4. Tremor Network Setup
  5. Render Queue Setup
  6. Distributed Render Troubleshooting
  7. KickStart How-To For Your Tremor System
  8. Security For Your Tremor System
  9. How to Switch Timecode mode on the HDWF-500 Deck
  10. How to Stripe a Tape

Hardware Connections and Setup

Recommended Cabling:

Tremor SD: DVWA-500 (SDI)

Deck
Tremor PC
Blackburst
Disk Array
PC HD Monitor
Video Input: Ref Video 1 (BNC)
NTSC/PAL Analog Ref Out

Video Input:
Ref Video Loopthrough (BNC) 75 Ohm - OFF

Ref In      
Digital I/O: Serial Input 1 (BNC)
SER Out A
 
Digital I/O: Serial Output 1 (BNC)
SER In A
 
Remote In
(RS-422)
RMT Out
 
 
R,G,B Out (3 BNCs)
 
R,G,B In
  PC Monitor Cable    
PC Monitor Cable Input
  Fiber Channel cables (2)  
Host
 

For Broadcast monitor support, choose one of the following:

From Deck: Serial Input Loop (BNC) -> To Monitor SDI Input

Or

From Tremor: CVBS Out (BNC) -> To Monitor Composite Video Input

 

Tremor HD: DVWA-500 (SDI)

Deck
Tremor PC
Disk Array
BBroadcast Monitor
PC HD Monitor
Video Input: Ref Video 1 (BNC)
Sync Out
Digital I/O: Serial Input 1 (BNC)
HD Out2
Digital I/O: Serial Output 1 (BNC)
HD Loop
Remote In
(RS-422)
RMT Out
 
R,G,B Out (3 BNCs)
R,G,B In
  PC Monitor Cable  
PC Monitor Cable Input
  Fiber Channel cables (2)
Host
 

HDWF-500 (HD)

Deck
Tremor PC
Disk Array
BBroadcast Monitor
PC HD Monitor
HD Ref
(BNC)
Termination ON
Sync Out
HD SDI In 1
(BNC)
HD Out1
HD SDI Out 1
(BNC)
HD In
Remote In
(RS-422)
RMT Out
 
R,G,B Out (3 BNCs)
R,G,B In
  PC Monitor Cable  
PC Monitor Cable Input
  Serial Cable (2)
Host
 

The deck “stop” button flashing or a reference error message on the deck front panel are both indications of a problematic sync/configuration.

 

Tremor System Slot Order:

  1. Graphic Adapter NVIDIA
  2. Video I/O-manually set switch set to 64 MHz 
  3. VTR Control (RS-422)
  4. Q-Logic Board
  5. DVS Board (Broadcast support)
  6. Q-Logic board

Deck Settings

External Switch: Always set on Reference

HDWF-500 HD

 

DVW-A500

 

DVS Software/Hardware Configuration

Always install the DVS driver from the "dvsconf.exe" utility. "XXXX" is the version number.

This is found on your C:\ drive under "C:\sdkXXXX\win32\bin\dvsconf.exe"

To Install a DVS card:

To Check/Troubleshoot DVS licenses, Serial Number, and Hardware Settings:

To Uninstall drivers for a DVS card:

When uninstalling a DVS card, it is very important to remove all traces of the DVS software:

To install Licenses for a DVS card:

To Upgrade drivers for a DVS card:

Upgrading drivers for DVS cards is a bit tricky, but as long as you follow these steps, you should be fine. Failure to do so could make your machine un-bootable without physically unplugging the DVS card.


 

Hardware/Software Settings

Near the bottom of the <TremorDir>/include/nrhc.h file is a series of settings to specify the video hardware type you are using:

sys.videoHardwareType         = "DVS";
sys.videoHardwareMode         = "NTSC";
sys.videoHardwareSyncMode     = "A-Genlock";
sys.VTRCapturePreroll         = "00:00:02:00";
sys.VTRRecordPreroll          = "00:00:03:00";
sys.VTRRecordEditLag          = 5;
sys.fastMediaPath             = "F:/TremorMedia";
sys.renderQFrameAlloc		  = .5;
sys.videoHWOutputSyncMillivolts = 0;
sys.VTRCaptureFrameOffset     = 0;
sys.printStartupHardwareConfig = 1;
sys.renderParallelFrames 	  = 1;


Setting

videoHardwareType = "DVS";

Video mode: When the button is set to this, you are reading the signal from the deck, not from the disk. You have VTR controls and status indicators.

videoHardwareMode = "NTSC";

This hardware mode for output.

See Below, Table of videoHardwareModes

videoHardwareSyncMode = "A-Genlock";

This determines the synchronization method used by the video hardware. In any mode but "Internal", the DVS hardware requires an external reference connected to the appropriate input.

Internal"
"External"
"A-Genlock" = Analog Genlock
"D-Genlock" = Digital Genlock.

VTRCapturePreroll = "00:00:02:00" ;

When capturing from the VTR, this determines the duration of the preroll. Tremor insists that the VTR obtain servo lock to guarantee correct frames on the input. If the VTR cannot lock in time for the playback, the capture will fail. You may then try increasing this value to instruct Tremor to cue the deck earlier before attempting the capture.

VTRRecordPreroll = "00:00:03:00" ;

When recording to the VTR, this determines the time of the preroll. See VTRCapturePreroll above.

VTRRecordEditLag = 5;

When recording to the VTR, this is the number of frames required by the VTR to enter record mode. To determine this value for your VTR, set this value to zero, perform a recording, and note the difference between the record in time desired, and the actual first frame recorded. This value is the edit lag. If the edit lag is incorrectly set, material will be recorded at the wrong place on the tape.

If you are experiencing accuracy issues while recording, first proceed by checking the In Point.Perform a recording of a few seconds in duration on a striped tape, and determine the first frame which was recorded on the tape.If this is not the In Timecode specified, adjust the EditLag parameter. If recording occurred too early, reduce the EditLag value by the corresponding number of frames.If it occurred too late, increase it by the corresponding number of frames.

After adjusting the Edit Lag, perform a new recording to confirm that recording begin on the correct frameThen, check that the Out Timecode on the tape was the first frame not recorded(the out point is exclusive). If this is not the case, adjust the Duration Offset parameter by the corresponding number of frames.Positive values correct recordings which ended too early. Negative values correct cases where recording ended too late.

Both Sony HDW-F500 and Sony DVWA-500 have been tested as accurate with the default values.>

VTRCaptureFrameOffset = 0;

When tremor is not accurate while capturing, change this value to compensate.

fastMediaPath = "F:/TremorMedia";

This is the default path on to which the Tremor captured material is stored and read. Use a forward slash / to separate directories. This can be placed anywhere, but should be a very fast disk or capture and record may fail.

sys.renderQFrameAlloc = .5;

When distributing frames for network rendering, Tremor can initiate the render process for individual or groups of frames. The renderQFrameAlloc setting allows for control over how many frames will be rendered in each process. The setting represents the percentage of each computer's total frame allocation that will be processed in each render instance.
For example:

Rendering a 100 frame sequence over 2 computers with a setting of 1.0 will result in 100% of each machine's frames being submitted at once (i.e. machine1 renders 1-50, machine2 renders 51-100). With a setting of .5, only half (or 25) frames will be rendered at a time, the remaining frames will remain queued until the machine finishes each batch. In general a lower setting will provide better load balancing of processing accross the networked machines. Higher values (up to 1.0) will provide less reprocessing of information shared accross frames in the sequence.

videoHWOutputSyncMillivolts = 0;

Default voltage from video board sync

printStartupHardwareConfig = 1;

Print current configuration info in console when launching Tremor. 0 = no printing.

renderParallelFrames = 1;

On computers with multiple processors batch renders can either be spawned as concurrent processes (one frame redering per cpu) or as one process with a thread of execution for each processor. Set the value to 1 to use one process per cpu. Set the value to 0 to use one process per computer with one thread per cpu.

Table of videoHardwareModes:

sys.videoHardwareMode = "NTSC";

For TremorHD, the format follows

HD<Lines>{p,sF,i}<frameRate>

p = Progressive
sF = Progressive segmented frame
i = Interlaced

If using a Sony HDW-F500 HDCAM VTR in progressive modes, use the corresponding "sF" video hardware modes, for example HD1080sF24, not the "p" modes.

Setting Deck Settings
System
"NTSC"
SD, HD
"PAL"

SD, HD

"HD1080p2398"  
HD
"HD1080sF2398" Sony HDW-F500 in 23.98 PsF mode
HD
"HD1080p24"  
HD
"HD1080sF24" Sony HDW-F500 in 24 PsF mode
HD
"HD1080i25" Sony HDW-F500 in 25/50Hz Interlaced mode (50i)
HD
"HD1080p25"  
HD
"HD1080sF25" Sony HDW-F500 in 25 PsF mode
HD

Not Yet Supported:

"HD1080i2997" Sony HDW-F500 or HDW-500 in 29.97/59.94Hz Interlaced mode (59.94i)
HD
"HD1080p2997"  
HD
"HD1080sF2997" Sony HDW-F500 in 29.97 PsF mode
HD
"HD1080i30" Sony HDW-F500 or HDW-500 in 30/60Hz Interlaced mode (60i)
HD
"HD1080p30"  
HD
"HD1080sF30" Sony HDW-F500 in 30 PsF mode
HD

 

 

Tremor Network Setup

We do not recommend having your Tremor System "Live" on the Internet.
Due to the nature of the file sharing between the systems, it is unwise to have the Tremor Systems directly connected to the Internet. Talk to your Systems Administrator about a firewall for your network, if you don't already have one.

The Tremor System operates "out of the box" with networking configured privately between the machines of your Tremor System. We ship the Tremor System pre-configured to work with a private IP network:

hosts = 192.0.2.*
netmask = 255.255.255.0
gateway = 192.0.2.9
DNS = 192.0.2.1

When you wish to change these setting and make your Tremor System work on a local network, you will need to go through the following steps.

You will need the following info.  You can get most of this from your Systems Administrator

tremor IPaddr	= ____.____.____.____	provided by your ISP or Systems Admin
render1 IPaddr = ____.____.____.____
render2 IPaddr = ____.____.____.____
(all) netmask = ____.____.____.____ will look like 255.255.255.0 or 255.255.0.0 or somesuch
(all) gateway = ____.____.____.____ a.k.a. "default route" or "router address"
(all) DNS1 = ____.____.____.____
(all) DNS2 = ____.____.____.____
(all) Network = ____.____.____.____ see NOTE below to calculate this from your IP and netmask
(all) Broadcast = ____.____.____.____ see NOTE below to calculate this from your IP and netmask

How to Calculate your Network and Broadcast Numbers

Point your browser to http://www.tactix.com/subnet.html and enter in the IP address and netmast/subnet mask in the fields on the bottom of the page. 

After submitting, you will find your IP range in the chart.  Look in the "Network" and "Broadcast" columns to find your needed information.

Network Configuration for the Linux Render Machines:



Network Configuration For The Tremor PC OS:

 

Network Configuration For The Tremor Software:

The renderhosts.h file on the Windows system in $TremorUser/include/startup/rendernodes.h contains references to the machines in the render queue.  If you want to add your own render nodes, you must enter them in this file, by name.  They must also be configured on the linux systems in /etc/hosts, and the Windows 2000 System, as described above.

Render Queue Setup

Tremor Machine, Windows NT/2000:

 

Linux Background Render Machines: Kernal/OS Requirements for Linux Render Server

All of the above four are included in the Redhat7.1 release.

 

Linux Background Render Machines: Redhat Intallation:

 

Linux Background Render Machines: First Boot and Samba Installation

 

Linux Background Render Machines: Shkqd Render Daemon Installation

  1. The services file (/etc/services on Linux) should have an entry defining the port for the communications to the render queue daemon. It should look something like this:

    shkqd 22022/tcp # Apple Render Server

  2. The port number can be any currently unused port, however it must match the one entered on the Tremor system
    Alternatively, you can specify the port number on the command line when starting the daemon, as specified below.

  3. Shake must be installed and the path to shake must be in the $PATH environment for the user account under which the shkqd daemon will run . Also, the LD_LIBRARY_PATH must be set appropriately (e.g. LD_LIBRARY_PATH=/usr/nreal/shake2/lib)

    HEY WHATS UP WITH CHIMERA BEING HERE?

    To install shake: copy the files from chimera to the local /usr/nreal directory
    % mkdir /usr/nreal
    % cd /usr/nreal
    % scp -p -r -v chimera:/u2/builds/linux-i386/shake-linux-v2.40.0615 /usr/nreal/
    % ln -s shake-linux-v2.40.0615 shake2

  4. Create a .h file specifying the path to the Tremor media shared drive from the Tremor system. This is necessary so that Shake running on the Linux machine will know how to build FileIn paths for all VTRIn nodes. For example, the header file should look something like...

    sys.fastMediaPath = "//TREMOR-MACHINE-NAME/F/TremorMedia";

    ...assuming that the shared drive on the Tremor system is F. Basically, this should look the same as the sys.fastMediaPath setting on the Tremor system with the exception that it is prefixed with the computer name of the Tremor system.

  5. There is a script to facilitate the installation of the shkqd daemon located at chimera:/u2/shared/Ark/tremor_setup/setup_shkqd
    % scp chimera:/u2/shared/Ark/tremor_setup/setup_shkqd /tmp
    % chmod +x /tmp/setup_shkqd
    % /tmp/setup_shkqd
    Running the setup_shkqd script will give you the option to configure the daemon to startup automatically whenever the system is booted.
    The shkqd program must be running...

  6. shkqd [-D] [-v] [-filename] [-p port] [-c cpus]

    -D = Run as a daemon
    -v = verbose
    -l filename = log erros to filename
    -p port = specify the deamon's port number (override's services file)
    -c cpus = specify the number of processors in the computer


    Be sure to use -c if the machine has more than one processor.
    "shkqd -D" to run as a daemon.
    "shkqd -D -l filename" to run as daemon logging messages to file "filename"...useful for diagnosing "issues" or even easier...
    "shkqd -v" on the command line to log directly to standard error.

  7. Setup Files

    The drive containing the sys.fastMediaPath must be mounted on all render nodes.
    It is important that the directory path to all files on the mount matches the paths on the NT system. The mounted path is case sensitive so be sure that this is correct. Also, insure that the account under which shkqd will run has read/write access to necessary directories on the mounted drive.

    Add this line to /etc/fstab (editing as appropriate)

    Verify This:

    //TremorMachine/F /TremorMachine/F smbfs rw,fmask=0777,dmask=0777,soft,bg,username=samba,password=samba 0 0


    The fonts from the Tremor machine must be available to the render nodes or renders of Text nodes might be incorrect.
    Share the font directory from the Tremor machine Verify This:([SystemDrive]:\Windows\Fonts ) and mount it on the render nodes as /TremorMachine/Fonts . The .tcshrc file of the tremor user on the render nodes needs to have the NR_FONT_PATH set to /TremorMachine/Fonts


    We should also set up two .h files: ntsc.h and pal.h with all the settings needed for that particular setting and just drop that in to override the defaults in nreal.h. So far:

    script.timecodeMode = "25 FPS"; or "30 FPS DF" or "30 FPS ND"
    script.format = "PAL(D1 4:3)"; or "NTSC ND (D1 4:3)", etc.
    fastMediaPath = "F:/TremorMedia"
    sys.videoHardwareMode = "PAL";

    Verify This:

...and it's just that simple.

 

Distributed Rendering Troubleshooting

This is kind of Section 5 reworded...it's good for when things go wrong.

Part A-Declare the sys.fastmediapath!

Where?
1. On the Tremor system:

In nreal.h, the sys.fastMediaPath = "T:/TremorMedia";
Do not modify nreal.h since it points on the proper local render path
Do not create any  .h file which would contain/modify sys.fastMediaPath in include/startup
Make sure NR_INCLUDE_PATH directory does not contain any .h file which would contain/modify sys.fastMediaPath

2.   On the Shake/Render Racks machines:

Create a .h file in /include/startup directory with full UNC path
Ex: sys.fastMediaPath = "//TremorMachine/T/TremorMedia";

3. In the Tremor system/Shake/Render Racks shared files (Ex: sys.h)

Make sure any fastmediapath values are COMMENTED OUT
Ex: // sys.fastMediaPath             = "T:/TremorMedia";

What if...
I created/see a .h file (ex: sys.h) which modify/contain sys.fastMediaPath value?

Comment it out:
sys.videoHardwareMode = "NTSC";
sys.videoHardwareSyncMode = "Internal";
//sys.fastMediaPath = "T:/TremorMedia";

Part B- What are the “shared” files mentioned in Part A-3?

Files located in a specific directory to share fonts, macros, between Tremor/Shake/Render Rack systems-NOT fastMediaPath. The shared files are usually on the Tremor system. Their usual directory is /T/TremorUser/nreal/include/startup. It can also be locate somewhere else on the network. You can find the location of the shared files directory via the render racks machine:

This file defines environment variable like NR_INCLUDE_PATH

By knowing what the directory is, you can check for a .h file with an erroneous sys.fastMediaPath value

Add Environment Variables in .tschrc.nreal:

Part C-Everything seems OK but it still does not work

You should make sure that the proper version of shake is installed on the rack machines

It will list the installed shake version.

If the problem persist, restart the daemon

Repeat the above steps on all render racks machines

Make sure you clear the “problematic” render before restarting a new one via Tremor GUI

Part-D-How can I confirm that I’m experiencing a configuration problem?

Part E-Other troubleshooting examples

Configuration of Linux machines
Network

 

What The Hell is KickStart?

KickStart How-To For Tremor Systems

For more info, see the RedHat 7.1 Documentation CDROM /RH-DOCS/sample.ks

Boot Floppy:

Make a RHLinux 7.1 boot floppy with "images/boot.img" from the Redhat CDROM:

Windows:

Linux:

Clean up the Floppy:

Cleanup the boot floppy and make room on the floppy by deleting of all the *.msg files on the boot floppy

Windows:

Linux:
Modify the syslinux.cfg:

The syslinux.cfg file will cause the linux installer to automatically start in "KickStart" mode.

Create a syslinux.cfg file on the floppy, that has the following contents:
default ks
prompt 0
label ks
kernel vmlinuz
append ks=floppy initrd=initrd.img

KickStart Settings:

Next, create a file called "ks.cfg" on the floppy.  These are the options for the RedHat installer.

lang en_US
keyboard us
cdrom
timezone America/Los_Angeles
rootpw root
authconfig
network  --bootproto static --ip 192.168.1.17 --netmask 255.255.255.0 --gateway 192.168.1.1 --nameserver 192.0.2.1 --hostname "render-1"
zerombr yes
clearpart --all
mouse generic3ps/2
part /boot --size 128
part /     --size 3192
part swap  --size 512
part /var  --size 1024
part /usr  --grow     
part /home --grow    
lilo --location mbr
install
skipx
reboot
%packages
@Base
@Server
ntp
vim-common
vim-minimal
vim-enhanced
kernel-source
compat-glibc
compat-libstdc++
compat-libs

 

Security For Your Tremor System


The Win2k box has a "tremor" user (password "tremor"), and there are two "Windows Shares":

These shares are mounted using "smbfs" from the Tremor Win2k box onto the linux render farm.  These have plaintext username and passwords in /etc/fstab, and need to be modified appropriately.  DON'T USE THE ROOT PASSWORD IN /etc/fstab!  

On the linux boxes, the "tremor" user is also used to run the shkqd daemon.  This user is specified in /etc/rc.d/init.d/shkqd, and would need to be modified as appropriate.

If you have success running tremor as a different user and would like to contribute, please send any scripts and suggestions to
"mailto:shake-support@apple.com"

Suggested Basic Procedure for "Locking Down" Your Tremor System

Please note that this procedure is no guarantee of security!  It is just few ideas to get you started on securing your tremor system.  

Please keep in mind that the "tremor" Windows-user must have Administrator privileges in order to operate the DVS Video Hardware Drivers.

How to Switch Timecode Mode on the HDWF-500 Deck

Check the reference settings

After you switch mode, a reference error can come up (Error 1). Two things to check:

1. Deck Reference Settings

Make sure the Reference Sync selection is on “External HD” (on the front panel of the deck). If not, go into:

Setup - VTR Setup - Servo Ref

2. Tremor Config

Make sure Tremor configuration matches the deck mode.

NTSC: SDI
PAL: SDI
HD1080sF24
: HD 24
Etc….

If you’re not sure, check the config!

sys.printStartupHardwareConfig = 1;

How to Stripe a Tape

HD:

Part A- Generating color bars  video frames

Part B- Preparing Tape and Timecode

Part C-Striping the tape

SD:

Part A- Generating color bars  video frames

Part B- Preparing Tape and Timecode

Part C-Striping the tape