1、 The attached document is a Registered Disclosure Document prepared by the proponent identified below. It has been examined by the appropriate SMPTE Technology Committee and is believed to contain adequate information to satisfy the objectives defined in the Scope, and to be technically consistent.
2、This document is NOT a Standard, Recommended Practice or Engineering Guideline, and does NOT imply a finding or representation of the Society. Errors in this document should be reported to the proponent identified below, with a copy to engsmpte.org. All other inquiries in respect of this document, i
3、ncluding inquiries as to intellectual property requirements that may be attached to use of the disclosed technology, should be addressed to the proponent identified below. Every attempt has been made to ensure that the information contained in this document is accurate. Dolby Laboratories is, howeve
4、r, not responsible for the action, effect, consequences, etc. of any non-Dolby implementation of any device(s) based on this document. If any errors, inconsistencies, or any points that require clarification are found, contact Dolby Laboratories at the address below as soon as possible. Proponent co
5、ntact information: Dolby Laboratories Inc. San Francisco Broadcast Group 100 Potrero Avenue San Francisco CA 94103-4813 Page 1 of 53 pages RDD 6-2008 Copyright 2008 by THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 3 Barker Avenue, White Plains, NY 10601 (914) 761-1100 Approved March 12, 20
6、08 Corrections to Tables 7-12, 7-13 and 7-14 made on March 6, 2009 SMPTE REGISTERED DISCLOSURE DOCUMENT for Television Description and Guide to the Use of the DolbyE Audio Metadata Serial BitstreamRDD 6-2008 Page 2 of 53 pages Table of Contents 1 Scope. 3 2 Related Documents . 3 3 Introduction 3 4 S
7、erial Metadata Stream Structure and Timing on a Serial Data Link 6 4.1 Structure on an Asychronous Serial Link. 6 4.2 Metadata Frame Timing Requirements 8 5 Metadata Frame Structure.10 5.1 Metadata Subframe Field Descriptions10 5.1.1 sync_segment Field Descriptions11 5.1.2 data_segment Field Descrip
8、tions 13 5.2 Metadata Frame Field Description.14 6 Dolby E Data Segment Payload Structure 15 6.1 Dolby E Complete Metadata Data Segment 15 6.1.1 Syntax Descriptions .15 6.1.2 Field Descriptions 16 6.2 Dolby E Essential Metadata Data Segment.21 6.2.1 Syntax Description .21 6.2.2 Field Descriptions 21
9、 7 Dolby Digital Data Segment Payload Structure.23 7.1 Dolby Digital Complete Program Metadata Data Segment with Extended BSI Support .23 7.1.1 Syntax Description.23 7.1.2 Field Descriptions 24 7.2 Dolby Digital Complete Program Metadata Data Segment No Extended BSI Support 38 7.2.1 Syntax Descripti
10、on.39 7.2.2 Field Descriptions 39 7.3 Dolby Digital Essential Program Metadata Data Segment 41 7.3.1 Syntax Descriptions .41 7.3.2 Field Descriptions 41 Annex A: Dynamic Range Control44 A.1 Dialogue Normalization44 A.1.1 Overview44 A.1.2 Example.44 A.2 Dynamic Range Compression.45 A.2.1 Overview45 A
11、.2.2 Example.45 A.2.3 Detailed Implementation46 A.3 Heavy Compression; compr, compr2 47 A.3.1 Overview47 A.3.2 Detailed Implementation48 Annex B: Dolby E Metadata Serial Protocol Chart.49 RDD 6-2008 Page 3 of 53 pages 1 Scope Dolby Laboratories has developed a serial communication protocol that is u
12、sed to transfer audio metadata between various products manufactured by Dolby. This document describes the types and function of the various metadata fields carried in the serial bitstream so that others interested in communicating with various DolbyE and Dolby Digital audio codecs and associated eq
13、uipment may do so. Each metadata element is classified as either a Professional or Consumer type of metadata. The Reserved elements are meaningless to the user but must not be changed, and must be passed on to preserve the structure and timing of the bitstream. Each of the Professional or Consumer e
14、lements is further classified as either a Read Only or as a Read else data_segment() /*end of metadata subframe */ RDD 6-2008 Page 11 of 53 pages 5.1.1 sync_segment Field Descriptions Table 5-3 Sync Segment Syntax Syntax word size (bits)sync_segment() start_of_subframe_sync_word 16 revision_id .4 or
15、iginator_id 8 originator_address .16 frame_count.16 Reserved 12 start_of_subframe_sync_word Professional Read Only Word size: 16 bits Valid range: See Table 5-4 The start_of_subframe_sync_word is a 16-bit field used to indicate the beginning of a metadata subframe, allowing devices to easily synchro
16、nize to any of the subframes in the metadata bitstream. The sync word for the first metadata subframe also indicates the beginning of the metadata frame, as shown in Table 5-4. Table 5-4 Valid Start of Subframe Sync Words Subframe sync_words Value Sync_word (first subframe) 0xCFFC Sync_word (second
17、subframe) 0x3FF3 revision_id Professional Read Only Word size: 4 bits Valid range: 0-15 The revision_id field indicates the revision level of the metadata subframe syntax. If a metadata receiver is presented with a revision id higher than it recognizes, it should abandon further parsing of the bitst
18、ream for the remaining metadata subframe. For the current version of the metadata frame syntax, this field must be set to 0. originator_id Professional Read and Write Word size: 8 bits Valid range: See Table 5-5 RDD 6-2008 Page 12 of 53 pages The originator_id field (Table 5-5) may identify the manu
19、facturer of the of the device (or software) that created the metadata frame. This allows manufacturer specific data to be carried in the following “originator_address” field, when this field is not set to 0. If the originator_id field is set to 0, then the originator_address field must also be set t
20、o 0. The originator_id field values are maintained for Dolby by the SMPTE Registration Authority. Contact Dolby at to request a new originator_id value. (NOTE Table 5-5 is up to date to 2007 08 22) Table 5-5 Allowable Values for originator_id originator_id Manufacturer identity 0 unspecified 1 -32
21、Dolby Laboratories 33- 42 Harris Broadcast Communications (Leitch) 43 - 255 Reserved for future registrations originator_address Professional Read and Write Word size: 16 Valid range: All values (see below) The originator_address field has been re-defined to allow metadata suppliers to include what
22、amounts to private data in the metadata stream. If the metadata supplier has placed a valid registered originator_id in the originator_id field, then the originator_address field may carry any desired data . If the originator_id field is set to 0, then the originator_address field must also be set t
23、o 0. frame_count Professional Read and Write Word size: 16 Valid range: All possible values The frame_count field is an unsigned integer that increments for each metadata frame. After the highest unsigned integer value has been reached, this field will wrap back to all zeros. Note that this value is
24、 used for determining discontinuities between metadata frames and it must always be incremented by one after each metadata frame. Reserved Professional Read and Write Word size: 12 Valid range: 0 This field is reserved and must not be changed, and must be passed on intact to preserve the structure a
25、nd timing of the bitstream. RDD 6-2008 Page 13 of 53 pages 5.1.2 data_segment Field Descriptions All Data Segments wrap the payload data in the following fields. The data_segment_id field describes the payload data type, and is also used to signal the end of a subframe. data_segment_id Professional
26、Read Only Word size: 8 Valid range: See Table 56 The data_segment_id indicates the type of data being carried in the payload of the following data_segment. See Table 5-6. Table 5-6 Allowable Values for data_segment_id data_segment_id Data Segment type 0 None (Signals the end of a subframe) 1 Dolby E
27、 Complete Metadata Data Segment 2 Dolby E Essential Metadata Data Segment 3 Dolby Digital Complete Program Metadata Data Segment with Extended BSI support 4 Dolby Digital Essential Program Metadata Data Segment, with Extended BSI support 5 Dolby Digital Complete Program Metadata Data Segment with No
28、 Extended BSI support 6 Dolby Digital Essential Program Metadata Data Segment with No Extended BSI support 7255 Reserved If the data_segment_id field is not = 0, then the following fields wrap the actual payload data. Table 5-7 Data Segment Syntax Syntax word size (bits)data_segment() data_segment_s
29、ize .8 data_segment_payload() data_segment_unused_bits . variable data_segment_checksum 8 data_segment_size Pro and Cons Read and Write Word size: 8 Valid range: 0255 (0 is interpreted as 256 bytes) This field specifies the number of bytes in the data segment payload including the data_segment_unuse
30、d_bits. Note that since the data segment payload does not necessarily contain an integer number of bytes, this field represents the least integer greater than or equal to the number of bytes in the segment payload. RDD 6-2008 Page 14 of 53 pages data_segment_size = (n/8) rounded up to the nearest in
31、teger, where n represents the number of bits in the data_segment_payload. data_segment_payload() See Sections 6 and 7 The data_segment_payload() field contains a variable number of bits that carry different types of metadata information identified by the data_segment_id. Sections 6 and 7 describe th
32、e syntax for each of the data_segments defined in Table 5-6. data_segment_unused_bits Pro and Cons Read and Write Word size: Variable (07) Valid range: All bits must be set to zero This variable length field is used to force each data segment to have an integer number of bytes. All the bits in this
33、field should be set to zero. The number of bits in this field can be computed as follows: number of bits in data_segment_unused_bits field = (m*8) n , where m is the number of bytes in the data_segment_size field and n is the number of bits in the data_segment_payload field. data_segment_checksum Pr
34、o and Cons Read and Write Word size: 8 Valid range: All values This field is a 2s complement checksum for the data segment. It is calculated over the data_segment_size, the data_segment_payload(), and the data_segment_unused_bits fields. The checksum is initialized with the value of the data_segment
35、_size byte, then bytes of the data_segment_payload are added sequentially from the beginning of the data_segment_payload. Any carry bits generated are thrown away by ANDing the totals with 0xFF. The pseudo code for the operation is: /* initialize the checksum to the data segment size */ checksum = d
36、ata_segment_size; /* perform checksum on the data segment payload including unused bits */ for (j = 0; j data_segment_size; j+) data = data_segment_payloadj; checksum = (checksum + data) /* take the 2s complement of the running checksum */ checksum = (checksum) + 1) pgm program_count; pgm+) /*progra
37、m_count derived from program_config*/ description_textpgm.8 Reservedpgm 2 for (ch = 0; ch max_channels; ch+) /*max_channels derived from program_config*/ Reservedch .4 Reservedch .1 for (ch = 0; ch max_channels; ch+) /*max_channels derived from program_config*/ Reservedch .10 Reservedch .10 RDD 6-20
38、08 Page 17 of 53 pages 6.1.2 Field Descriptions program_config Professional Read Only Word size: 6 Valid range: 023, values 24 to 63 are Reserved This frame element indicates how the programs are packed into the Dolby E frame, as shown in Table 6-2. The program configuration field defines the number
39、 of separate programs in the frame, and the number of separate channels in each program. It also identifies where in the sequence of metadata fields, the field associated with a specific program or channel within a program will be found, by specifying the order in which the program and channel data
40、is packed into the Dolby E Complete data segment. Fields, such as the description_text, have a pgm suffix to indicate that they apply to a program as a whole. Other elements that only apply to individual channels use a ch suffix to indicate this. The system used to organize the metadata elements, sh
41、own in Table 6-2, is to start with those that apply to the Left (L) channels for all the programs, in program sequence, followed by all the “C” or Center (also used for mono signals) channels in program sequence, followed by the Left Surround (Ls), Right (R), Low Frequency Effects (LFE) and finally
42、the Right Surround (Rs) channels, again in program order, with the program count beginning at zero. NOTE that the Channel Sequence shown in Table 6-2 does not apply to the audio inputs and outputs of Dolby E encoders and decoders. It is only used to locate specific parameters within the serial metad
43、ata bit stream. RDD 6-2008 Page 18 of 53 pages Table 6-2 Program Configuration Program Config Program Count Channel Count Program Sequence Channel Sequence 0 2 8 5.1 + 2 0L, 0C, 0Ls, 1L, 0R, 0LFE, 0Rs, 1R 1 3 8 5.1 + 1 + 1 0L, 0C, 0Ls, 1C, 0R, 0LFE, 0Rs, 2C 2 2 8 4 + 4 0L, 0C, 1L, 1C, 0R, 0S, 1R, 1S
44、 3 3 8 4 + 2 + 2 0L, 0C, 1L, 2L, 0R, 0S, 1R, 2R 4 4 8 4 + 2 + 1 + 1 0L, 0C, 1L, 2C, 0R, 0S, 1R, 3C 5 5 8 4 + 1 + 1 + 1 + 1 0L, 0C, 1C, 3C, 0R, 0S, 2C, 4C 6 4 8 2 + 2 + 2 + 2 0L, 1L, 2L, 3L, 0R, 1R, 2R, 3R 7 5 8 2 + 2 + 2 + 1 + 1 0L, 1L, 2L, 3C, 0R, 1R, 2R, 4C 8 6 8 2 + 2 + 1 + 1 + 1 + 1 0L, 1L, 2C,
45、4C, 0R, 1R, 3C, 5C 9 7 8 2 + 1 + 1 + 1 + 1 + 1 + 1 0L, 1C, 3C, 5C, 0R, 2C, 4C, 6C 10 8 8 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 0C, 2C, 4C, 6C, 1C, 3C, 5C, 7C 11 1 6 5.1 0L, 0C, 0Ls, 0R, 0LFE, 0Rs 12 2 6 4 + 2 0L, 0C, 1L, 0R, 0S, 1R 13 3 6 4 + 1 + 1 0L, 0C, 1C, 0R, 0S, 2C 14 3 6 2 + 2 + 2 0L, 1L, 2L, 0R, 1R,
46、 2R 15 4 6 2 + 2 + 1 + 1 0L, 1L, 2C, 0R, 1R, 3C 16 5 6 2 + 1 + 1 + 1 + 1 0L, 1C, 3C, 0R, 2C, 4C 17 6 6 1 + 1 + 1 + 1 + 1 + 1 0C, 2C, 4C, 1C, 3C, 5C 18 1 4 4 0L, 0C, 0R, 0S 19 2 4 2 + 2 0L, 1L, 0R, 1R 20 3 4 2 + 1 + 1 0L, 1C, 0R, 2C 21 4 4 1 + 1 + 1 + 1 0C, 2C, 1C, 3C 22 1 8 7.1 0L,0C,0Ls,0BSL,0R,0LF
47、E,0Rs,0BSR 23 1 8 7.1 Screen 0L,0C,0Ls,0Le,0R,0LFE,0Rs,0Re 24-63 reserved reserved reserved reserved frame_rate_code Professional Read and Write Word size: 4 Valid range: See Table 6-3 This frame element indicates the frame rate of the video reference signal that the device producing the metadata st
48、ream is locked to, as shown in Table 6-3. RDD 6-2008 Page 19 of 53 pages Table 6-3 Frame Rate Code Frame Rate Code Frame Rate 1 24000/1001 23.98 Hz (film normalized to NTSC) 2 24 Hz (film rate) 3 25 Hz (PAL frame rate) 4 30000/1001 29.97 Hz (NTSC frame rate) 5 30 Hz 0, 6-15 reserved pitch_shift_code
49、 Professional Read and Write Word size: 12 Valid Range: -2048 to 2047 This field indicates the amount of pitch shift between the original playback speed and the current playback speed of the audio subframe. With pitch_shift_code = 0, the current playback speed is equal to the original playback speed, and therefore indicates no pitch shift. Th