libavcodec/dvdec.c:323: error: Buffer Overrun L3
  Offset: [-54, +oo] Size: 64 by call to `ff_dv_init_dynamic_tables`.

libavcodec/dvdec.c:322:14: Call
320.     int apt, is16_9;
321. 
322.     s->sys = avpriv_dv_frame_profile(s->sys, buf, buf_size);
                  ^
323.     if (!s->sys || buf_size < s->sys->frame_size || ff_dv_init_dynamic_tables(s->sys)) {
324.         av_log(avctx, AV_LOG_ERROR, "could not find dv frame profile\n");

libavcodec/dvdata.c:286:1: Parameter `buf_size`
  284. };
  285. 
  286. const DVprofile* avpriv_dv_frame_profile(const DVprofile *sys,
       ^
  287.                                   const uint8_t* frame, unsigned buf_size)
  288. {

libavcodec/dvdec.c:323:53: Call
321. 
322.     s->sys = avpriv_dv_frame_profile(s->sys, buf, buf_size);
323.     if (!s->sys || buf_size < s->sys->frame_size || ff_dv_init_dynamic_tables(s->sys)) {
                                                         ^
324.         av_log(avctx, AV_LOG_ERROR, "could not find dv frame profile\n");
325.         return -1; /* NOTE: we only accept several full frames */

libavcodec/dv.c:170:1: Parameter `d->n_difchan`
  168. }
  169. 
  170. int ff_dv_init_dynamic_tables(const DVprofile *d)
       ^
  171. {
  172.     int j,i,c,s,p;

libavcodec/dv.c:185:27: Call
  183.                     if (!(DV_PROFILE_IS_1080i50(d) && c != 0 && s == 11) &&
  184.                         !(DV_PROFILE_IS_720p50(d) && s > 9)) {
  185.                           dv_calc_mb_coordinates(d, c, s, j, &d->work_chunks[i].mb_coordinates[0]);
                                 ^
  186.                           d->work_chunks[i++].buf_offset = p;
  187.                     }

libavcodec/dv.c:55:1: <Offset trace>
53. RL_VLC_ELEM ff_dv_rl_vlc[1184];
54. 
55. static inline void dv_calc_mb_coordinates(const DVprofile *d, int chan, int seq, int slot,
    ^
56.                                           uint16_t *tbl)
57. {

libavcodec/dv.c:55:1: Parameter `chan`
    53. RL_VLC_ELEM ff_dv_rl_vlc[1184];
    54. 
    55. static inline void dv_calc_mb_coordinates(const DVprofile *d, int chan, int seq, int slot,
        ^
    56.                                           uint16_t *tbl)
    57. {

libavcodec/dv.c:121:15: Assignment
    119. 
    120.               x = shuf1[m]+(chan&1)*9 + k%9;
    121.               y = (i*3+k/9)*2 + (chan>>1) + 4;
                       ^
    122. 
    123.               if (x >= 80) {

libavcodec/dv.c:75:5: <Length trace>
73.                                        0, 1, 2, 3, 4, 5};
74. 
75.     static const uint8_t remap[][2] = {{ 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, /* dummy */
        ^
76.                                        { 0, 0}, { 0, 1}, { 0, 2}, { 0, 3}, {10, 0},
77.                                        {10, 1}, {10, 2}, {10, 3}, {20, 0}, {20, 1},

libavcodec/dv.c:75:5: Array declaration
    73.                                        0, 1, 2, 3, 4, 5};
    74. 
    75.     static const uint8_t remap[][2] = {{ 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, /* dummy */
            ^
    76.                                        { 0, 0}, { 0, 1}, { 0, 2}, { 0, 3}, {10, 0},
    77.                                        {10, 1}, {10, 2}, {10, 3}, {20, 0}, {20, 1},

libavcodec/dv.c:124:23: Array access: Offset: [-54, +oo] Size: 64 by call to `ff_dv_init_dynamic_tables` 
    122. 
    123.               if (x >= 80) {
    124.                   x = remap[y][0]+((x-80)<<(y>59));
                               ^
    125.                   y = remap[y][1];
    126.               }
