Semantics for the Enhanced AC-3 descriptor

The semantics of the parameters within the E-AC-3 descriptor for a Dolby Digital Plus bitstream are:

  • The descriptor_tag parameter is set to is 0xCC.
  • The descriptor_length field specifies the total number of bytes of the data portion of the descriptor following the byte defining the value of this field. The minimum length of the descriptor is three bytes, but it may be longer depending on the use of the subsequent descriptor flags.
  • The bsid_flag value is set to 1 when the optional bsid field is present in the descriptor.
  • The mainid_flag, asvc_flag, and mixinfoexists parameters are set to 0.
  • The substream1_flag parameter is set to 1 when the Dolby Digital Plus stream contains an additional associated audio service in independent substream 1. If an independent substream with a substreamid value of 1 is not present in the bitstream, the substream1_flag is set to 0.
  • The substream2_flag parameter is set to 1 when the Dolby Digital Plus stream contains an additional associated audio service in independent substream 2. If an independent substream with a substreamid value of 2 is not present in the bitstream, the substream2_flag flag is set to 0.
  • The substream3_flag parameter is set to 1 when the Dolby Digital Plus stream contains an additional associated audio service in independent substream 3. If an independent substream with a substreamid value of 3 is not present in the bitstream, this flag is set to 0.
  • The value of the full_service_flag parameter indicates whether the audio service in independent substream 0 (and any dependent substreams associated with independent substream 0) of the Dolby Digital Plus stream is full-service audio, suitable for presentation, or whether this audio service is only a partial service that should be combined with another audio service before presentation. The value is set according to these criteria:
    • If full_service_flag is set to 1, the audio service is sufficiently complete for presentation without being combined with another audio service (for example, a visually impaired service containing all elements of the program, including music, effects, dialogue, and a narrative description of the visual program content).
    • If full_service_flag is set to 0, the audio service is not sufficiently complete and must be combined with another audio service (for example, a visually impaired service containing only a narrative description of the visual program content, which must be combined with another audio service containing music, effects, and dialogue).
  • The service_type field indicates the type of audio service being conveyed in independent substream 0 (and any dependent substreams associated with independent substream 0) of the Dolby Digital Plus stream. The service_type field is interpreted as listed in the table.
    Table 1. service_type field
    Field value Description Restrictions1
    Full-service flag number_of_channels field
    000 Complete Main (CM) Set to 1
    001 Music and Effects (ME) Set to 0
    010 Visually Impaired (VI)
    011 Hearing Impaired (HI)
    100 Dialogue (D) Set to 0
    101 Commentary (C)
    110 Emergency (E) Set to 1 Set to 000
    111 Voiceover (VO) Set to 0 Set to 000
    111 Karaoke Set to 1 Set to 010, 011, or 100
  • The number_of_channels field (three bits) indicates the number of channels present in independent substream 0 (and any dependent substreams associated with independent substream 0) of the Dolby Digital Plus stream. This field is interpreted as listed in the number_of_channels field table:
    • The language_flag value (one bit) indicates whether the language field (three bytes) is present in the descriptor. If this bit is set to 1, then the language field is present. If this bit is set to 0, then the language field is not present.
    • The language_flag_2 value is set to 0.
    • The bsid field (five bits) indicates the Dolby Digital Plus coding version. If the bsid field is included, the value of the field is set to the same value as the bsid parameter in independent substream 0 of the Dolby Digital Plus stream.
    Table 2. number_of_channels field
    Field value2 Description Restrictions3
    Full-service flag Service type field
    000 Mono
    001 1+1 mode
    010 Two-channel audio
    011 Two-channel audio encoded in Dolby Surround
    100 Multichannel audio (greater than two channels and up to 5.1 channels)
    101 Multichannel audio (greater than 5.1 channels) Set to 1 Set to 000
    110 Reserved for future use
    111 Reserved for future use
  • The substream1 field (eight bits) indicates the type of audio carried in independent substream 1 of the Dolby Digital Plus stream. The value assignments of each bit are indicated in the Substream field bit value assignments table. If the Dolby Digital Plus bitstream contains an independent substream with a substreamid value of 1, the PMT includes the substream1 field.
  • The substream2 field (eight bits) indicates the type of audio carried in independent substream 2 of the Dolby Digital Plus stream. The value assignments of each bit are indicated in the Substream field bit value assignments table. If the Dolby Digital Plus bitstream contains an independent substream with a substreamid value of 2, the PMT includes the substream2 field.
  • The substream3 field (eight bits) indicates the type of audio carried in independent substream 3 of the Dolby Digital Plus stream. The value assignments of each bit are indicated in the Substream field bit value assignments table. If the Dolby Digital Plus bitstream contains an independent substream with a substreamid value of 3, the PMT includes the substream3 field.
    Table 3. Substream field bit value assignments
    Substream 1–3 Description
    b7 (most-significant bit) Reserved (set to 1)
    b6 Reserved (set to 0)
    b5 to b3 service_type flags (see the service_type flags table)
    b2 to b0 number_of_channels flags (see the number_of_channels flags table)
    Table 4. service_type flags
    Bit values Description Restrictions4
    b5 b4 b3 number_of_channels field
    0 0 0 Reserved
    0 0 1 Music and Effects (ME)
    0 1 0 Visually Impaired (VI)
    0 1 1 Hearing Impaired (HI)
    1 0 0 Dialogue (D)
    1 0 1 Commentary (C)
    1 1 0 Reserved
    1 1 1 Voiceover (VO) Set to 000
    Table 5. number_of_channels flags
    Flags Description
    b2 b1 b0
    0 0 0 Mono
    0 0 1 Reserved for future use
    0 1 0 Two-channel audio5
    0 1 1 Two-channel audio encoded in Dolby Surround
    1 0 0 Multichannel audio (greater than two channels and up to 5.1 channels)
    1 0 1 Reserved for future use
    1 1 0 Reserved for future use
    1 1 1 Reserved for future use
  • The substream1, substream2, and substream3 field values are indicated in the tables in this section. The respective substream field may be ignored if other values are conveyed:
    • The language field (three bytes) defines the language of this audio service. The language field is a three-character code as specified by ISO 639-2. Each character is coded into eight bits according to ISO 8859-1 (ISO Latin-1) and inserted in order into the 24-bit field. The coding is identical to that used in the MPEG-2 ISO_639_language_code value in the ISO_639_language_descriptor specified in ISO/IEC 13818-1.
    • The additional_info field provides optional bytes for future use.
1 The values of the service_type field are valid only if the conditions identified in the restrictions columns are satisfied.
2 For two-channel Dolby Digital Plus streams, the number_of_channels field should be set to 011 when the dsurmod parameter is set to 011 (encoded in Dolby Surround), and should be set to 010 if the dsurmod parameter is set to any other value, or is not present.
3 The values of the number_of_channels field are valid only if the conditions identified in the restrictions column are satisfied.

4 The service_type flags bit values are considered valid only if the conditions identified in the restrictions column are satisfied.
5 For two-channel substreams, the number_of_channels field should be set to 011 when the dsurmod parameter is set to 011 (encoded in Dolby Surround), and should be set to 010 if dsurmod is set to any other value, or is not present.