libavcodec/dcadec.c:1958: error: Integer Overflow L2
  ([1, 2147483616] + 32):signed32 by call to `av_samples_get_buffer_size`.

libavcodec/dcadec.c:1735:16: Call
1733. 
1734.     init_get_bits(&s->gb, s->dca_buffer, s->dca_buffer_size * 8);
1735.     if ((ret = dca_parse_frame_header(s)) < 0) {
                     ^
1736.         //seems like the frame is corrupt, try with the next one
1737.         return ret;

libavcodec/dcadec.c:570:28: Call
  568.     s->samples_deficit   = get_bits(&s->gb, 5) + 1;
  569.     s->crc_present       = get_bits(&s->gb, 1);
  570.     s->sample_blocks     = get_bits(&s->gb, 7) + 1;
                                  ^
  571.     s->frame_size        = get_bits(&s->gb, 14) + 1;
  572.     if (s->frame_size < 95)

libavcodec/get_bits.h:244:5: Call
    242.     register int tmp;
    243.     OPEN_READER(re, s);
    244.     UPDATE_CACHE(re, s);
             ^
    245.     tmp = SHOW_UBITS(re, s, n);
    246.     LAST_SKIP_BITS(re, s, n);

libavutil/bswap.h:68:1: Parameter `x`
      66. 
      67. #ifndef av_bswap32
      68. static av_always_inline av_const uint32_t av_bswap32(uint32_t x)
          ^
      69. {
      70.     return AV_BSWAP32C(x);

libavutil/bswap.h:70:5: Assignment
      68. static av_always_inline av_const uint32_t av_bswap32(uint32_t x)
      69. {
      70.     return AV_BSWAP32C(x);
              ^
      71. }
      72. #endif

libavcodec/get_bits.h:244:5: Assignment
    242.     register int tmp;
    243.     OPEN_READER(re, s);
    244.     UPDATE_CACHE(re, s);
             ^
    245.     tmp = SHOW_UBITS(re, s, n);
    246.     LAST_SKIP_BITS(re, s, n);

libavcodec/get_bits.h:245:5: Assignment
    243.     OPEN_READER(re, s);
    244.     UPDATE_CACHE(re, s);
    245.     tmp = SHOW_UBITS(re, s, n);
             ^
    246.     LAST_SKIP_BITS(re, s, n);
    247.     CLOSE_READER(re, s);

libavcodec/get_bits.h:248:5: Assignment
    246.     LAST_SKIP_BITS(re, s, n);
    247.     CLOSE_READER(re, s);
    248.     return tmp;
             ^
    249. }
    250. 

libavcodec/dcadec.c:570:5: Assignment
  568.     s->samples_deficit   = get_bits(&s->gb, 5) + 1;
  569.     s->crc_present       = get_bits(&s->gb, 1);
  570.     s->sample_blocks     = get_bits(&s->gb, 7) + 1;
           ^
  571.     s->frame_size        = get_bits(&s->gb, 14) + 1;
  572.     if (s->frame_size < 95)

libavcodec/dcadec.c:1949:5: Assignment
1947. 
1948.     /* get output buffer */
1949.     frame->nb_samples = 256 * (s->sample_blocks / 8);
          ^
1950.     if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) {
1951.         av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");

libavcodec/dcadec.c:1958:15: Call
1956.     /* allocate buffer for extra channels if downmixing */
1957.     if (avctx->channels < full_channels) {
1958.         ret = av_samples_get_buffer_size(NULL, full_channels - channels,
                    ^
1959.                                          frame->nb_samples,
1960.                                          avctx->sample_fmt, 0);

libavutil/samplefmt.c:108:1: <LHS trace>
106. }
107. 
108. int av_samples_get_buffer_size(int *linesize, int nb_channels, int nb_samples,
     ^
109.                                enum AVSampleFormat sample_fmt, int align)
110. {

libavutil/samplefmt.c:108:1: Parameter `nb_samples`
  106. }
  107. 
  108. int av_samples_get_buffer_size(int *linesize, int nb_channels, int nb_samples,
       ^
  109.                                enum AVSampleFormat sample_fmt, int align)
  110. {

libavutil/samplefmt.c:124:9: Binary operation: ([1, 2147483616] + 32):signed32 by call to `av_samples_get_buffer_size` 
  122.             return AVERROR(EINVAL);
  123.         align = 1;
  124.         nb_samples = FFALIGN(nb_samples, 32);
               ^
  125.     }
  126. 
