Revision 3596aa6f

View differences:

libavcodec/ac3.h
85 85
    uint8_t channel_mode;
86 86
    uint8_t lfe_on;
87 87
    uint8_t frame_type;
88
    int substreamid;                        ///< substream identification
88 89
    int center_mix_level;                   ///< Center mix level index
89 90
    int surround_mix_level;                 ///< Surround mix level index
90 91
    uint16_t channel_map;
libavcodec/ac3_parser.c
99 99
        hdr->channels = ff_ac3_channels_tab[hdr->channel_mode] + hdr->lfe_on;
100 100
        hdr->frame_size = ff_ac3_frame_size_tab[frame_size_code][hdr->sr_code] * 2;
101 101
        hdr->frame_type = EAC3_FRAME_TYPE_AC3_CONVERT; //EAC3_FRAME_TYPE_INDEPENDENT;
102
        hdr->substreamid = 0;
102 103
    } else {
103 104
        /* Enhanced AC-3 */
104 105
        hdr->crc1 = 0;
......
106 107
        if(hdr->frame_type == EAC3_FRAME_TYPE_RESERVED)
107 108
            return AC3_PARSE_ERROR_FRAME_TYPE;
108 109

  
109
        skip_bits(gbc, 3); // skip substream id
110
        hdr->substreamid = get_bits(gbc, 3);
110 111

  
111 112
        hdr->frame_size = (get_bits(gbc, 11) + 1) << 1;
112 113
        if(hdr->frame_size < AC3_HEADER_SIZE)
libavcodec/ac3dec.c
134 134

  
135 135
    int sample_rate;                        ///< sample frequency, in Hz
136 136
    int bit_rate;                           ///< stream bit rate, in bits-per-second
137
    int substreamid;                        ///< substream identification
137 138
    int frame_size;                         ///< current frame size, in bytes
138 139

  
139 140
    int channels;                           ///< number of total channels
......
326 327
    s->center_mix_level             = hdr.center_mix_level;
327 328
    s->surround_mix_level           = hdr.surround_mix_level;
328 329
    s->num_blocks                   = hdr.num_blocks;
330
    s->substreamid                  = hdr.substreamid;
329 331

  
330 332
    if(s->lfe_on) {
331 333
        s->start_freq[s->lfe_ch] = 0;

Also available in: Unified diff