1、 Copyright 2014 by THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 3 Barker Avenue, White Plains, NY 10601 (914) 761-1100 Approved May 10, 2014 Table of Contents Page Foreword . 2 Intellectual Property 2 Introduction 2 1 Scope . 3 2 Conformance Notation . 3 3 Normative References . 3 4 Synchr
2、onization Signal Modulation Function . 3 5 Bit Stream Syntax 5 5.1 Semantics of Syntax Specification . 5 5.1.1 Syntax of SyncPacket . 6 5.2 Description of Bit Stream Elements . 6 5.2.1 SyncPacket Fields 6 6 Sample and Edit Unit Alignment 9 6.1 Sync Signal Generated at the Time of Packaging . 9 6.1.1
3、 SyncWord alignment . 9 6.1.2 EditUnitIndex alignment 9 6.2 Sync Signal Generated at the Time of Playback . 9 6.2.1 SyncWord alignment . 9 6.2.2 EditUnitIndex alignment 9 6.2.3 UUID SubIndex alignment 9 7 UUID Value 9 Page 1 of 9 pages SMPTE ST 430-12:2014 SMPTE STANDARD D-Cinema Operations FSK Sync
4、hronization Signal SMPTE ST 430-12:2014 Page 2 of 9 pages Foreword SMPTE (the Society of Motion Picture and Television Engineers) is an internationally-recognized standards developing organization. Headquartered and incorporated in the United States of America, SMPTE has members in over 80 countries
5、 on six continents. SMPTEs Engineering Documents, including Standards, Recommended Practices, and Engineering Guidelines, are prepared by SMPTEs Technology Committees. Participation in these Committees is open to all with a bona fide interest in their work. SMPTE cooperates closely with other standa
6、rds-developing organizations, including ISO, IEC and ITU. SMPTE Engineering Documents are drafted in accordance with the rules given in its Standards Operations Manual. SMPTE ST 430-12 was prepared by Technology Committee 21DC. Intellectual Property At the time of publication no notice had been rece
7、ived by SMPTE claiming patent rights essential to the implementation of this Standard. However, attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. SMPTE shall not be held responsible for identifying any or all such patent rights. Int
8、roduction This section is entirely informative and does not form an integral part of this Engineering Document. Synchronization of Digital Cinema assets is typically accomplished within the media block. There are new applications which decode auxiliary data in a device external to the media block. T
9、his standard describes a signal that can be used to externally synchronize auxiliary data to a picture track in a Digital Cinema Composition. The signal is designed to be output from the Audio Media Block and relies on a known synchronization between the audio and picture at this point. SMPTE ST 430
10、-12:2014 Page 3 of 9 pages 1 Scope This standard describes the modulation and protocol for transmitting a synchronization signal over a digital audio link. The methods by which the synchronization signal is packaged or generated or used to establish synchronization are outside the scope of this spec
11、ification. 2 Conformance Notation Normative text is text that describes elements of the design that are indispensable or contains the conformance language keywords: “shall“, “should“, or “may“. Informative text is text that is potentially helpful to the user, but not indispensable, and can be remove
12、d, changed, or added editorially without affecting interoperability. Informative text does not contain any conformance keywords. All text in this document is, by default, normative, except: the Introduction, any section explicitly labeled as “Informative“ or individual paragraphs that start with “No
13、te:” The keywords “shall“ and “shall not“ indicate requirements strictly to be followed in order to conform to the document and from which no deviation is permitted. The keywords, “should“ and “should not“ indicate that, among several possibilities, one is recommended as particularly suitable, witho
14、ut mentioning or excluding others; or that a certain course of action is preferred but not necessarily required; or that (in the negative form) a certain possibility or course of action is deprecated but not prohibited. The keywords “may“ and “need not“ indicate courses of action permissible within
15、the limits of the document. The keyword “reserved” indicates a provision that is not defined at this time, shall not be used, and may be defined in the future. The keyword “forbidden” indicates “reserved” and in addition indicates that the provision will never be defined in the future. A conformant
16、implementation according to this document is one that includes all mandatory provisions (“shall“) and, if implemented, all recommended provisions (“should“) as described. A conformant implementation need not implement optional provisions (“may“) and need not implement them as described. Unless other
17、wise specified, the order of precedence of the types of normative information in this document shall be as follows: Normative prose shall be the authoritative definition; Tables shall be next; followed by formal languages; then figures; and then any other language forms. 3 Normative References SMPTE
18、 ST 429-3 SMPTE ST 429-3:2007, D-Cinema Packaging Sound and Picture Track File 4 Synchronization Signal Modulation Function The modulation scheme used to convert digital data to a digital audio signal using Frequency Shift Keying (FSK) is shown in Figure 1. Bits shall be delivered at a constant rate
19、 using one symbol per bit. Digital 0 shall be transmitted as a half sine cycle at 6 kHz. A Digital 1 shall be transmitted by a full sine cycle at 12 kHz. The polarity of each symbol shall depend on the previous symbol. This is done to avoid discontinuities in the slope of the modulation signal. For
20、example, the 1st bit in Figure 1, digital zero, is coded using a positive going half-cycle, while the 11th bit, digital zero, is coded using a negative going half-cycle. SMPTE ST 430-12:2014 Page 4 of 9 pages The modulated audio shall be sampled 4 or 8 times per symbol for 48-kHz and 96-kHz sample r
21、ates, respectively. Each symbol shall be sampled symmetrically; i.e. neither the signal peak nor the zero crossing point is a sample point. See Figure 2. The peak level of the signal is defined to be 0.1 (Full Scale = +/- 1.0)1. The actual sample values shall be those defined in Figure 2. (a) Data (
22、alternate shading shows symbol duration) (b) FSK Signal Figure 1 Example data stream (a), and corresponding FSK modulation signal (b). Modulation signal plot (b) shows sample points for a 48 kHz sample rate. 1 The value 0.1 is approximate. The actual value will depend on the sample depth. SMPTE ST 4
23、30-12:2014 Page 5 of 9 pages (a) 48 kHz S y mb o l0 ( + ) 0 . 0 2 0 0 . 0 5 6 0 . 0 8 3 0 . 0 9 8 0 . 0 9 8 0 . 0 8 3 0 . 0 5 6 0 . 0 2 00 ( - ) - 0 . 0 2 0 - 0 . 0 5 6 - 0 . 0 8 3 - 0 . 0 9 8 - 0 . 0 9 8 - 0 . 0 8 3 - 0 . 0 5 6 - 0 . 0 2 01 ( + ) 0 . 0 3 8 0 . 0 9 2 0 . 0 9 2 0 . 0 3 8 - 0 . 0 3 8
24、- 0 . 0 9 2 - 0 . 0 9 2 - 0 . 0 3 81 ( - ) - 0 . 0 3 8 - 0 . 0 9 2 - 0 . 0 9 2 - 0 . 0 3 8 0 . 0 3 8 0 . 0 9 2 0 . 0 9 2 0 . 0 3 8S a mp l e V a l u e(b) 96 kHz Figure 2 Sample values for digital FSK signal. Table values are approximate. Implementations shall match the table values plus or minus one
25、 LSB. 5 Bit Stream Syntax 5.1 Semantics of Syntax Specification The following pseudo code describes the order of arrival of information within the synchronization bit stream. The pseudo code is roughly based on C language syntax, but simplified for ease of reading. Field elements contained in the bi
26、t stream are designated by bold face font. All elements in the bit stream shall be ordered from MSB to LSB. S y mb o l0 ( + ) 0 . 0 3 8 0 . 0 9 2 0 . 0 9 2 0 . 0 3 80 ( - ) - 0 . 0 3 8 - 0 . 0 9 2 - 0 . 0 9 2 - 0 . 0 3 81 ( + ) 0 . 0 7 1 0 . 0 7 1 - 0 . 0 7 1 - 0 . 0 7 11 ( - ) - 0 . 0 7 1 - 0 . 0 7
27、 1 0 . 0 7 1 0 . 0 7 1S a mp l e V a l u eSMPTE ST 430-12:2014 Page 6 of 9 pages 5.1.1 Syntax of SyncPacket Syntax Word Size (bits) SyncPacket() SyncWord . 16 EditRate 4 Reserved . 2 UUIDSubIndex 2 UUIDSub . 32 EditUnitIndex 24 CRC . 16 Reserved . 4 RemBits . Variable /* end of SyncPacket() */ 5.2 D
28、escription of Bit Stream Elements 5.2.1 SyncPacket Fields 5.2.1.1 SyncWord synchronization word 16 bits The SyncWord shall be 0x4D56 or 0100 1101 0101 0110. 5.2.1.2 EditRate edit rate code 4 bits The EditRate code specifies the edit rate of the picture associated with the auxiliary data. This data i
29、s used by the decoder to determine other parameters that are dependent on the edit rate. The EditRate code is specified in Table 1. Table 1 Conversion of EditRate Code to Edit Rates EditRate Code Edit Rate 0x0 24/1 0x1 25/1 0x2 30/1 0x3 48/1 0x4 50/1 0x5 60/1 0x6 96/1 0x7 100/1 0x8 120/1 0x9 0xF RES
30、ERVED SMPTE ST 430-12:2014 Page 7 of 9 pages An edit unit may contain multiple synchronization packets as specified in Table 2. Table 2 Number of Synchronization Packets per Edit Unit Edit Rate Number of Packets 24/1 4 25/1 4 30/1 4 48/1 2 50/1 2 60/1 2 96/1 1 100/1 1 120/1 1 The UUID shall be divid
31、ed into 4 successive synchronization packets (see Section 5.2.1.3). The time required to obtain the complete UUID is dependent on the edit rate as shown in Table 3. Table 3 Time Required to Obtain Complete UUID versus Edit Rate Edit Rate Time Required to Obtain Complete UUID (ms) 24/1 41.67 25/1 40
32、30/1 33.33 48/1 41.67 50/1 40 60/1 33.33 96/1 41.67 100/1 40 120/1 33.33 5.2.1.3 UUIDSubIndex UUID sub portion index code 2 bits The UUIDSubIndex code specifies which sub portion of the UUID is being transmitted in the current synchronization packet. The UUID, which is a 128 bit number, shall be spl
33、it across 4 successive synchronization packets. A synchronization packet with a UUIDSubIndex of 0 shall contain the most significant 32 bits of the UUID. A synchronization packet with a UUIDSubIndex of 3 shall contain the least significant bits of the UUID. See Section 7 for the definition of the UU
34、ID value. The UUIDSubIndex of 0 (zero) shall indicate the beginning of an edit unit for all edit rates. The UUIDSubindex of 2 shall indicate the beginning of an edit unit for edit rates of 48 fps or higher. The UUIDSubindex of 1 or 3 shall indicate the beginning of an edit unit for edit rates of 96
35、fps or higher. 5.2.1.4 UUIDSub UUID sub portion code 32 bits The UUIDSub code is the sub portion of the UUID carried in the current synchronization packet. SMPTE ST 430-12:2014 Page 8 of 9 pages 5.2.1.5 EditUnitIndex Edit Unit index code 24 bits The EditUnitIndex code is the Edit Unit index ranging
36、from 0 to 224 1. 5.2.1.6 CRC cyclic redundancy check 16 bits The CRC code is transmitted after the synchronization information for error detection in the transmission path. The CRC shall include all the bits in the SyncPacket up to and including the EditUnitIndex. The following generator polynomial
37、is used to generate each of the 16-bit CRC words: x16 + x12 + x5 + 1. The CRC calculation may be implemented by one of several standard techniques. A convenient hardware implementation is a linear feedback shift register (LFSR). An example of an LFSR circuit for the above generator polynomial is sho
38、wn in Figure 3. Figure 3 CRC Calculation Computing the CRC with the above circuit consists of resetting all registers to zero and then shifting the data bits serially into the circuit in the order in which they appear in the data stream. 5.2.1.7 Reserved 4 bits The reserved bits are reserved for fut
39、ure use. They shall be set to zero. 5.2.1.8 RemBits remaining bits variable bits The RemBits is a variable number of bits to pad out the packet such that the packets align with edit unit boundaries. The number of bits used in RemBits is dependent on the EditRate code as shown in Table 4. Bits in thi
40、s field shall be set to zero. Table 4 Remaining Bits versus EditRate Code EditRate Code Remaining Bits (bits) 0x0 25 0x1 20 0x2 0 0x3 25 0x4 20 0x5 0 0x6 25 0x7 20 0x8 0 SMPTE ST 430-12:2014 Page 9 of 9 pages 6 Sample and Edit Unit Alignment The signal may be generated at the time of packaging or ge
41、nerated at the time of playback. Depending on the point of generation, the signal shall be generated with the following sample and Edit Unit alignment. 6.1 Sync Signal Generated at the Time of Packaging 6.1.1 SyncWord alignment The first sample of the SyncWord shall be packaged to align with the fir
42、st audio sample of the Edit Unit. 6.1.2 EditUnitIndex alignment The first edit unit of the synchronization signal packaged in the audio track file shall have a EditUnitIndex of zero. 6.2 Sync Signal Generated at the Time of Playback 6.2.1 SyncWord alignment The first sample of the SyncWord shall be
43、generated to align with the first audio sample of the Edit Unit. 6.2.2 EditUnitIndex alignment The EditUnitIndex of a synchronization signal generated at the media block shall match the Edit Unit of the Main Audio track file being reproduced. 6.2.3 UUID SubIndex alignment The first generated UUIDSub
44、index shall have a value of 0. 7 UUID Value The UUID value carried in the synchronization signal shall be the UUID associated with the Main Audio track file where the synchronization signal is embedded. If the synchronization signal is generated at playback time, the UUID shall be the UUID of the current Main Audio track file. See SMPTE ST 429-3 for how the UUID is derived from the Package UID of the Main Audio track file.