libavcodec/wmavoice.c:1135: error: Uninitialized Value
  The value read from pitch[_] was never initialized.

libavcodec/wmavoice.c:1135:9: 
1133.         break;
1134.     case ACB_TYPE_HAMMING:
1135.         s->last_pitch_val = pitch[frame_descs[bd_idx].n_blocks - 1];
              ^
1136.         break;
1137.     }

static int synth_frame(AVCodecContext *ctx, GetBitContext *gb,
                       float *samples,
                       const double *lsps, const double *prev_lsps,
                       float *excitation, float *synth)
{
    WMAVoiceContext *s = ctx->priv_data;
    int n, n_blocks_x2, log_n_blocks_x2, cur_pitch_val;
    int pitch[MAX_BLOCKS], last_block_pitch;
    int bd_idx = s->vbm_tree[get_vlc2(gb, frame_type_vlc.table, 6, 3)],
        block_nsamples = MAX_FRAMESIZE / frame_descs[bd_idx].n_blocks;
    if (bd_idx < 0) {
        av_log(ctx, AV_LOG_ERROR,
               "Invalid frame type VLC code, skipping\n");
        return -1;
    }
    if (frame_descs[bd_idx].acb_type == ACB_TYPE_ASYMMETRIC) {
        n_blocks_x2      = frame_descs[bd_idx].n_blocks << 1;
        log_n_blocks_x2  = frame_descs[bd_idx].log_n_blocks + 1;
        cur_pitch_val    = s->min_pitch_val + get_bits(gb, s->pitch_nbits);
        cur_pitch_val    = FFMIN(cur_pitch_val, s->max_pitch_val - 1);
        if (s->last_acb_type == ACB_TYPE_NONE ||
            20 * abs(cur_pitch_val - s->last_pitch_val) >
                (cur_pitch_val + s->last_pitch_val))
            s->last_pitch_val = cur_pitch_val;
        for (n = 0; n < frame_descs[bd_idx].n_blocks; n++) {
            int fac = n * 2 + 1;
            pitch[n] = (MUL16(fac,                 cur_pitch_val) +
                        MUL16((n_blocks_x2 - fac), s->last_pitch_val) +
                        frame_descs[bd_idx].n_blocks) >> log_n_blocks_x2;
        }
        s->pitch_diff_sh16 =
            ((cur_pitch_val - s->last_pitch_val) << 16) / MAX_FRAMESIZE;
    }
    switch (frame_descs[bd_idx].fcb_type) {
    case FCB_TYPE_SILENCE:
        s->silence_gain = wmavoice_gain_silence[get_bits(gb, 8)];
        break;
    case FCB_TYPE_AW_PULSES:
        aw_parse_coords(s, gb, pitch);
        break;
    }
    for (n = 0; n < frame_descs[bd_idx].n_blocks; n++) {
        int bl_pitch_sh2;
        switch (frame_descs[bd_idx].acb_type) {
        case ACB_TYPE_HAMMING: {
            int block_pitch,
                t1 = (s->block_conv_table[1] - s->block_conv_table[0]) << 2,
                t2 = (s->block_conv_table[2] - s->block_conv_table[1]) << 1,
                t3 =  s->block_conv_table[3] - s->block_conv_table[2] + 1;
            if (n == 0) {
                block_pitch = get_bits(gb, s->block_pitch_nbits);
            } else
                block_pitch = last_block_pitch - s->block_delta_pitch_hrange +
                                 get_bits(gb, s->block_delta_pitch_nbits);
            last_block_pitch = av_clip(block_pitch,
                                       s->block_delta_pitch_hrange,
                                       s->block_pitch_range -
                                           s->block_delta_pitch_hrange);
            if (block_pitch < t1) {
                bl_pitch_sh2 = (s->block_conv_table[0] << 2) + block_pitch;
            } else {
                block_pitch -= t1;
                if (block_pitch < t2) {
                    bl_pitch_sh2 =
                        (s->block_conv_table[1] << 2) + (block_pitch << 1);
                } else {
                    block_pitch -= t2;
                    if (block_pitch < t3) {
                        bl_pitch_sh2 =
                            (s->block_conv_table[2] + block_pitch) << 2;
                    } else
                        bl_pitch_sh2 = s->block_conv_table[3] << 2;
                }
            }
            pitch[n] = bl_pitch_sh2 >> 2;
            break;
        }
        case ACB_TYPE_ASYMMETRIC: {
            bl_pitch_sh2 = pitch[n] << 2;
            break;
        }
        default:
            bl_pitch_sh2 = 0;
            break;
        }
        synth_block(s, gb, n, block_nsamples, bl_pitch_sh2,
                    lsps, prev_lsps, &frame_descs[bd_idx],
                    &excitation[n * block_nsamples],
                    &synth[n * block_nsamples]);
    }
    if (s->do_apf) {
        av_log_missing_feature(ctx, "APF", 0);
        s->do_apf = 0;
    }
        for (n = 0; n < 160; n++)
            samples[n] = av_clipf(synth[n], -1.0, 1.0);
    s->frame_cntr++;
    if (s->frame_cntr >= 0xFFFF) s->frame_cntr -= 0xFFFF;
    s->last_acb_type = frame_descs[bd_idx].acb_type;
    switch (frame_descs[bd_idx].acb_type) {
    case ACB_TYPE_NONE:
        s->last_pitch_val = 0;
        break;
    case ACB_TYPE_ASYMMETRIC:
        s->last_pitch_val = cur_pitch_val;
        break;
    case ACB_TYPE_HAMMING:
        s->last_pitch_val = pitch[frame_descs[bd_idx].n_blocks - 1];
        break;
    }
    return 0;
}
['static int synth_frame(AVCodecContext *ctx, GetBitContext *gb,\n                       float *samples,\n                       const double *lsps, const double *prev_lsps,\n                       float *excitation, float *synth)\n{\n    WMAVoiceContext *s = ctx->priv_data;\n    int n, n_blocks_x2, log_n_blocks_x2, cur_pitch_val;\n    int pitch[MAX_BLOCKS], last_block_pitch;\n    int bd_idx = s->vbm_tree[get_vlc2(gb, frame_type_vlc.table, 6, 3)],\n        block_nsamples = MAX_FRAMESIZE / frame_descs[bd_idx].n_blocks;\n    if (bd_idx < 0) {\n        av_log(ctx, AV_LOG_ERROR,\n               "Invalid frame type VLC code, skipping\\n");\n        return -1;\n    }\n    if (frame_descs[bd_idx].acb_type == ACB_TYPE_ASYMMETRIC) {\n        n_blocks_x2      = frame_descs[bd_idx].n_blocks << 1;\n        log_n_blocks_x2  = frame_descs[bd_idx].log_n_blocks + 1;\n        cur_pitch_val    = s->min_pitch_val + get_bits(gb, s->pitch_nbits);\n        cur_pitch_val    = FFMIN(cur_pitch_val, s->max_pitch_val - 1);\n        if (s->last_acb_type == ACB_TYPE_NONE ||\n            20 * abs(cur_pitch_val - s->last_pitch_val) >\n                (cur_pitch_val + s->last_pitch_val))\n            s->last_pitch_val = cur_pitch_val;\n        for (n = 0; n < frame_descs[bd_idx].n_blocks; n++) {\n            int fac = n * 2 + 1;\n            pitch[n] = (MUL16(fac,                 cur_pitch_val) +\n                        MUL16((n_blocks_x2 - fac), s->last_pitch_val) +\n                        frame_descs[bd_idx].n_blocks) >> log_n_blocks_x2;\n        }\n        s->pitch_diff_sh16 =\n            ((cur_pitch_val - s->last_pitch_val) << 16) / MAX_FRAMESIZE;\n    }\n    switch (frame_descs[bd_idx].fcb_type) {\n    case FCB_TYPE_SILENCE:\n        s->silence_gain = wmavoice_gain_silence[get_bits(gb, 8)];\n        break;\n    case FCB_TYPE_AW_PULSES:\n        aw_parse_coords(s, gb, pitch);\n        break;\n    }\n    for (n = 0; n < frame_descs[bd_idx].n_blocks; n++) {\n        int bl_pitch_sh2;\n        switch (frame_descs[bd_idx].acb_type) {\n        case ACB_TYPE_HAMMING: {\n            int block_pitch,\n                t1 = (s->block_conv_table[1] - s->block_conv_table[0]) << 2,\n                t2 = (s->block_conv_table[2] - s->block_conv_table[1]) << 1,\n                t3 =  s->block_conv_table[3] - s->block_conv_table[2] + 1;\n            if (n == 0) {\n                block_pitch = get_bits(gb, s->block_pitch_nbits);\n            } else\n                block_pitch = last_block_pitch - s->block_delta_pitch_hrange +\n                                 get_bits(gb, s->block_delta_pitch_nbits);\n            last_block_pitch = av_clip(block_pitch,\n                                       s->block_delta_pitch_hrange,\n                                       s->block_pitch_range -\n                                           s->block_delta_pitch_hrange);\n            if (block_pitch < t1) {\n                bl_pitch_sh2 = (s->block_conv_table[0] << 2) + block_pitch;\n            } else {\n                block_pitch -= t1;\n                if (block_pitch < t2) {\n                    bl_pitch_sh2 =\n                        (s->block_conv_table[1] << 2) + (block_pitch << 1);\n                } else {\n                    block_pitch -= t2;\n                    if (block_pitch < t3) {\n                        bl_pitch_sh2 =\n                            (s->block_conv_table[2] + block_pitch) << 2;\n                    } else\n                        bl_pitch_sh2 = s->block_conv_table[3] << 2;\n                }\n            }\n            pitch[n] = bl_pitch_sh2 >> 2;\n            break;\n        }\n        case ACB_TYPE_ASYMMETRIC: {\n            bl_pitch_sh2 = pitch[n] << 2;\n            break;\n        }\n        default:\n            bl_pitch_sh2 = 0;\n            break;\n        }\n        synth_block(s, gb, n, block_nsamples, bl_pitch_sh2,\n                    lsps, prev_lsps, &frame_descs[bd_idx],\n                    &excitation[n * block_nsamples],\n                    &synth[n * block_nsamples]);\n    }\n    if (s->do_apf) {\n        av_log_missing_feature(ctx, "APF", 0);\n        s->do_apf = 0;\n    }\n        for (n = 0; n < 160; n++)\n            samples[n] = av_clipf(synth[n], -1.0, 1.0);\n    s->frame_cntr++;\n    if (s->frame_cntr >= 0xFFFF) s->frame_cntr -= 0xFFFF;\n    s->last_acb_type = frame_descs[bd_idx].acb_type;\n    switch (frame_descs[bd_idx].acb_type) {\n    case ACB_TYPE_NONE:\n        s->last_pitch_val = 0;\n        break;\n    case ACB_TYPE_ASYMMETRIC:\n        s->last_pitch_val = cur_pitch_val;\n        break;\n    case ACB_TYPE_HAMMING:\n        s->last_pitch_val = pitch[frame_descs[bd_idx].n_blocks - 1];\n        break;\n    }\n    return 0;\n}']