You are on page 1of 45

FLEx EDL Exchange Protocol Version 1005

Page 1

FLEx -- Film Log EDL Exchange Protocol

FLEx permits the transfer of film-related data to and from videotape based editing systems, to improve the productivity of video based editing of film projects; and provides for list driven auto-assembly edit operations in telecine transfer bays.

FLEx Version 1005 Specification Document Date: April 1, 1997

Administrator, Gary Adams, TLC Product Manager da Vinci Systems 5410 NW 33rd Ave. Suite 100 Ft. Lauderdale, FL 33309

Voice: 954-484-8100 Fax: 954-486-7936 http:\\www.davsys.com TLC LA BBS: 818-902-093714.4K N/8/1 info@davsys.com

Please contact the above address for suggestions, additions, and corrections to this document.

KeyKode is a trademark of Eastman Kodak Company; used with permission. TLC is a trademark of da Vinci Systems. EMEM is a trademark of Grass Valley Group, Inc. File: FLEX1005.doc rev A.

FLEx EDL Exchange Protocol Version 1005

Page 2

FLEx EDL Exchange Protocol Version 1005

Page 3

ABOUT FLEx FLEx (Film Log EDL Exchange) Protocol is intended to permit the automated communication of information between the telecine bay and off- and on-line editing systems. This information consists of a database relating all original film reel, positional, and KeyKode (TM) data of transferred "elements" (scenes and takes) to the corresponding destination videotape reel and time code. In some cases an additional time code representing sound "sync" and sound reel are carried in the database to assist the process of conforming sound to picture. The record tapes created in telecine become playback tapes during the video off-line process, during which a conventional EDL (edit decision list) is created that represents (via videotape reel designations and time codes) the finished show. "Trace" software can then examine each edit decision in the EDL, find the corresponding film material in the FLEx database, and produce a film conform list ("negative cutters list") as output. FLEx also supports list-driven field-accurate and varispeed automated editing in the telecine bay and can be used to facilitate conforming film material for release in multiple video standards or to generate multiple tape masters in various formats simultaneously. da Vinci is working with a variety of edit system and time code equipment manufacturers, and post production users, to incorporate FLEx support into current and existing products. We are incorporating FLEx support into our popular TLC Telecine Editing System, and other products. Production and Post Production centers that have available the services of a computer database-literate individual can immediately benefit from adopting FLEx in their facility. Those who do not can expect FLEx compatible products "off-the-shelf" in the near future. FLEx is an evolving standard. Your suggestions are encouraged. Audience and Scope of this Document This document is intended for those individuals familiar with general knowledge of computer concepts, such as the ASCII code, disk files, and similar notions, who wish to implement FLEx compatible systems. Also assumed is a general knowledge of video and film editing. It is not intended to be a tutorial on computer science, nor a precisely "formal" specification in the sense of a SMPTE standard (although such a SMPTE standard is supported by this proposal). It is intended to provide sufficiently unambiguous information and guidance to a television engineer or television-literate programmer to successfully implement FLEx input, interpretation, and output processing on modest computers. If questions arise, the title page of this document shows the current contact information. for more

For those of you interested in FLEx for dailies-logging applications of the TLC Telecine Editing System, please read this document thoroughly then refer to Appendix A for some helpful hints about where TLC places dailies data within FLEx data records.

FLEx EDL Exchange Protocol Version 1005

Page 4

INTRODUCTION AND DISCUSSION There are two FLEx formats: ASCII and binary. This document describes ASCII FLEx, the format having the widest initial interest among potential users. The binary format is described elsewhere. These two formats attempt to satisfy two differing and mutually exclusive sets of requirements: ASCII FLEx Binary FLEx

-Non real-time; intended to be Field-accurate in real-time uses such created on/for editing systems as bench logging of edge codes. -Human readable but not compact, no data packets or checksums -Easy to text edit on 80 column displays and printers -Easy to understand and use by computer novices -"EDL" like formatting, for easy user training -Data can be easily read by offthe-shelf database products -MS-DOS format 3.5" disk based - Optimum byte count packets for high-speed serial communications, with checksums - Not intended for direct manual viewing, editing, or printing - Requires real-time programming skills generally requiring assembly language - Cryptic format imposed by performance requirements - Reading data requires special software, and possibly special hardware - Transportable via a variety of media on standard 720KB and 1.4MB formats

Common requirements of both FLEx formats - Can be used and extended immediately by a wide group of interested facilities and manufacturers, without compromising long-term standardization by the SMPTE. - User/developer can extend features and customize while maintaining file compatibility and interchangability with other users - Permit dailies transfer data logging in telecine to database for use by off-line editing systems for later negative and sound conforming of original film to off-line generated edit lists (EDL). - Full automation of the edit/telecine bay for auto-assembly processes, including multiple recorders, players, A/V switchers, multiple switcher effects per edit, and control of other devices in the bay; i.e., bring to telecine what is now available in on-line edit bays.

FLEx EDL Exchange Protocol Version 1005

Page 5

It should be noted that either type of FLEx can be converted to the other with an automatic program (a "filter" in DOS/UNIX parlance). Fundamentally, either type can be stored on disk and/or transmitted serially via RS-232C, RS-422, Ethernet, etc., if necessary.

FLEx EDL Exchange Protocol Version 1005

Page 6

ASCII FLEx ASCII FLEx is intended to be stored on disk and transmitted between users in "non-real-time" applications, typically on floppy disks. ASCII FLEx files consist of a series of ASCII FLEx records each terminated by one or more carriage-return line-feed pairs. The first three characters of each record should be interpreted as a record ID code ranging from 000 to 999. The record ID code defines the type of record, i.e., the number, type, and position of data fields that data record type contains. Processing software should first examine each record's ID code then take appropriate action on the remaining characters in the record. A few record types are mandatory, most are optional and their inclusion is a function of product capability, specific project requirements or facility policy. FLEx is specifically designed to avoid imposing bureaucratic overhead and costs on the user and FLEx product developer, while maintaining a standardized growth path and permitting virtually unlimited edit-bay automation once the need arises. Also, an expansion and customization feature is built into the FLEx specification so that anyone can expand upon the basic FLEx structure without formal approvals and delays, when adding features for proprietary, short-term, or special needs. Such customization does not affect transfer of other, standard contents of the FLEx file to and from third party computer systems. Only the data records actually required by the user application need be present in the FLEx file. The detailed definition of each record appears in the pages that follow. Each definition includes a discussion of intended usage, the generic record format, and an example. FLEx implementors submitting new record types for inclusion in the proposed standard are encouraged to document and submit them in a similar style. da Vinci has established a dial-up BBS (electronic bulletin board system) to facilitate this application process, at 818-902-0937 (14,400 baud,N,8,1). Call the BBS to set up your initial account up, then fax the user name to us so that we can grant your account FLEx file area access rights. Within each data record, individual data fields are delineated by their column position, rather than by "space" or "comma" delimiting (two other common methods). Fixed column delimiting was selected because it is easy to view and edit manually, and to permit user-entered data to include commas and spaces (such as in show titles and similar textual entries). To clarify the column positions of data fields in each data record definition in this document, a "column ruler" is shown directly above each such definition. The ruler looks like this:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

Of course, this ruler is not present in actual FLEx files.

FLEx EDL Exchange Protocol Version 1005

Page 7

Note that columns are counted beginning with column 0, not 1, and therefore represent indices into conventional character string arrays (at least for programming languages that begin counting array elements with index 0). Records need not be of fixed length if the last data field of the record is variable. For example, a short facility name (see record 011 format) may terminate with a carriage-return line-feed pair early (or be padded to length with spaces), however a short client name (in the same example) must be padded with ASCII space characters to preserve the column position of subsequent data fields. Processing software reading ASCII FLEx files record-by-record can safely assume no single record shall exceed 255 characters in length, including the carriage-return line-feed pair (i.e., a maximum of 253 data characters). Software generating ASCII FLEx file output shall conform to this length limit; it is suggested that 80 columns or less be used whenever practical. All record definitions in this document conform to the 80 column limit. Unused numeric fields should be assumed to contain zero if they are found to contain a space or carriage return (perhaps as a result of manual text editing on a word processor), however, FLEx software implementors should insure at least a single ASCII '0' (48 decimal, 30 hex) be present in unused numeric fields in computer generated output. Software generating FLEx data records must not insert control codes (ASCII codes less than 32 decimal, 20 hex), except for carriage-return and line-feed codes. Bear this in mind when designing custom (900 series) data records. If binary data must be stored in a FLEx record (from an EMEM dump, for example), conversion to "hex-ASCII" format (i.e., 2 printable hex characters per original byte) is suggested. In short, do not create records which can not be directly printed, viewed and edited on off-the-shelf word processors. As a general rule, software implementors are cautioned to design their software in a robust manner, expecting the possibility that human edited FLEx contents may not be perfectly formatted, and that "reasonable" assumptions may be necessary. These are noted from time-totime throughout this document. In the generic definitions, a means any printable alphanumeric upper or lower-case text or ASCII space in some cases FLEx expects to see particular string text, as specified. means an ASCII numeric digit of the range [0-9] inclusive; means a fixed position decimal point separating whole part from fraction;

Boldface text represents string literal constant text appearing in the data record purely to enhance human readability of the FLEx file contents when viewed, edited and printed. In the examples, Italic text shows variable (i.e., user generated) sample data.

FLEx EDL Exchange Protocol Version 1005

Page 8

A final explanatory note. Unless specifically indicated, in this document the words "record", "field", and "code" shall refer to their conventional meanings in the data processing industry, rather than their usage in the television industry. Specifically, if time code is being discussed, "time code" will appear, not "code".

FLEx Time code Numeric Format FLEx uses a video-field-accurate time code format derived from the TLC Editor. A video field ID is appended to the basic time code value, and drop/non-drop status is encoded by the punctuation characters used to separate digit groups:
hh:mm:ss:ff.0 Means hh:mm:ss:ff.1 Means hh;mm;ss;ff,0 Means

a non-drop frame number, video field 1 a non-drop frame number, video field 2

a drop frame number, video field 1 hh;mm;ss;ff,1 Means a drop frame number, video field 2 Of course, each of these is a 13 character ASCII string--not a BCD or other value. EBU time code values use the non-drop punctuation. Field-accurate time codes are required in order to permit seamless insert edit replacement of 3:2 pulldown imagery, and to identify the 3:2 ("SMPTE") framing relationship of each edit. Software applications not requiring field-accuracy may simply strip the last two characters from each ASCII time code string during processing.

FLEx Film Counter and KeyKode (TM) Numeric Formats Film edit points are specified in one of two formats, encoded by punctuation:
ffffff+ff 002000+08 hfhfhf&ff 004000&08

Means six digits of feet, plus (film) frames, example: Means six digits of half-feet, plus (film) frames, example:

Leading zeroes may generally be omitted, software developers should not assume them, nor assume left- or right-hand justification when reading data records. Of course, most 35mm projects will use feet+frames, and 16mm will use half_feet+frames. This will be the case for any Kodak KeyKode (TM) numbered stock. However, FLEx allows either format to be used with either film gauge.

FLEx EDL Exchange Protocol Version 1005

Page 9

RECORD ID CODE SUMMARY Here is a brief summary of record codes, group ranges and intended usage, the detailed definition of each data type is presented in the pages that follow. Data record numbers below 900 not shown here are not yet defined, and are reserved for future specification: Code 000-009 000 Name and Usage FILE IMPLEMENTATION DATA RECORDS, as follows: FLEx File Originator Description Record Identifies details of the device that created the FLEx file, to facilitate processing of the file contents by the recipient.

010-099 010 011 012 013

SESSION HEADING DATA RECORDS, as follows: Project/FLEx File Title Line Data Record Project title. Client and Transfer Facility Data Record Client name and post/transfer facility names. Date and Personnel Data Record Production and transfer dates, personnel and telecine bay. Heading Notes Data Record User defined notes for other information not appearing above.

100-199 100 101 110 120

TRANSFER EDIT DATA RECORDS, as follows: Edit Type Data Record Defines 3:2 pulldown, video standard, and edit tracks. Edit Track Override Data Record Permits revised track selection on a per-recorder basis. Slate Data Record Carries scene, take, camera roll, and "production" time code. Script Data Record Attaches misc. script notes to an edit.

200-299 200 201

TELECINE TRANSPORT DATA RECORDS Telecine Edit Data Record 4 perf 35mm or 16 mm modes Defines reels, edit points, and edge code for telecine transport(s) New Telecine Edit Data Record 3 perf implementation Defines reels, edit points, and edge code for telecine transport(s)

FLEx EDL Exchange Protocol Version 1005

Page 10

Code

Name and Usage, continued

300-399 300

VTR TRANSPORT DATA RECORDS, as follows: VTR Edit Data Record Defines reels, edit points and mode for VTR(s)

400-499 400

ATR TRANSPORT DATA RECORDS, as follows: ATR Edit Data Record Defines reels and edit points and mode for ATR(s)

500-599 500

VIDEO SWITCHER EFFECTS DATA RECORDS, as follows: Video Switcher Transition Effects Data Record Defines types and timing of switcher edit transition(s)

600-699 600

AUDIO MIXER EFFECTS DATA RECORDS, as follows: Audio Mixer Transition Effects Data Record Defines types and timing of mixer edit transition(s)

700-899

AUXILIARY DEVICE CONTROL DATA RECORDS, (undefined, reserved)

900-999

USER SPECIFIC CUSTOM FORMAT DATA RECORDS (user defined, unspecified)

FLEx EDL Exchange Protocol Version 1005

Page 11

FLEx FILE ORIGINATOR DESCRIPTION DATA RECORD ID Code 000 Usage: Mandatory. Record code 000 is reserved for specifying details of the device that created the FLEx file, so that if known implementation differences exist from one product to the next or between product software releases, the receiving software can take appropriate action. Although all FLEx files should adhere to the prevailing FLEx protocol standard record codes and formatting for record codes 000-899, it is anticipated that certain manufacturers may elect to introduce new record types to meet specific needs prior to formal incorporation into the protocol standard document. To do so, the manufacture should contact the FLEx Protocol Manager to coordinate allocation and format assignment of new record codes below 900. Codes 900-999 are user defined and require no formal authorization; they are intended for product specific setup/configuration data storage and retrieval and for proprietary feature related data records. Receiving software should simply retain in place (not process or relocate within the file) 900-999 series records unless specifically designed to interpret them according to the manufacturer code present in record 000. Manufacturers are encouraged to format their data records to fit within 80 columns whenever possible, for ease of viewing and printing on low cost computer equipment. If a manufacturer needs more than 100 data records for proprietary needs, a single 900 series code can be used, having a subcode field contained within it followed by subcode data fields. This permits virtually unlimited expansion of record types while maintaining compatibility with the basic FLEx standard. A record 000 should appear as the first record of the file. If more than one instance of a record 000 is present in the file (as might occur after joining multiple files), the data following each record 000 shall be interpreted according to the contents of the most recent record 000. In the event a file does not begin with a record 000, the prevailing SMPTE FLEx standard protocol should be assumed by the processing software, and all 900-999 series records ignored. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 000 Manufacturer aaaaaaaaaa No. ### Equip aaaaaaaaaa Version ######## FLEx ####

Example:
000 Manufacturer da Vinci No. 022 Equip TLC Version 400 FLEx 1004

Interpretation: This file was created on a da Vinci TLC. da Vinci is manufacturer 022; the TLC was running software version 400, and writing a FLEx file compatible with FLEx protocol document version 1004.

FLEx EDL Exchange Protocol Version 1005

Page 12

Field Definitions: Index Length Description 00-02 3 04-15 2 Record ID Code 000 "Manufacturer" A string literal constant, used to enhance human readability of FLEx file contents. Alphanumeric Manufacturer name, assigned by manufacturer "No." A string literal constant, for readability. Numeric [000-999]: Manufacturer's unique ID assigned by FLEx Administrator. See Appendix B for listing of ID assignments. 000 through 999 or <spaces> - other or unspecified "Equip" A string literal constant, for readability. Alphanumeric Manufacturer's product name, assigned by manufacturer "Version" A string literal constant, for readability.

17-26 10 28-30 3

32-34 3

36-40

42-51 10 53-59 7

Index Length Description, continued 61-68 8 Product's software revision level, assigned by manufacturer; use an integer representation; i.e. no decimal points, [00000000-99999999]. "FLEx" A string literal constant, for readability. [0000-9999] FLEx revision level this file adheres to. Note: 0000-0999 reserved for use by the SMPTE (future). FAX the contact on the title page for current FLEx rev. level.

70-73

75-78 4

Notes: So that the FLEx protocol is robust if manually text edited, processing software should be designed to correctly process numeric fields whether data is right or left justified, contains or excludes leading zeros, or + or - signs. In this document, numeric fields are assumed to be integer unless a decimal point (i.e. floating point format) is specifically shown.

FLEx EDL Exchange Protocol Version 1005

Page 13

ASCII FLEx protocol specifies data fields by fixed column position and width. Do not use a software processing strategy based on ASCII space token separation, since many textual data fields may contain ASCII spaces. Records are separated by one or more carriage-return line-feed pairs (13 10 decimal, 0D 0A hex). Multiple pairs are inserted to enhance human readability of file contents, and should be expected by processing software. We encourage implementors to group related records together, with groups separated by vertical white space, to enhance human readability and editing of FLEx file contents. FLEx is not case sensitive; either upper or lower case text may be used. It is suggested that processing software preserve whatever case is found.

FLEx EDL Exchange Protocol Version 1005

Page 14

PROJECT/FLEx FILE TITLE LINE DATA RECORD ID Code 010 Usage: Optional. The title line record holds the text of the project title or FLEx file title. If more than one instance of a record 010 is present in the file (as might occur after joining multiple files), the data records following each record 010 shall be interpreted as being associated with the most recent record 010 title. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 010 Title aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Example:
010 Title DUI And You, Show #888, Air Date: 01-01-96

Field Definitions: Index Length Description 00-02 3 04-08 10-79 5 70 Record ID Code 010 "Title" A string literal constant. Alphanumeric Title text, assigned by user.

Notes: This example demonstrates why comma or space delimited data fields were rejected in designing the ASCII FLEx format; i.e., most people expect to use spaces and commas in the text data they enter. In general, record ID codes 010-099 are intended for "heading" information; i.e., information that applies "globally" to all following records in the FLEx file. One or more groups of heading records may appear in a single file (perhaps as a result of file joining or to indicate the start of records corresponding to a new act, shoot date, etc.). If more than one instance of a heading record or group is present in the file, the data following each shall be interpreted as associated with the most recent heading record(s).

FLEx EDL Exchange Protocol Version 1005

Page 15

CLIENT AND TRANSFER FACILITY DATA RECORD ID Code 011 Usage: Optional. Identifies the client production company, and telecine transfer facility that generated the FLEx file. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 011 Client aaaaaaaaaaaaaaaaaaaaaaaaaaaaa Facility aaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Example:
011 Client Black Hole Studios, Inc. Facility The Best Post Place, Ltd.

Field Definitions: Index Length Description 00-02 3 04-09 6 Record ID Code 011 "Client" A string literal constant. Alphanumeric client name text, assigned by user. "Facility" A string literal constant. Alphanumeric transfer facility text, assigned by user.

11-39 29 41-48 50-78 8 29

Notes: The client name has been padded with ASCII spaces to preserve the column position of "Facility" and subsequent data fields. Padding need not be present after the period in "Ltd." since no subsequent data fields are defined in the record format.

FLEx EDL Exchange Protocol Version 1005

Page 16

FLEx EDL Exchange Protocol Version 1005

Page 17

DATE AND PERSONNEL DATA RECORD ID Code 012 Usage: Optional. This record identifies the shoot and transfer dates, the telecine bay used, and the colorist and assistant's initials. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 012 Shoot Date xx-yy-zz Transfer Date xx-yy-zz Opr aaa Asst aaa Bay aaaaaaaa

Example:
012 Shoot Date 06-01-95 Transfer Date 06-02-95 Opr RGB Asst YCM Bay TC-1

Field Definitions: Index Length Description 00-02 3 04-13 10 15-22 8 25-37 13 Record ID Code 012 "Shoot Date" A string literal constant. Alphanumeric date string, assigned by user. "Transfer Date" A string literal constant. Alphanumeric date string, assigned by user. "Opr" A string literal constant. Alphanumeric colorist's initials, assigned by user. "Asst" A string literal constant. Alphanumeric assistant's initials, assigned by user. "Bay" A string literal constant. Alphanumeric bay ID string, assigned by user.

39-46 8 49-51 53-55 58-61 63-65 68-70 3 3 4 3 3

72-79 8 Notes:

xx-yy-zz means an date string (in North America, normally mm-dd-yy format). The field is general purpose alphanumeric; but the punctuation shown is the suggested format.

FLEx EDL Exchange Protocol Version 1005

Page 18

HEADING NOTES DATA RECORD ID Code 013 Usage: Optional. Allows inclusion of additional user supplied "heading" text as needed throughout FLEx file. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 013 Notes aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Example:
013 Notes Reels 213A and 213B are KeyKoded; reel 99 is stock shot footage.

Field Definitions: Index Length Description 00-02 3 04-08 5 Record ID Code 013 "Notes" A string literal constant. Alphanumeric note string, user supplied.

10-79 70

Note: This field only appears once in the Heading area for each FLEx file. For event by event note data, see data field 120, Script below.

FLEx EDL Exchange Protocol Version 1005

Page 19

EDIT TYPE DATA RECORD ID Code 100 Usage: One instance per edit. Defines the start of a new group of FLEx records all associated with a single edit; specifies the edit number and default tracks to be recorded upon. Each edit operation logged in the FLEx file begins with an instance of record 100. All subsequent records in the file until the next record 100 are associated with a single edit or other automated transfer operation. FLEx supports full automatic assembly operations involving numerous A/V switcher, VTR, ATR, and other peripheral device control events, in real-time, by including as many device control records as needed by the edit to be performed. Computer edit system software should be designed to scan the FLEx file until record 100 for the desired edit number is found. Then all subsequent records in this "edit group" should be read until the next record 100 is found. The edit system then presets all edit bay devices accordingly, then begins preroll. This scheme permits a virtually unlimited degree of bay automation per edit event. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 100 Edit #### to <track_IDs> Field xy stnd Split <track_IDs> Delay hh:mm:ss:ff.f

Example:
100 Edit 102 to V1234 Field A1 NTSC Split 34 Delay 00:01:56:12.0

Interpretation Edit 102 shall by default (see record 101) record to video, and audio tracks 1 thru 4 (as applicable) on all participating recorders. Audio tracks 3 and 4 will not begin recording until 1:56:12.0 into the edit. Video being recorded is derived from film, and at the edit-in point, a SMPTE A frame relationship exists-- the first video field recorded is the first field of the 'A' frame pulldown. Field Definitions: Index Length Description 00-02 3 04-07 4 Record ID Code 100 "Edit" A string literal constant. [0001-9999] Numeric edit number, user supplied. (Treat as in a standard EDL: the edit number need not be in numerical sequence in the FLEx file. When cleaning a FLEx file, higher numbered edits take precedence in the case of overlapping material--they occurred after the lower numbered edit.)

09-12 4

FLEx EDL Exchange Protocol Version 1005

Page 20

Index Length Description 14-15 17-27 2 11 "to" A string literal constant. The default tracks to be recorded, including split tracks. <track_IDs> is a character string or substring of the following character set 12345678QT<space>], where: 'V' means the video track; '1' thru '8' are audio tracks 1 through 8, respectively; 'Q' is the analog cue-audio track specific to digital VTRs 'T' is the analog time code track specific to digital VTRs, also any edit to the time code track of any other type of VTR. For example on a 1 inch VTR, '3' will not result in LTC track recording--a 'T' must appear to enable recording on the 1 inch LTC track. <space> means no track; used to pad columns. "Field" A string literal constant. The SMPTE 3:2 pulldown relationship of the edit, where x is one of the following [ABCD?<space>]: ?' or <space> means unknown or not applicable. 'A' thru 'D' means SMPTE A, B, C, or D framing, respectively. These framing relationships are defined as: SMPTE A B C D Film Frame Duration 2 video fields 3 video fields 2 video fields 3 video fields Begins on Video Field 1 Field 1 Field 2 Field 2

29-33

35-36 2

The second (y) character is one of [123?<space>]: '?' or <space> means unknown ingoing edit field; '1' thru '3' means the first, second, or third field of the SMPTE edit frame specified by x above. For normal telecine work where the editing system is field-accurate (e.g. TLC), the in-edit field will be '1' to indicate the entire film pulldown is being recorded, and the edit is aligned to the film pulldown. During the off-line process, or where editing is performed to frame (not field) accuracy, the possibility exists that the in-going edit will not be aligned to the first field of the film pulldown. This character indicates which field within the frame pulldown the edit in-point aligns to. 38-41 43-47 49-59 4 6 11 Video standard alphanumeric string, either "NTSC" or "PAL". "Split" A string literal constant. The default tracks to be recorded after a delay, i.e., split tracks. <track_IDs> is a character string or substring of the same format as for columns 17-27. All track select characters appearing here should also appear in columns 17-27; i.e., the split tracks are a subset of the edit tracks.

FLEx EDL Exchange Protocol Version 1005

Page 21

61-65 67-79

5 13

"Delay" A string literal constant. The amount of real-time delay after edit begins, before the split tracks begin recording. A FLEx standard time code number, as described in the discussion section.

Notes: In the <track_IDs> string, software designers should assume any track select character may be found in any column position. Do not assume any particular order, or left or right justification. Unused columns are padded with spaces. Eight audio tracks are provided in anticipation of HDTV VTRs. Edits may involve any number of record VTRs in any mix of makes, models, and formats. Audio track select flags '1' to '8' will only enable audio tracks, not time code tracks. Thus, a V1234 edit will record 4 track audio to a digital VTR and a stereo mix to a 1 inch VTR, without damaging the 1 inch LTC track. SMPTE framing refers to the 3:2 pulldown relationship that exists when transferring 24 fps film (at about 23.98 fps) to NTSC video (at 29.97 fps). Note that when transferring 30 fps film in NTSC (at 29.97), and 25 fps film in PAL (at 25.00), one film frame exactly occupies one video frame, but could be of either "field dominance". In these cases the SMPTE framing column can display 'A', or 'C' based on the field dominance of the telecine output. If the dominance is unknown, or some other varispeed is in use, the field is left blank or reads '?'. The split delay may appear as either drop or non-drop frame (if NTSC). In either case, the actual delay is computed as a total number of video fields of real-time. A simple example:
01:00:00:00.0 = 216,000 01;00;00;00,0 = 215,784

video fields of delay (non drop at 59.94/sec, more than an hour) video fields of delay (drop frame at 59.94/sec, an exact hour)

For typical split delays of under a minute, the two formats yield equal delays.

FLEx EDL Exchange Protocol Version 1005

Page 22

EDIT TRACK OVERRIDE DATA RECORD ID Code 101 Usage: Optional. Permits one or more recorders' edit tracks to be selected separately from the default track selections in record 100. The format is similar to record 100, except the reel ID if the desired transport is specified. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 101 Reel aaaaaaaa to <track_IDs> Split <track_IDs> Delay hh:mm:ss:ff.f

Example:
101 Reel 001B to V12T Split V Delay 00;00;05;15,1

Interpretation: In the edit specified by the most recent record 100, locate the recorder that has reel 001B loaded, and override the default track selections and split-edit effects as indicated in this record--a stereo audio and time code edit with delayed video. Field Definitions: Index Length Description 00-02 04-07 09-16 18-19 21-31 3 4 8 2 11 Record ID Code 101 "Reel" A string literal constant. Alphanumeric reel ID string. "to" A string literal constant. The edit tracks selected for the specified reel. See the definition of record type 100 for format details. "Split" A string literal constant. The default tracks to be recorded after a delay, similar to record type 100. "Delay" A string literal constant. The amount of real-time delay after edit begins; similar to record type 100.

42-46 48-58 60-64 66-78

5 11 5 13

FLEx EDL Exchange Protocol Version 1005

Page 23

Notes: If no record 101 entries pertain to the current edit, the default tracks contained in record 100 apply to all recorders. One or more record 101 entries may be present in a single edit, as needed to adjust track selections on individual transports.

FLEx EDL Exchange Protocol Version 1005

Page 24

SLATE DATA RECORD ID Code 110 Usage: Optional. Permits the logging of production slate information, including the time code present on electronic slates. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 110 Scene aaaaaaaa Take aaaaaaaa Cam Roll aaaaaaaa Sound aaaaaaaa hh:mm:ss:ff.f

Example:
110 Scene 121 Take 4 Cam Roll 14B Sound 138 12;34;13;04,0

Field Definitions: Index Length Description 00-02 04-08 10-17 19-22 24-31 33-40 42-49 51-55 57-64 66-78 Notes: The "cam roll" field is used to carry the original camera negative reel ID. This may be (most often is) the same as the telecine transport's reel ID (appearing in another record type defined below) since OCN is often transferred. The two reel IDs will not match if a spliced "select takes" reel is loaded on the telecine rather than OCN or OCN workprint, since each "circle 3 5 8 4 8 8 8 5 8 13 Record ID Code 110 "Scene" A string literal constant. Alphanumeric scene ID string. "Take" A string literal constant. Alphanumeric take ID string. "Cam Roll" A string literal constant. Alphanumeric camera roll (reel) ID string. "Sound" A string literal constant. Alphanumeric sound roll ID string. The "production" (sound; e.g. Aaton) slate time code.

FLEx EDL Exchange Protocol Version 1005

Page 25

take" on the spliced reel may come from unrelated camera rolls. In such cases, the telecine transport data record will show a "lab" (intermediary) reel ID string. The sound roll ID and time code, if present, will match that found in one of the ATR transport data records for the current edit, if the edit system is synchronizing a 1/4" or DAT transport via slate time code. Otherwise, these fields are blank or could be used to reference a mag track.

FLEx EDL Exchange Protocol Version 1005

Page 26

SCRIPT DATA RECORD ID Code 120 Usage: Optional. Script or other misc. editing or telecine transfer notes for each edit can be maintained in one or more script records. This record is intended to permit recalling an edit by its script notes, for example. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 120 Scrpt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Example:
120 Scrpt POV launch tower; PA: "T-minus...6...5... Abort, retry, ignore?>"

Field Definitions: Index Length Description 00-02 04-08 10-79 3 5 70 Record ID Code 120 "Scrpt" A string literal constant. Alphanumeric script note string, user supplied.

FLEx EDL Exchange Protocol Version 1005

Page 27

TELECINE EDIT DATA RECORD ID Code 200 Usage: Mandatory (or code 201) if edit includes one or more telecine transports. Defines edit in point and duration, and KeyKode (or conventional edge code) numbers for one or more telecine transports participating in the edit. Each transport has its own data record. The speed, reel, gauge, the user's transport name are included in each data record. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 200 aaaaa aa ##.## aaaaaaaa ffffff+ff ffffff+ff Key aaaaa aaaaaaaa ffffff+ff p#

Examples:
200 RNK-A 35 23.98 OCN-12A 200 RNK-B 16 29.97 LAB-55B 000100+00 000001+08 Key EASTM KJ123456 008845+02 p2 001277&06 000001&16 Key FUJI 96002345 002776&15 p1

Interpretation Two telecines are participating in the edit, since two record 200s appear in the FLEx file in this edit group. The first has 35mm 24fps film, the second has 16mm 30fps film. Since the edit is NTSC (from record 100), the film speeds read slightly slower than the original camera rates. Each has KeyKode numbering. Field Definitions: Index Length Description 00-02 04-08 10-11 13-17 3 5 2 5 Record ID Code 200 User's transport name, if any; alphanumeric Film gauge: "8 ", "16" or "35" (additional values are pending) Film speed: [00.00-99.99]; in practice the telecine's varispeed in fps, rounded to the nearest hundredth fps. The alphanumeric film reel ID The edit-in position, normally relative to the start of the reel (via a manually preset counter in the telecine editor). Total edit length (i.e., duration, expressed as length). "Key" a string constant.

19-26 28-36

8 9

38-46 48-50

9 3

FLEx EDL Exchange Protocol Version 1005

Page 28

52-56

The film manufacturer, if known (can be derived from KeyKode) EASTM Eastman Kodak Company FUJI Fuji Film Company AGFA Agfa-Gevaert N.V. <##> [00,04-99] an unassigned manufacturer code <blank> not known KeyKode number prefix and emulsion; or edge code prefix if known. Examples: KJ123456 5296 Emulsion, KeyKode prefix 123456

58-65

96123456 same as above, refer to Eastman Kodak KeyKode handout for more information. For conventional key numbers, this field holds any alphabetic prefix characters found ahead of the key number, or is blank. 67-75 9 KeyKode or conventional key number in-point, with frame offset to exact first frame of imagery transferred in edit. "p" A string constant; abbreviation for "perf" Of the four perfs in each 35mm frame, the perf aligned with the "zero frame reference mark" of KeyKode numbered film stock. Refer to Kodak KeyKode handout. Blank for conventional key numbers. 35mm Gauge '1' perf at top of image '2' upper middle perf '3' lower middle perf '4' bottom perf of frame '?' or <space> if unknown Notes: The transport user name is optional. Best image consistency is often obtained when retransferring material on the same telecine as was used for the original transfer. "Length" rather than "duration" terminology is specifically used to refer to the edit interval since the meaning of the latter term is ambiguous when transferring at other than "standard" speed. The edit-in position is the first frame of imagery transferred to tape; the edit length shows the total length transferred to tape, regardless of the speed of the film. Either feet+frames, or half feet&frames notation may appear in the FLEx record. 16mm Gauge Always '1' for 16mm

77 78

1 1

FLEx EDL Exchange Protocol Version 1005

Page 29

KeyKode barcodes encode the film manufacturer with a 2 digit number, and the emulsion with another 2 digit number. Eastman Kodak has defined the first three KeyKode manufacturer name codes; others are pending. Also, they have defined emulsion codes for Eastman film stocks; when these are known, they are displayed alphabetically, just as a human will read them off the edge of the film later during conforming ("KJ" in the first example). FLEx shows these just ahead of the 6 digit prefix. When the stock assignment for a particular code is not known (as is currently the case for the other manufacturers), the two KeyKode emulsion digits appear ahead of the 6 digit prefix as in the second example. This record (200) is intended for 16 mm and normal 4 perf 35mm. For other film types and perf types, use record 201 described below. Each event may contain either a record 200 or record 201 but not both.

FLEx EDL Exchange Protocol Version 1005

Page 30

TELECINE EDIT DATA RECORD ID Code 201 Usage: Mandatory (or code 200) if edit includes one or more telecine transports. Defines edit in point and duration, and KeyKode (or conventional edge code) numbers for one or more telecine transports participating in the edit. Each transport has its own data record. The speed, reel, gauge, the user's transport name are included in each data record. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 201 aaaaa aa ##.## aaaaaaaa ffffff+ff ######### Key aaaaa aaaaaaaa ffffff+ff p##

Examples:
201 RNK-A 3P 23.98 OCN-12A 201 RNK-B 70 29.97 LAB-55B 000100+00 000001008 Key EASTM KJ123456 008845+02 p1 001277+06 000010000 Key FUJI 96002345 002776+15 p??

Interpretation The first example of 3 perf type film with the identified perf at the top of the frame. The length is 1008 frame counts. The second is 70 mm film with unknown perf. The length is 10000 frame counts. Field Definitions: Index Length Description 00-02 04-08 10-11 3 5 2 Record ID Code 201 User's transport name, if any; alphanumeric Film gauge: "8 ", "16", "35"(4 perf), 70, 3P (3 perf 35mm), or IX, (IMAX). (additional values are pending) Film speed: [00.00-99.99]; in practice the telecine's varispeed in fps, rounded to the nearest hundredth fps. The alphanumeric film reel ID The total edit length as an absolute count of film frames instead of key+frames as in record 200 format. This simplifies conversion software with regard to long and short feet phasing as in 3 perf. Total edit length (i.e., duration, expressed as length). "Key" a string constant.

13-17

19-26 28-36

8 9

38-46 48-50

9 3

FLEx EDL Exchange Protocol Version 1005

Page 31

52-56

The film manufacturer, if known (can be derived from KeyKode) EASTM Eastman Kodak Company FUJI Fuji Film Company AGFA Agfa-Gevaert N.V. <##> [00,04-99] an unassigned manufacturer code <blank> not known KeyKode number prefix and emulsion; or edge code prefix if known. Examples: KJ123456 5296 Emulsion, KeyKode prefix 123456

58-65

96123456 same as above, refer to Eastman Kodak KeyKode handout for more information. For conventional key numbers, this field holds any alphabetic prefix characters found ahead of the key number, or is blank. 67-75 9 KeyKode or conventional key number in-point, with frame offset to exact first frame of imagery transferred in edit. "p" A string constant; abbreviation for "perf" Expanded perf range [1:nn] where nn is the highest perf pertaining to the film gauge in use. In 3 perf, p1 means the prior reference dot appears a the top (head) of the reference frame. p2 means the prior reference dot appears at the middle of the reference frame. p3 means the prior reference dot appears a the bottom (tail) of the frame. For any gauge, p , or p?, or p?? shall indicate the perf relationship is unknown. Notes: This record has been added to support 3 perf and various other film types. Use this record in replacement of code record 200 for all new film types. Parsing software should look for either record type. Record 201 could be made to replace record 200 in the future. The transport user name is optional. Best image consistency is often obtained when retransferring material on the same telecine as was used for the original transfer. "Length" rather than "duration" terminology is specifically used to refer to the edit interval since the meaning of the latter term is ambiguous when transferring at other than "standard" speed. The edit-in

77 78-79

1 1

FLEx EDL Exchange Protocol Version 1005

Page 32

position is the first frame of imagery transferred to tape; the edit length shows the total length transferred to tape, regardless of the speed of the film. Either feet+frames, or half feet&frames notation may appear in the FLEx record. will be expressed in whole film counts. The length

KeyKode barcodes encode the film manufacturer with a 2 digit number, and the emulsion with another 2 digit number. Eastman Kodak has defined the first three KeyKode manufacturer name codes; others are pending. Also, they have defined emulsion codes for Eastman film stocks; when these are known, they are displayed alphabetically, just as a human will read them off the edge of the film later during conforming ("KJ" in the first example). FLEx shows these just ahead of the 6 digit prefix. When the stock assignment for a particular code is not known (as is currently the case for the other manufacturers), the two KeyKode emulsion digits appear ahead of the 6 digit prefix as in the second example. Record (200) is intended for 16 mm and normal 4 perf 35mm. For other film types and perf types, use record 201. Each event may contain either a record 200 or record 201 but not both.

FLEx EDL Exchange Protocol Version 1005

Page 33

VTR EDIT DATA RECORD ID Code 300 Usage: Mandatory if one or more VTRs participate in edit. Defines VTR's user name, speed, reel assignment, edit mode, edit point and duration (tape length, not running time), and time code reader used. A #300 record appears for each recorder or player participating in the edit. Each transport may have its own edit mode. The default tracks recorded on during the edit are as shown in the #100 data record (see above). If a #101 record is present with a reel assignment matching a #300 record, that VTR's edit tracks are overridden by the #101 record and do not follow the default track selections given in record 100. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 300 aaaaa <ed_mode> aaaaaaaa At hh:mm:ss:ff.f For hh:mm:ss:ff.f Using <tc_mode>

Examples:
300 VTR-1 Assemble 001 300 VTR-2 06.00 fps 022 At 01:12:00:04.0 For 00:00:37:15.0 Using VITC At 02;00;00;00,0 For Using TIMER 1

Interpretation VTR-2 is playing back a music video segment from reel 022 at 6 frames/sec. The first frame of video participating in the edit is at 2 hours, drop-frame, based on tape timer 1. The actual amount of material used at this non-standard speed was not calculated, so the duration is blank (it need not be). VTR-1 is recording the video via an assemble edit, and is using VITC time code (presumably in auto-regen). The true edit length (duration) is always shown on recorders, in this case in non-drop format. Although the recorder reel ID could be up to 8 alphanumeric characters, the telecine colorist is aware that the material will be off-line edited on a edit system that only permits 3 digit reel assignments. Field Definitions: Index Length Description 00-02 04-08 10-18 3 5 9 Record ID Code 300 The user's transport name, if any. The VTR's edit mode, one of the following strings: "Assemble " A recorder performing an assemble edit "Insert " A recorder performing an insert edit "Hard Rec " A recorder performing a "crash recording" "##.## " A playback; at speed shown in frames/sec "##.## Fps" A playback; at speed shown in frames/sec

FLEx EDL Exchange Protocol Version 1005

Page 34

"##.## Rec" A disk recorder; " " " " " <spaces> A playback at standard speed "Playback " A playback at standard speed (In all the above, recall that FLEx is case insensitive) 20-27 29-30 32-44 46-48 50-62 64-68 70-78 8 2 13 3 13 5 9 The VTR's reel assignment. "At" A string literal constant. The edit in-point time code. "For" A string literal constant. The length of the edit, if known else blank. "Using" A string literal constant. The time code source; one of the following: <spaces> Unknown; unspecified. "LTC " Longitudinal time code "LTC USER " Longitudinal user bits "VITC " Vertical interval time code "VITC USER" Vertical interval user bits "ASTC " DVR Vertical interval time code "ASTC USER" DVR Vertical interval user bits "TIMER x " Tape timer; x='1' or '2' "VITC AUTO" VTR is auto-selecting LTC/VITC "LTC TIMER" Editor is jamming timer 1 to LTC (In all the above, recall that FLEx is case insensitive) Additional values pending--for example, the VITC's line number.

Notes: The last mode implies the editing system is selectively reading the LTC track, and presetting the transport's TIMER-1 prior to start of pre-roll so as to extrapolate from time code during long prerolls for which insufficient time code was originally recorded. This is a frequent problem with 1/4" audio reels. Longitudinal and VITC tracks are being used with increasing sophistication, often carrying dissimilar data. For example, user bits may carry production "sound sync" time code or another useful time code reference signal. FLEx specifies the source of edit time code for this reason.

FLEx EDL Exchange Protocol Version 1005

Page 35

ATR EDIT DATA RECORD ID Code 400 Usage: Mandatory if one or more ATRs participate in edit. Essentially the same as data record type 300, but for audio transports. Defines ATR's user name, speed, reel assignment, edit mode, edit point and duration (tape length, not running time), and time code reader used. A #400 record appears for each recorder and player participating in the edit. Each transport may have its own edit mode. The default audio tracks recorded on during the edit are as shown in the #100 data record (see above). If a #101 record is present with a reel assignment matching a #400 record, that ATR's edit tracks are overridden by the #101 record and do not follow the default track selections. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 400 aaaaa <ed_mode> aaaaaaaa At hh:mm:ss:ff.f For hh:mm:ss:ff.f Using <tc_mode>

Examples:
400 SOUND Insert 400 Nagra 025B At 01:12:00:04.0 For 00:05:37:15.0 Using LTC Ambience At 06:15:00:25.0 For 00:05:37:15.0 Using LTC

Field Definitions: Index Length Description 00-02 04-08 10-18 3 5 9 Record ID Code 400 The user's transport name, if any. The ATR's edit mode, one of the following strings: "Assemble " A recorder performing an assemble edit "Insert " A recorder performing an insert edit (For most ATRs these edit modes are equivalent) "Hard Rec " A recorder performing a "crash recording" "##.## " A playback; at speed shown in frames/sec "##.## Fps" A playback; at speed shown in frames/sec <spaces> A playback at standard speed "Playback " A playback at standard speed (In all the above, recall that FLEx is case insensitive) The ATR's reel assignment. "At" A string literal constant.

20-27 29-30

8 2

FLEx EDL Exchange Protocol Version 1005

Page 36

32-44 46-48 50-62 64-68 70-78

13 3 13 5 9

The edit in-point time code. "For" A string literal constant. The length of the edit, if known else blank. "Using" A string literal constant. The time code source; one of the following: <spaces> Unknown; unspecified. "LTC " Longitudinal time code "LTC USER " Longitudinal user bits "VITC " Vertical interval time code "VITC USER" Vertical interval user bits "TIMER x " Tape timer; x='1' or '2' "VITC AUTO" ATR is auto-selecting LTC/VITC "LTC TIMER" Editor is jamming timer 1 to LTC (In all the above, recall that FLEx is case insensitive)

Notes: Use of VITC with a transport identified in the FLEx listing as an ATR may imply a VTR was used purely as an audio transport (e.g. U-Matic PCM, etc.). The last mode implies the editing system is selectively reading the LTC track, and presetting the transport's TIMER-1 prior to start of pre-roll so as to extrapolate from time code during long prerolls for which insufficient time code was originally recorded. This is a frequent problem with 1/4" audio reels.

FLEx EDL Exchange Protocol Version 1005

Page 37

VIDEO SWITCHER TRANSITION EFFECTS DATA RECORD ID Code 500 Usage: Mandatory if one or more switcher effects during edit. Defines the behavior of one or more switchers during the edit. Each switcher has its own #500 record; each may have multiple #500 records in a single edit, if multiple delayed switcher transitions are desired. In telecine, multiple switchers are increasingly common when multi-format transfers are made simultaneously. For instance, a component and composite combination, or an analog and digital combination may be used simultaneously. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 500 aaaaa ## <effect> aaaaaaaa to aaaaaaaa Fx #### Rate ### Delay hh:mm:ss:ff.f

Examples:
500 500 500 500 GV100 RGB TENXL GV200 01 02 8 1 Wipe REEL023 Dissolve BLACK Cut Register 123 to to to to Reel023B 026 121C 001A Fx -023 Rate 030 Fx Rate 060 Fx Rate Fx 2 Rate 15 Delay Delay 00:00:05:00.0 Delay 00:01:00:00.0 Delay 00;00;56;12,1

Field Definitions: Index Length Description 00-02 04-08 10-11 3 5 2 Record ID Code 500 The user's switcher name, if any. Unique switcher ID number, range [00-99]; defines which switcher performs the effect. The type of effect to perform; one of: "Dissolve" A fade transition, see Rate for rate "Wipe " A wipe transition, see Fx for wipe code "Cut " A cut "Register" A switcher register recall, Fx holds the register number to recall. (other values pending) The "from" source reel assignment, output before the effect. If the edit is associated with a switcher crosspoint lacking a transport, the reel must still be defined. Common assignments include "BLACK" "AUX" "BARS" "SLATE", per example 2. "to" A string literal constant.

13-20

22-29

31-32

FLEx EDL Exchange Protocol Version 1005

Page 38

34-41

The "to" source reel assignment, output after the effect. Non-transport crosspoints must be defined per "from" above. "Fx" A string literal constant. Wipe code (see notes) or switcher effects register number. "Rate" A string literal constant. The transition rate expressed as a video frame count [000-999]. "Delay" A string literal constant. The delay between the start of the edit and start of effect.

43-44 46-49 51-54 56-58 60-64 66-78

2 4 4 3 5 13

Notes: Refer to SMPTE document RP 146-1987 for the suggested standard assignment of wipe patterns to wipe codes. Negative wipe codes result in reversal of the normal effect transition direction. A single FLEx edit may contain any number of #500 switcher data records. Edit systems that intend to auto-conform from FLEx files should read and pre-process all effects records before preroll begins. Do not assume #500 records are sorted by ascending transition delay times, although this is the suggested manner in which to produce FLEx output files when a single switcher is used. For multiple switcher configurations, other sorting priorities may appear. For example, the records may be sorted by switcher, then delay. Crosspoint number assignments are not specified by this data record. It is assumed that the user has established crosspoint assignments to reels prior to starting auto-assembly, or that the edit system has saved the crosspoint assignment array in the FLEx file by using a custom 900 series data record.

FLEx EDL Exchange Protocol Version 1005

Page 39

AUDIO MIXER TRANSITION EFFECTS DATA RECORD ID Code 600 Usage: Mandatory if one or more audio mixer effects during edit. Defines the behavior of one or more mixers during the edit. Each mixer has its own #600 record; each may have multiple #600 records in a single edit, if multiple delayed mixer transitions are desired. This record type is similar to record type 500. Format:
0 1 2 3 4 5 6 7 01234567890123456789012345678901234567890123456789012345678901234567890123456789 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 600 aaaaa ## <effect> aaaaaaaa to aaaaaaaa Fx #### Rate ### Delay hh:mm:ss:ff.f

Examples:
600 AMX 01 Register REEL023 to Reel023B Fx 8 Rate 030 Delay

Field Definitions: (refer also to the definition of record type 500, above) Index Length Description 00-02 04-08 10-11 13-20 3 5 2 8 Record ID Code 600 The user's mixer name, if any. Unique mixer ID number, range [00-99]; defines which mixer performs the effect. The type of effect to perform; one of: "Dissolve" A fade transition, see Rate for rate "Cut " A cut "Register" A mixer register recall, Fx holds the register number to recall (other values pending) The "from" source reel assignment, output before the effect. "to" A string literal constant. The "to" source reel assignment, output after the effect. "Fx" A string literal constant. Mixer effects register number. "Rate" A string literal constant.

22-29 31-32 34-41 43-44 46-49 51-54

8 2 8 2 4 4

FLEx EDL Exchange Protocol Version 1005

Page 40

56-58 60-64 66-78

3 5 13

The transition rate expressed as a video frame count [000-999]. "Delay" A string literal constant. The delay between the start of the edit and start of effect.

Notes: A single FLEx edit may contain any number of #600 mixer data records. Edit systems that intend to auto-conform from FLEx files should read and pre-process all effects records before preroll begins. Do not assume #600 records are sorted by ascending transition delay times, although this is the suggested manner in which to produce FLEx output files when a single mixer is used. For multiple mixer configurations, other sorting priorities may be easier to interpret. For example, the records may be sorted by mixer, then delay. Crosspoint number, mixes, and fader group assignments are not specified by this data record. It is assumed that the user has established such assignments to reels prior to starting autoassembly, or that the edit system has saved the assignment array in the FLEx file by using a 900 series data record.

FLEx EDL Exchange Protocol Version 1005

Page 41

APPENDIX A INTERPRETING TLC'S FLEx FILES FOR DAILIES LOGGING Many of the data records TLC writes to disk can be ignored when extracting film-tape relationships from the FLEx file. For example, a minimum implementation of a program to extract the information to conform film elements to an EDL frame accurately need only examine the following record types for the following specific information: For each edit; i.e., for each record 100, and following records up to the next record 100: Record Column 100 Description

09-12 The current edit number 35-36 The SMPTE 3:2 pulldown relationship, if expected 38-41 The video standard; for appropriate time code processing (the other fields in record 100 can be assumed not relevant during logging, in the simplest logging schemes.) 66-78 The production time code representing sound sync to picture, if sound sync was performed on the TLC (if not, blanks). (the other fields in records 120 may be very helpful to include.) 10-11 The film gauge. Use 201 for 3 perf and extended perf types 19-26 The film reel being transferred to tape by this edit {ignoring any track selection or switcher effect to the contrary.) 28-36 The first frame transferred to tape by this edit. (The "relative" position from the start of the film reel.) 38-46 The edit length (duration), in film notation.

110

200

Also, TLC names the telecine "IMAGE" in columns 04-08 during dailies transfers. If KeyKode or other edge code numbers were logged: 58-65 The KeyKode reel prefix associated with the film reel. 67-75 The KeyKode in-frame of the edit. 10-18 Identifies a record VTR, then: 20-27 The tape reel assignment of the recorder. (Later used in off-line editing as a playback reel ID.) 32-44 The first time code frame recorded on during the edit. 50-62 The length of the edit, expressed as a time code duration.

200

300

The recorder's edit length should be assumed to take precedence if it is not equivalent to the telecine's edit length. 400 10-18 Identifies a playback ATR, then:

FLEx EDL Exchange Protocol Version 1005

Page 42

20-27 The tape reel assignment of the ATR. 32-44 The time code frame representing sound sync to telecine 50-62 The length of the edit, expressed as a time code duration.

Also, TLC names the audio transport "SOUND" in columns 04-08 during dailies transfers involving sound sync and copies the in-point time code to the slate data record 110 (above). Obviously, an enhanced logging process can support far more information, such as session heading data, A/V track selection to individual recorders and switcher signal routing, slate information, script notes, etc. Note: To facilitate downstream data processing, in all numeric data fields, film and time code entries, TLC includes leading zeroes so that the positions of all punctuation characters are fixed for all records of the same type. Software implementers should expect drop or non-drop, and feet or half-feet formats to be present. Punctuation should be examined for each film and tape number processed, and the appropriate conversion routine executed. In the event TLC doesn't know what film or tape number to use, the data field is all <spaces>. For instance, if sound sync "production" time code was not defined during the transfer edits, that field in record 110 remains blank; it will not hold "00:00:00:00.0". For all field types, TLC left-justifies all data entries, so that they appear next to fixed text labels that may be associated with them, making printouts easier to read. TLC writes its ASCII FLEx output to. MS-DOS type media, to filename.FLX, where "filename" is user-determined at session time. Generally, TLC uses feet+frames format numbering on 35mm stock, and half-feet format on 16mm stock, so as to correspond to the conventions used by the Eastman KeyKode numbering technology. It is a simple matter in (your) software to convert between these formats, if needed. Some FLEx lists may be "dirty." That is, one edit's out-point will not generally coincide with the next edit's in-point, unless the colorist has taken pains to "clean the list." Later versions of TLC software provides assistance in maintaining this relationship. In the event the list has not been cleaned, it is best to go by each edit's VTR in-point to know precisely where that material can be found on tape. Since it is almost universally the case that colorists assemble-edit their "select takes" to tape sequentially, the differences between in-points of a FLEx list sorted by VTR in-points yields the duration of each edit. Styles differ, but each edit is generally "slateto-slate" or "flash-to-flash," thus having plenty of "handle" around the critical material.

FLEx EDL Exchange Protocol Version 1005

Page 43

FLEx EDL Exchange Protocol Version 1005

Page 44

APPENDIX B Manufacturers ID Codes Note Manufacturers ID codes as of 04-21-95. ID codes are handled by FLEx administrator. Contact the name at the top of this document for new assignments. FLEx Record Code 000. Numeric [000-999]: Manufacturer's unique ID: 000 - Reserved for future SMPTE standard FLEx protocol 001 - The Adelaide Works, Inc. 002 - Time Logic, Inc. 003 - Cinema Products, Inc. 004 - Research in Motion, Inc. 005 - Ultralogic Systems, Inc. 006 - Ediflex Systems, Inc. 007 - CMX, Inc. 008 - Montage, Inc. 009 - Editdroid (Lucasfilm Ltd.) 010 - Ampex, Inc. 011 - Grass Valley Group, Inc. 012 - Sony Broadcast, Inc. 013 - Avid 014 - Laser Pacific Media Corp. 015 - The Post Group, Inc. 016 - Evertz MicroSystems, Inc. 017 - Eastman Kodak Company, Inc. 018 - Lightworks, Inc. 019 - Editing Technologies Corporation 020 - Excaliber, Ltd. 021 - AATON Des Autres, Inc. 022 - da Vinci Systems 023 - Cinema Software Corp. 024 - Ansley & Associates, Inc. 025 - Soundmaster Group 026 Studio Audio and Video, UK 999 or <spaces> - other or unspecified

FLEx EDL Exchange Protocol Version 1005

Page 45

APPENDIX C REVISION HISTORY AND DETAIL

Jan-31-91 Mar-13-92

FLEx V1000 Initial release; doc. rev C. FLEx V1001 Changes to the following record types: #100 Altered "Frame" to "Field"; added field-ID value; remaining fields shifted right one column. #300, 400 Added "VITC AUTO" and "LTC TIMER" modes.

#500 Clarified discussion of non-transport reel Ids. (no change to record format). Oct-02-93 FLEx V1002 Changes to the following record types: #000 Updated list of FLEx recognized companies/products. (no change to record format). (Misc. corrections and clarifications were also made.) Nov-02-93 FLEx V1003 Changes to the following record types: #000 Updated list of FLEx recognized companies/products. (no change to record format). Mar-06-95 FLEx V1004 Changes to the following record types: #000 Updated list of FLEx recognized companies/products. Added da Vinci company code and copyrights. #201 Defined new record type to accommodate various perf modes. Mainly 3 perf. Either record 200 or 201 may be found. Jan-01-96 FLEx V1005 Defined New Record Types. #201 Corrected typo, no change in definition. --- end ---

You might also like