Closed-Captioning Sequencer (CCSQ.EXE)



MoPix Closed-Captioning Sequencer (MopixSQ.EXE)

Installation and Operation

by Brad Botkin

CPB/WGBH National Center for Accessible Media

07 August 2008

Introduction

The MoPix Closed-Captioning Sequencer (MOPIXSQ.EXE) is a Windows utility for driving various types of caption/subtitling devices. It reads time-cued files, monitors SMPTE/EBU timecode, and outputs serial data to a Rear Window Captioning display synchronized to the timecode. It is typically used in a projection booth where master timecode synced to the film is available.

Closed captioning is a service for deaf and hard-of-hearing viewers, although it is valuable to many others as well. In the MoPix setting, the service consists of a reversed display at the rear of the theater. At the seats, a simple reflector, mounted on a stem, allows the user to see the data as visible captions.

Subtitling, which is also text but authored to convey cross-language audio, can be provided in the same manner as described above.

A typical installation includes a Windows PC containing an Adrienne PCI timecode-reader card. This receives longitudinal (audio) SMPTE/EBU timecode, via patch or router, from the film playback device. The PC's serial port is connected to a Rear Window Display.

The PC's hard disk contains one or more caption/subtitle files, usually one file for each reel of tape. Arrangements must be made for caption/subtitle files to be copied onto the hard disk. One method is CCMSPCP (Caption Center Menu System for ProComm Plus), a customization for the DOS version of ProComm Plus. CCMSPCP provides for the delivery of caption/subtitle files from The Caption Center via dial-up modem; it also offers the taperoom operator a menu for selecting files and starting encoding/laydown sessions.

The PC itself can be any Windows PC driven by a 386-class processor or better. MOPIXSQ will run under Windows XP or later. The PC will require either a hard serial port, either built-in or via an adapter of some sort. For example, there are USB serial adapters, and there are also TCP-serial adapters. A TCP serial adapter might be advantageous when the physical distance from the PC to the RWC display board is too long to accommodate RS-232 data (typically less than 50 feet.)

Hardware installation

For tape floor operations, use an industry-standard PC containing a 386-class processor or better. A regular PC keyboard is necessary; a VGA color monitor is recommended. The PC must have at least one serial port and a hard disk with DOS installed. An ISA slot is required for the timecode-reader card. If you plan to use a SoftTouch encoder card, it will occupy a second ISA slot.

The PC must contain an Adrienne LTC IOR or MMR timecode-reader card. Order the card from Adrienne Electronics, Inc., 2196 E. Ford Avenue, Las Vegas, NV 89123, telephone 702-896-1858. The factory-default jumper settings are satisfactory: no IRQ, base address 02A0 hex (IOR card) or memory segment CC00 hex (MMR card). If you need to change the base address or memory segment, you will need to modify the CCSQ.INI file accordingly (see below).

Install the SoftTouch encoder card if necessary, following the manufacturer's instructions. Note the base address and IRQ setting. The example CCSQ.INI file (see below) assumes a base address of 0300 (the factory default) and IRQ 5.

Route timecode (regular longitudinal SMPTE timecode as an unbalanced audio signal) from the router or patch field or directly from the playback VTR to the input of the Adrienne card (an RCA connector) installed in the PC. The timecode may run at 24, 25 or 30 fps.

Connect serial devices, such as closed-caption encoders or character generators for subtitling. MOPIXSQ supports up to two serial devices, connected to COM1: and/or COM2: only.

Connect at least two conductors from the PC's serial port to the external device: outgoing data and ground. On a standard DB9 (9-pin) PC serial port, pin 3 is the outgoing data signal (TX) and pin 5 is the signal ground (GND). Some devices may need to send data back to the PC. If so, connect a third conductor to the PC's serial port; pin 2 is incoming data (RX) on a PC's DB9 connector.

Many of the supported devices implement their serial ports as DB9 connectors with female sockets, to complement the PC's male pins. In this case, you can use a standard 9-conductor extension cable (pins on one end, sockets on the other) to connect the PC's DB9 serial port to the encoder's or CG's DB9 serial port.

For your convenience, here is a summary of the connections to the PC's serial port (including pin numbers for DB9 and DB25 connectors):

|pin name |usage |DB9 pin |DB25 pin |

|TX |data from the PC to the encoder or CG |3 |2 |

|RX |return data from the encoder or CG to the PC |2 |3 |

|GND |signal ground (for the data from the PC to the|5 |7 |

| |DataWall) | | |

Software installation

If you are using CCMSPCP, consult its installation directions. Otherwise, procede with this section for a custom installation of CCSQ.

Create a directory on the hard disk to contain the caption files (and offset files, if needed). The caption files all have the filename extension ".TDS". (Older caption files may have the filename extension ".CC²".) If necessary, this directory also contains an offset file for each caption file. Each offset file has the same root filename as its companion caption file, but with the filename extension ".OFF".

For simplicity, we recommend that you create the caption directory off the root of the hard drive. "C:\CAPTIONS" is a good choice.

Create or select a directory on the DOS search path to contain the two software files, MOPIXSQ.EXE and CCSQ.INI (the two software files could also reside in the same directory as the caption files). MOPIXSQ.EXE, the main software module, sequences the caption/subtitle files according to timecode. CCSQ.INI is a plain-text initialization file containing hardware and software settings.

Editing CCSQ.INI

The default version of CCSQ.INI may be set up for your operation already. It will identify your closed-caption encoder and/or your subtitle character generator, and it will indicate how the PC's serial ports are connected.

If you need to change these settings, edit CCSQ.INI using a plain text editor such as the EDIT utility supplied with DOS 5 and later. If you use a word processor, be sure to save your work as DOS text instead of the word processor's native format.

CCSQ.INI is a plain-text file containing lines of the form "keyname = setting". Lines beginning with a semicolon are taken to be comments and have no effect on the operation of MOPIXSQ.EXE. Lines NOT beginning with a semicolon are scanned by MOPIXSQ.EXE on startup for "keyname = setting" instructions. MOPIXSQ.EXE then modifies its behavior accordingly.

For example, an installation using Ultech a dual-field caption encoder and a subtitle character generator might use this CCSQ.INI:

| |this line: |means: |

| | | |

| |L21F1Avail=yes |An encoder is available for Line 21, field 1. |

| |L21F1Dev=EDS400_1 |The encoder is an Ultech EDS400. |

| |L21F1Port=COM1: |It's connected to COM1:. |

| | | |

| |L21F2Avail=yes |An encoder is also available for field 2. |

| |L21F2Dev=EDS400_2 |It's the same encoder. |

| |L21F2Port=COM1: |At the same port, naturally. |

| | | |

| |SG401Avail = yes |An Ultech SG401 is available for subtitling. |

| |SG401Port = COM2: |It's at COM2:. |

| | | |

| |TimeCodeSource = IOR |Using an Adrienne IOR card. |

| |TimeCodeBaseAddress = 02A0 |Jumpered to the default address. |

| | | |

| |MaxFPS = 30 |All devices handle NTSC video. |

| |MinFPS = 25 |And PAL video. |

| | | |

| |L21F1Decoded = yes |Show captions on the PC screen. |

| |CheckDevFirst = yes |Check that devices are connected and ready. |

| | | |

Following are the options available in CCSQ.INI:

L21F1Avail =

L21F2Avail =

Whether an encoder is available for encoding caption data on line 21 (for PAL, line 22). L21F1 data are encoded on field 1; L21F2 data are encoded on field 2. As discussed below, certain L21F1 devices can be used to display captions in a movie theater or other venue. Setting: YES or NO.

L21F1Dev =

Which kind of device is used for encoding closed caption data on line 21, field one. Setting:

| |Simple |EEG Simple Encoder |

| |Smart_1 |EEG Smart Encoder, standard design for field one encoding only |

| |Link_1 |Link encoder |

| |DE352 |EEG DE 352 CG decoder |

| |TC2 |modified TeleCaption II adapter |

| |DeskTop_1 |EEG EN 370 DT, EEG EN470, Norpak, Evertz, Microvideo encoder |

| |EDS400_1 |Ultech EDS 400 encoder |

| |SoftTouch_1 |SoftTouch encoder card (installed inside the PC) |

| |DataWall_N |Trans-Lux DataWall with normal font (for motion picture theaters, etc.) |

| |DataWall_R |same as above, with mirror-reversed font |

| |VFD6x40 |IEE vacuum fluorescent display (for motion picture theaters, etc.) |

L21F2Dev =

Which kind of device is used for encoding closed caption data on line 21, field two. Setting:

| |Smart_2 |EEG Smart Encoder, custom design for field two encoding only |

| |Link_2 |Link encoder |

| |DeskTop_2 |EEG EN 370 DT, EEG EN470, Norpak, Evertz, Microvideo encoder |

| |EDS400_2 |Ultech EDS 400 encoder |

| |SoftTouch_2 |SoftTouch encoder card (installed inside the PC) |

L21F1Port =

The serial port on the PC to which the line 21, field 1, device is connected. Setting: COM1: or COM2:.

L21F2Port =

The serial port on the PC to which the line 21, field 2, device is connected. In most cases, a single device (connected to a single PC port) encodes data on both fields. Setting: COM1: or COM2:.

EncoderBaseAddress =

The base address for the built-in SoftTouch encoder card. Setting: a four-digit hexadecimal number (factory default is 0300).

EncoderIRQ =

The interrupt request line (IRQ) of the built-in SoftTouch encoder card. Setting: a one- or two-digit decimal number 2 - 15 (factory default is 2, but 5 may be a better choice).

SoftTouchLevel =

The revision level of the built-in SoftTouch encoder card. Setting:

| |PC |original SoftTouch design |

| |PLUS |second-generation SoftTouch design |

SG401Avail =

Whether an Ultech SG401 character generator is available for subtitling. Setting: YES or NO.

SG401Port =

The serial port on the PC to which the Ultech SG401 is connected. Setting: COM1: or COM2:.

CodiAvail =

Whether a Chyron CODI character generator is available for subtitling. Setting: YES or NO.

CodiPort =

The serial port on the PC to which the Chyron CODI is connected. Setting: COM1: or COM2:.

MoPix96Avail =

Whether a MoPix96 display subsystem is available. Setting: YES or NO.

MoPix96Port =

The serial port on the PC to which the MoPix96 display subsystem is connected. Setting: COM1: or COM2:.

TimeCodeSource =

Which type of timecode-reader card is installed in the PC. Setting:

| |IOR |Adrienne LTC IOR card |

| |MMR |Adrienne MMR card |

| |ARTI |ARTI card |

TimeCodeBaseAddress =

The timecode-reader card's base address or memory segment. Setting: a four-digit hexadecimal number (Adrienne IOR default is 02A0; Adrienne MMR default is CC00; ARTI default is 0600).

MaxFPS =

MinFPS =

Maximum and minimum supported frame rates. Some line 21 encoders are able to handle 30 fps NTSC video and 25 fps PAL video. Systems for motion picture theaters may operate at 24 fps. Setting: a decimal number 1 to 100.

L21F1Decoded =

Whether or not decoded line 21, field one, captions should be displayed on the PC screen. If not, the PC screen shows the raw data about to be transmitted. Setting: YES or NO.

CheckDevFirst =

Whether to check that the output devices are connected and ready. Setting: YES or NO.

Brightness =

If the line 21, field one, device is for use in a motion picture theater, the brightness as a percentage of full brightness. Setting: a decimal number 1 to 100.

MoPix21_Blanking_Port =

If the line 21, field one, device is for use in a motion picture theater, which port (if any) is used to control the brightness (on or off) of the display. To temporarily blank the display, connect that port's DTR to RI pin 20 to pin 22 on a 25-pin connector, or pin 4 to pin 9 on a 9-pin. Setting: COM1: or COM2:.

Force_COM1:_Speed =

Force_COM2:_Speed =

The desired data rate for either of the PC's serial ports, if the default for that device is not to be used. Setting: a decimal number between 600 and 112000, inclusive.

Using the software

If you wish, you may invoke MOPIXSQ.EXE directly from the DOS prompt, giving it the name of a caption/subtitle file (without the .TDS extension). To cue up the captions for "Blue Planet", for example, enter this at the DOS prompt:

MopixSQ blueplan

You will see the sequencing screen, which displays things like the running timecode, the current caption, and information about the caption file. The captions will wait for the tape to roll, after which they will be triggered by timecode. In the event that the timecode jumps to any point within the program, the captions will resynchronize themselves; this is true whether the timecode jumps forward or backward. A downward beep indicates that the timecode jumped. A small timecode glitch (less than 15 frames of discontinuous timecode) will be ignored.

If you are using an EEG Simple Encoder as the L21F1 device, press RESET, then LOAD on its front panel. Upward beeps from the PC indicate that MOPIXSQ is successfully communicating with the Simple Encoder. Downward beeps indicate confusion; press RESET, then LOAD on the Simple Encoder.

When you start MOPIXSQ.EXE in this way, it will continue to run indefinitely, waiting for timecode triggers. If a single captioning/subtitling session needs to be restarted, MOPIXSQ.EXE does not need to be restarted.

If you wish to test the system in the absence of rolling timecode, start MOPIXSQ.EXE with the "/c" command-line switch (to use the DOS clock instead of actual timecode). The captions will be sequenced, beginning almost immediately, as if being cued by a normal timecode track. For example:

MopixSQ blueplan /c

If you wish to run this sort of test repeatedly, start MOPIXSQ.EXE with the "/r" command-line switch (to repeat using the DOS clock). For example:

MopixSQ blueplan /r

To exit MOPIXSQ.EXE, press Esc twice.

Preparing an offset file

Each time you use a new caption file, please note the accuracy of the caption timing. Watch the captions on the final video signal (using a decoder if necessary) while listening to the soundtrack to verify that the captions are well synchronized. Note that, when a new sentence in the soundtrack coincides with a shot change (cut) in the picture, the new caption should appear on the display at exactly the same time (or within a frame ).

If the caption timing is incorrect, determine the amount of the timing error (in hours, minutes, seconds and frames) and whether the captions should be earlier or later.

If you wish, you can use the offset screen in MOPIXSQ.EXE to experiment with the offset value. With the tape rolling and MOPIXSQ.EXE running, press O (the letter oh) key twice. Follow the instructions on the offset screen. You can change the digits in any of the three fields: Offset, Cue or Actual. Press Enter to return to the sequencing screen and resume caption display. Examine the caption timing and repeat the process as necessary.

Note the value of the Offset that produces the correct caption timing. An Offset greater than 00:00:00:00 causes the captions to be earlier. For example, an Offset of 00:00:12:00 would cause the captions to appear 12 seconds earlier with respect to the videotape timecode. An offset less than 00:00:00:00 (before midnight) causes the captions to be later. For example, an Offset of 23:59:48:00 would cause the captions to appear 12 seconds later with respect to the timecode.

The Offset value you set in the offset screen will also appear in the Offset box on the sequencing screen. This value will remain in effect until you change it, or until you exit MOPIXSQ.EXE.

If you want to put this Offset value into effect automatically each time you use this caption file, use a text editor to create an offset file containing a line in this form:

Offset = 00:00:12:00

In this example, the captions will appear earlier by 12 seconds.

Name this file with the base name of the caption file plus the extension ".OFF". For example, to establish a permanent offset for the captions in BLUEPLAN.TDS, name the offset file BLUEPLAN.OFF. Put this file into the same directory as the caption file.

The offset file may contain only one line in the keyname=setting form. To make the captions later by 12 seconds (for example), the file could contain the line:

Offset = 23:59:48:00

Or, if you prefer, you could put this line in the file:

Later = 00:00:12:00

For completeness, the keyname "Earlier" is also recognized (this has the same effect as "Offset").

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download