On Sun, Oct 13, 2013 at 3:22 AM, Luca Barbato <[email protected]> wrote:
> ---
>
> Review in patch form more than welcome, this file is strange, some sections
> are almost clean other not so much.
>
>  libavcodec/cavs.c | 405 
> +++++++++++++++++++++++++++++-------------------------
>  1 file changed, 218 insertions(+), 187 deletions(-)
>
> diff --git a/libavcodec/cavs.c b/libavcodec/cavs.c
> index 47eaa0b..9501a0d 100644
> --- a/libavcodec/cavs.c
> +++ b/libavcodec/cavs.c
> @@ -77,7 +77,7 @@ static inline int get_bs(cavs_vector *mvP, cavs_vector 
> *mvQ, int b)
>      if (b) {
>          mvP += MV_BWD_OFFS;
>          mvQ += MV_BWD_OFFS;
> -        if ((abs(mvP->x - mvQ->x) >= 4) ||  (abs(mvP->y - mvQ->y) >= 4))
> +        if ((abs(mvP->x - mvQ->x) >= 4) || (abs(mvP->y - mvQ->y) >= 4))
>              return 1;
>      } else {
>          if (mvP->ref != mvQ->ref)
> @@ -376,84 +376,99 @@ void ff_cavs_modify_mb_i(AVSContext *h, int 
> *pred_mode_uv)
>   *
>   
> ****************************************************************************/
>
> -static inline void mc_dir_part(AVSContext *h, AVFrame *pic,
> -                               int chroma_height,int delta,int list,uint8_t 
> *dest_y,
> -                               uint8_t *dest_cb,uint8_t *dest_cr,int 
> src_x_offset,
> -                               int src_y_offset,qpel_mc_func *qpix_op,
> -                               h264_chroma_mc_func chroma_op,cavs_vector *mv)
> +static inline void mc_dir_part(AVSContext *h, AVFrame *pic, int 
> chroma_height,
> +                               int delta, int list, uint8_t *dest_y,
> +                               uint8_t *dest_cb, uint8_t *dest_cr,
> +                               int src_x_offset, int src_y_offset,
> +                               qpel_mc_func *qpix_op,
> +                               h264_chroma_mc_func chroma_op, cavs_vector 
> *mv)
>  {
> -    const int mx= mv->x + src_x_offset*8;
> -    const int my= mv->y + src_y_offset*8;
> -    const int luma_xy= (mx&3) + ((my&3)<<2);
> -    uint8_t * src_y  = pic->data[0] + (mx >> 2) + (my >> 2) * h->l_stride;
> -    uint8_t * src_cb = pic->data[1] + (mx >> 3) + (my >> 3) * h->c_stride;
> -    uint8_t * src_cr = pic->data[2] + (mx >> 3) + (my >> 3) * h->c_stride;
> -    int extra_width = 0;
> -    int extra_height= extra_width;
> -    int emu=0;
> -    const int full_mx= mx>>2;
> -    const int full_my= my>>2;
> -    const int pic_width  = 16*h->mb_width;
> -    const int pic_height = 16*h->mb_height;
> +    const int mx         = mv->x + src_x_offset*8;
> +    const int my         = mv->y + src_y_offset*8;
> +    const int luma_xy    = (mx & 3) + ((my & 3) << 2);
> +    uint8_t *src_y       = pic->data[0] + (mx >> 2) + (my >> 2) * 
> h->l_stride;
> +    uint8_t *src_cb      = pic->data[1] + (mx >> 3) + (my >> 3) * 
> h->c_stride;
> +    uint8_t *src_cr      = pic->data[2] + (mx >> 3) + (my >> 3) * 
> h->c_stride;
> +    int extra_width      = 0;
> +    int extra_height     = extra_width;
> +    const int full_mx    = mx >> 2;
> +    const int full_my    = my >> 2;
> +    const int pic_width  = 16 * h->mb_width;
> +    const int pic_height = 16 * h->mb_height;
> +    int emu = 0;
>
>      if (!pic->data[0])
>          return;
> -    if(mx&7) extra_width -= 3;
> -    if(my&7) extra_height -= 3;
> -
> -    if(   full_mx < 0-extra_width
> -          || full_my < 0-extra_height
> -          || full_mx + 16/*FIXME*/ > pic_width + extra_width
> -          || full_my + 16/*FIXME*/ > pic_height + extra_height){
> -        h->vdsp.emulated_edge_mc(h->edge_emu_buffer, src_y - 2 - 
> 2*h->l_stride, h->l_stride,
> -                            16+5, 16+5/*FIXME*/, full_mx-2, full_my-2, 
> pic_width, pic_height);
> -        src_y= h->edge_emu_buffer + 2 + 2*h->l_stride;
> -        emu=1;
> +    if (mx & 7)
> +        extra_width  -= 3;
> +    if (my & 7)
> +        extra_height -= 3;
> +
> +    if (full_mx < 0 - extra_width ||
> +        full_my < 0 - extra_height ||
> +        full_mx + 16/*FIXME*/ > pic_width + extra_width ||
> +        full_my + 16/*FIXME*/ > pic_height + extra_height) {

Space across /* FIXME */. Personally I'd move them at the end of the
line to make them more visible
Would be nice to have a hint about what should be fixed there.

> +        h->vdsp.emulated_edge_mc(h->edge_emu_buffer,
> +                                 src_y - 2 - 2 * h->l_stride, h->l_stride,
> +                                 16 + 5, 16 + 5/*FIXME*/,

ditto

> +                                 full_mx - 2, full_my - 2,
> +                                 pic_width, pic_height);
> +        src_y = h->edge_emu_buffer + 2 + 2 * h->l_stride;
> +        emu = 1;
>      }
>
>      qpix_op[luma_xy](dest_y, src_y, h->l_stride); //FIXME try variable 
> height perhaps?

space after //

>
> -    if(emu){
> +    if (emu) {
>          h->vdsp.emulated_edge_mc(h->edge_emu_buffer, src_cb, h->c_stride,
> -                            9, 9/*FIXME*/, (mx>>3), (my>>3), pic_width>>1, 
> pic_height>>1);
> -        src_cb= h->edge_emu_buffer;
> +                                 9, 9/*FIXME*/,

spaces across the comment internals

> +                                 mx >> 3, my >> 3,
> +                                 pic_width >> 1, pic_height >> 1);
> +        src_cb = h->edge_emu_buffer;
>      }
> -    chroma_op(dest_cb, src_cb, h->c_stride, chroma_height, mx&7, my&7);
> +    chroma_op(dest_cb, src_cb, h->c_stride, chroma_height, mx & 7, my & 7);
>
> -    if(emu){
> +    if (emu) {
>          h->vdsp.emulated_edge_mc(h->edge_emu_buffer, src_cr, h->c_stride,
> -                            9, 9/*FIXME*/, (mx>>3), (my>>3), pic_width>>1, 
> pic_height>>1);
> -        src_cr= h->edge_emu_buffer;
> +                                 9, 9/*FIXME*/,

ditto

> +                                 mx >> 3, my >> 3,
> +                                 pic_width >> 1, pic_height >> 1);
> +        src_cr = h->edge_emu_buffer;
>      }
> -    chroma_op(dest_cr, src_cr, h->c_stride, chroma_height, mx&7, my&7);
> +    chroma_op(dest_cr, src_cr, h->c_stride, chroma_height, mx & 7, my & 7);
>  }
>
> -static inline void mc_part_std(AVSContext *h,int chroma_height,int delta,
> -                               uint8_t *dest_y,uint8_t *dest_cb,uint8_t 
> *dest_cr,
> -                               int x_offset, int y_offset,qpel_mc_func 
> *qpix_put,
> -                               h264_chroma_mc_func chroma_put,qpel_mc_func 
> *qpix_avg,
> -                               h264_chroma_mc_func chroma_avg, cavs_vector 
> *mv)
> +static inline void mc_part_std(AVSContext *h, int chroma_height, int delta,
> +                               uint8_t *dest_y,
> +                               uint8_t *dest_cb,
> +                               uint8_t *dest_cr,
> +                               int x_offset, int y_offset,
> +                               qpel_mc_func *qpix_put,
> +                               h264_chroma_mc_func chroma_put,
> +                               qpel_mc_func *qpix_avg,
> +                               h264_chroma_mc_func chroma_avg,
> +                               cavs_vector *mv)
>  {
> -    qpel_mc_func *qpix_op=  qpix_put;
> -    h264_chroma_mc_func chroma_op= chroma_put;
> +    qpel_mc_func *qpix_op =  qpix_put;
> +    h264_chroma_mc_func chroma_op = chroma_put;
>
> -    dest_y  += 2*x_offset + 2*y_offset*h->l_stride;
> -    dest_cb +=   x_offset +   y_offset*h->c_stride;
> -    dest_cr +=   x_offset +   y_offset*h->c_stride;
> -    x_offset += 8*h->mbx;
> -    y_offset += 8*h->mby;
> +    dest_y  += 2 * x_offset + 2 * y_offset*h->l_stride;
> +    dest_cb +=     x_offset +     y_offset*h->c_stride;
> +    dest_cr +=     x_offset +     y_offset*h->c_stride;
> +    x_offset += 8 * h->mbx;
> +    y_offset += 8 * h->mby;
>
> -    if(mv->ref >= 0){
> +    if (mv->ref >= 0) {
>          AVFrame *ref = h->DPB[mv->ref].f;
>          mc_dir_part(h, ref, chroma_height, delta, 0,
>                      dest_y, dest_cb, dest_cr, x_offset, y_offset,
>                      qpix_op, chroma_op, mv);
>
> -        qpix_op=  qpix_avg;
> -        chroma_op= chroma_avg;
> +        qpix_op   = qpix_avg;
> +        chroma_op = chroma_avg;
>      }
>
> -    if((mv+MV_BWD_OFFS)->ref >= 0){
> +    if ((mv + MV_BWD_OFFS)->ref >= 0) {
>          AVFrame *ref = h->DPB[0].f;
>          mc_dir_part(h, ref, chroma_height, delta, 1,
>                      dest_y, dest_cb, dest_cr, x_offset, y_offset,
> @@ -461,39 +476,40 @@ static inline void mc_part_std(AVSContext *h,int 
> chroma_height,int delta,
>      }
>  }
>
> -void ff_cavs_inter(AVSContext *h, enum cavs_mb mb_type) {
> -    if(ff_cavs_partition_flags[mb_type] == 0){ // 16x16
> +void ff_cavs_inter(AVSContext *h, enum cavs_mb mb_type)
> +{
> +    if (ff_cavs_partition_flags[mb_type] == 0) { // 16x16
>          mc_part_std(h, 8, 0, h->cy, h->cu, h->cv, 0, 0,
> -                h->cdsp.put_cavs_qpel_pixels_tab[0],
> -                h->h264chroma.put_h264_chroma_pixels_tab[0],
> -                h->cdsp.avg_cavs_qpel_pixels_tab[0],
> -                h->h264chroma.avg_h264_chroma_pixels_tab[0],
> -                &h->mv[MV_FWD_X0]);
> -    }else{
> +                    h->cdsp.put_cavs_qpel_pixels_tab[0],
> +                    h->h264chroma.put_h264_chroma_pixels_tab[0],
> +                    h->cdsp.avg_cavs_qpel_pixels_tab[0],
> +                    h->h264chroma.avg_h264_chroma_pixels_tab[0],
> +                    &h->mv[MV_FWD_X0]);
> +    } else {
>          mc_part_std(h, 4, 0, h->cy, h->cu, h->cv, 0, 0,
> -                h->cdsp.put_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.put_h264_chroma_pixels_tab[1],
> -                h->cdsp.avg_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.avg_h264_chroma_pixels_tab[1],
> -                &h->mv[MV_FWD_X0]);
> +                    h->cdsp.put_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.put_h264_chroma_pixels_tab[1],
> +                    h->cdsp.avg_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.avg_h264_chroma_pixels_tab[1],
> +                    &h->mv[MV_FWD_X0]);
>          mc_part_std(h, 4, 0, h->cy, h->cu, h->cv, 4, 0,
> -                h->cdsp.put_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.put_h264_chroma_pixels_tab[1],
> -                h->cdsp.avg_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.avg_h264_chroma_pixels_tab[1],
> -                &h->mv[MV_FWD_X1]);
> +                    h->cdsp.put_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.put_h264_chroma_pixels_tab[1],
> +                    h->cdsp.avg_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.avg_h264_chroma_pixels_tab[1],
> +                    &h->mv[MV_FWD_X1]);
>          mc_part_std(h, 4, 0, h->cy, h->cu, h->cv, 0, 4,
> -                h->cdsp.put_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.put_h264_chroma_pixels_tab[1],
> -                h->cdsp.avg_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.avg_h264_chroma_pixels_tab[1],
> -                &h->mv[MV_FWD_X2]);
> +                    h->cdsp.put_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.put_h264_chroma_pixels_tab[1],
> +                    h->cdsp.avg_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.avg_h264_chroma_pixels_tab[1],
> +                    &h->mv[MV_FWD_X2]);
>          mc_part_std(h, 4, 0, h->cy, h->cu, h->cv, 4, 4,
> -                h->cdsp.put_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.put_h264_chroma_pixels_tab[1],
> -                h->cdsp.avg_cavs_qpel_pixels_tab[1],
> -                h->h264chroma.avg_h264_chroma_pixels_tab[1],
> -                &h->mv[MV_FWD_X3]);
> +                    h->cdsp.put_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.put_h264_chroma_pixels_tab[1],
> +                    h->cdsp.avg_cavs_qpel_pixels_tab[1],
> +                    h->h264chroma.avg_h264_chroma_pixels_tab[1],
> +                    &h->mv[MV_FWD_X3]);
>      }
>  }
>
> @@ -503,15 +519,21 @@ void ff_cavs_inter(AVSContext *h, enum cavs_mb mb_type) 
> {
>   *
>   
> ****************************************************************************/
>
> -static inline void scale_mv(AVSContext *h, int *d_x, int *d_y, cavs_vector 
> *src, int distp) {
> +static inline void scale_mv(AVSContext *h, int *d_x, int *d_y,
> +                            cavs_vector *src, int distp)
> +{
>      int den = h->scale_den[src->ref];
>
> -    *d_x = (src->x*distp*den + 256 + (src->x>>31)) >> 9;
> -    *d_y = (src->y*distp*den + 256 + (src->y>>31)) >> 9;
> +    *d_x = (src->x * distp * den + 256 + (src->x >> 31)) >> 9;
> +    *d_y = (src->y * distp * den + 256 + (src->y >> 31)) >> 9;
>  }
>
> -static inline void mv_pred_median(AVSContext *h, cavs_vector *mvP,
> -                        cavs_vector *mvA, cavs_vector *mvB, cavs_vector 
> *mvC) {
> +static inline void mv_pred_median(AVSContext *h,
> +                                  cavs_vector *mvP,
> +                                  cavs_vector *mvA,
> +                                  cavs_vector *mvB,
> +                                  cavs_vector *mvC)
> +{
>      int ax, ay, bx, by, cx, cy;
>      int len_ab, len_bc, len_ca, len_mid;
>
> @@ -524,10 +546,10 @@ static inline void mv_pred_median(AVSContext *h, 
> cavs_vector *mvP,
>      len_bc = abs(bx - cx) + abs(by - cy);
>      len_ca = abs(cx - ax) + abs(cy - ay);
>      len_mid = mid_pred(len_ab, len_bc, len_ca);
> -    if(len_mid == len_ab) {
> +    if (len_mid == len_ab) {
>          mvP->x = cx;
>          mvP->y = cy;
> -    } else if(len_mid == len_bc) {
> +    } else if (len_mid == len_bc) {
>          mvP->x = ax;
>          mvP->y = ay;
>      } else {
> @@ -537,43 +559,45 @@ static inline void mv_pred_median(AVSContext *h, 
> cavs_vector *mvP,
>  }
>
>  void ff_cavs_mv(AVSContext *h, enum cavs_mv_loc nP, enum cavs_mv_loc nC,
> -                enum cavs_mv_pred mode, enum cavs_block size, int ref) {
> +                enum cavs_mv_pred mode, enum cavs_block size, int ref)
> +{
>      cavs_vector *mvP = &h->mv[nP];
>      cavs_vector *mvA = &h->mv[nP-1];
>      cavs_vector *mvB = &h->mv[nP-4];
>      cavs_vector *mvC = &h->mv[nC];
>      const cavs_vector *mvP2 = NULL;
>
> -    mvP->ref = ref;
> +    mvP->ref  = ref;
>      mvP->dist = h->dist[mvP->ref];
> -    if(mvC->ref == NOT_AVAIL)
> +    if (mvC->ref == NOT_AVAIL)
>          mvC = &h->mv[nP-5]; // set to top-left (mvD)
> -    if((mode == MV_PRED_PSKIP) &&
> -       ((mvA->ref == NOT_AVAIL) || (mvB->ref == NOT_AVAIL) ||
> -           ((mvA->x | mvA->y | mvA->ref) == 0)  ||
> -           ((mvB->x | mvB->y | mvB->ref) == 0) )) {
> +    if (mode == MV_PRED_PSKIP &&
> +        (mvA->ref == NOT_AVAIL ||
> +         mvB->ref == NOT_AVAIL ||
> +         (mvA->x | mvA->y | mvA->ref) == 0 ||
> +         (mvB->x | mvB->y | mvB->ref) == 0)) {
>          mvP2 = &un_mv;
>      /* if there is only one suitable candidate, take it */
> -    } else if((mvA->ref >= 0) && (mvB->ref < 0) && (mvC->ref < 0)) {
> -        mvP2= mvA;
> -    } else if((mvA->ref < 0) && (mvB->ref >= 0) && (mvC->ref < 0)) {
> -        mvP2= mvB;
> -    } else if((mvA->ref < 0) && (mvB->ref < 0) && (mvC->ref >= 0)) {
> -        mvP2= mvC;
> -    } else if(mode == MV_PRED_LEFT     && mvA->ref == ref){
> -        mvP2= mvA;
> -    } else if(mode == MV_PRED_TOP      && mvB->ref == ref){
> -        mvP2= mvB;
> -    } else if(mode == MV_PRED_TOPRIGHT && mvC->ref == ref){
> -        mvP2= mvC;
> +    } else if (mvA->ref >= 0 && mvB->ref < 0  && mvC->ref < 0) {
> +        mvP2 = mvA;
> +    } else if (mvA->ref < 0  && mvB->ref >= 0 && mvC->ref < 0) {
> +        mvP2 = mvB;
> +    } else if (mvA->ref < 0  && mvB->ref < 0  && mvC->ref >= 0) {
> +        mvP2 = mvC;
> +    } else if (mode == MV_PRED_LEFT     && mvA->ref == ref) {
> +        mvP2 = mvA;
> +    } else if (mode == MV_PRED_TOP      && mvB->ref == ref) {
> +        mvP2 = mvB;
> +    } else if (mode == MV_PRED_TOPRIGHT && mvC->ref == ref) {
> +        mvP2 = mvC;
>      }
> -    if(mvP2){
> +    if (mvP2) {
>          mvP->x = mvP2->x;
>          mvP->y = mvP2->y;
> -    }else
> +    } else
>          mv_pred_median(h, mvP, mvA, mvB, mvC);
>
> -    if(mode < MV_PRED_PSKIP) {
> +    if (mode < MV_PRED_PSKIP) {
>          mvP->x += get_se_golomb(&h->gb);
>          mvP->y += get_se_golomb(&h->gb);
>      }
> @@ -589,36 +613,37 @@ void ff_cavs_mv(AVSContext *h, enum cavs_mv_loc nP, 
> enum cavs_mv_loc nC,
>  /**
>   * initialise predictors for motion vectors and intra prediction
>   */
> -void ff_cavs_init_mb(AVSContext *h) {
> +void ff_cavs_init_mb(AVSContext *h)
> +{
>      int i;
>
>      /* copy predictors from top line (MB B and C) into cache */
> -    for(i=0;i<3;i++) {
> -        h->mv[MV_FWD_B2+i] = h->top_mv[0][h->mbx*2+i];
> -        h->mv[MV_BWD_B2+i] = h->top_mv[1][h->mbx*2+i];
> +    for (i = 0; i < 3; i++) {
> +        h->mv[MV_FWD_B2 + i] = h->top_mv[0][h->mbx * 2 + i];
> +        h->mv[MV_BWD_B2 + i] = h->top_mv[1][h->mbx * 2 + i];
>      }
> -    h->pred_mode_Y[1] = h->top_pred_Y[h->mbx*2+0];
> -    h->pred_mode_Y[2] = h->top_pred_Y[h->mbx*2+1];
> +    h->pred_mode_Y[1] = h->top_pred_Y[h->mbx * 2 + 0];
> +    h->pred_mode_Y[2] = h->top_pred_Y[h->mbx * 2 + 1];
>      /* clear top predictors if MB B is not available */
> -    if(!(h->flags & B_AVAIL)) {
> -        h->mv[MV_FWD_B2] = un_mv;
> -        h->mv[MV_FWD_B3] = un_mv;
> -        h->mv[MV_BWD_B2] = un_mv;
> -        h->mv[MV_BWD_B3] = un_mv;
> +    if (!(h->flags & B_AVAIL)) {
> +        h->mv[MV_FWD_B2]  = un_mv;
> +        h->mv[MV_FWD_B3]  = un_mv;
> +        h->mv[MV_BWD_B2]  = un_mv;
> +        h->mv[MV_BWD_B3]  = un_mv;
>          h->pred_mode_Y[1] = h->pred_mode_Y[2] = NOT_AVAIL;
> -        h->flags &= ~(C_AVAIL|D_AVAIL);
> -    } else if(h->mbx) {
> +        h->flags         &= ~(C_AVAIL | D_AVAIL);
> +    } else if (h->mbx) {
>          h->flags |= D_AVAIL;
>      }
> -    if(h->mbx == h->mb_width-1) //MB C not available
> +    if (h->mbx == h->mb_width - 1) //MB C not available

space after //

>          h->flags &= ~C_AVAIL;
>      /* clear top-right predictors if MB C is not available */
> -    if(!(h->flags & C_AVAIL)) {
> +    if (!(h->flags & C_AVAIL)) {
>          h->mv[MV_FWD_C2] = un_mv;
>          h->mv[MV_BWD_C2] = un_mv;
>      }
>      /* clear top-left predictors if MB D is not available */
> -    if(!(h->flags & D_AVAIL)) {
> +    if (!(h->flags & D_AVAIL)) {
>          h->mv[MV_FWD_D3] = un_mv;
>          h->mv[MV_BWD_D3] = un_mv;
>      }
> @@ -629,38 +654,39 @@ void ff_cavs_init_mb(AVSContext *h) {
>   * macroblock address
>   * @return 0 if end of frame is reached, 1 otherwise
>   */
> -int ff_cavs_next_mb(AVSContext *h) {
> +int ff_cavs_next_mb(AVSContext *h)
> +{
>      int i;
>
>      h->flags |= A_AVAIL;
> -    h->cy += 16;
> -    h->cu += 8;
> -    h->cv += 8;
> +    h->cy    += 16;
> +    h->cu    += 8;
> +    h->cv    += 8;
>      /* copy mvs as predictors to the left */
> -    for(i=0;i<=20;i+=4)
> -        h->mv[i] = h->mv[i+2];
> +    for (i = 0; i <= 20; i += 4)
> +        h->mv[i] = h->mv[i + 2];
>      /* copy bottom mvs from cache to top line */
> -    h->top_mv[0][h->mbx*2+0] = h->mv[MV_FWD_X2];
> -    h->top_mv[0][h->mbx*2+1] = h->mv[MV_FWD_X3];
> -    h->top_mv[1][h->mbx*2+0] = h->mv[MV_BWD_X2];
> -    h->top_mv[1][h->mbx*2+1] = h->mv[MV_BWD_X3];
> +    h->top_mv[0][h->mbx * 2 + 0] = h->mv[MV_FWD_X2];
> +    h->top_mv[0][h->mbx * 2 + 1] = h->mv[MV_FWD_X3];
> +    h->top_mv[1][h->mbx * 2 + 0] = h->mv[MV_BWD_X2];
> +    h->top_mv[1][h->mbx * 2 + 1] = h->mv[MV_BWD_X3];
>      /* next MB address */
>      h->mbidx++;
>      h->mbx++;
> -    if(h->mbx == h->mb_width) { //new mb line
> -        h->flags = B_AVAIL|C_AVAIL;
> +    if (h->mbx == h->mb_width) { //new mb line

space after //

> +        h->flags = B_AVAIL | C_AVAIL;
>          /* clear left pred_modes */
>          h->pred_mode_Y[3] = h->pred_mode_Y[6] = NOT_AVAIL;
>          /* clear left mv predictors */
> -        for(i=0;i<=20;i+=4)
> +        for (i = 0; i <= 20; i += 4)
>              h->mv[i] = un_mv;
>          h->mbx = 0;
>          h->mby++;
>          /* re-calculate sample pointers */
>          h->cy = h->cur.f->data[0] + h->mby * 16 * h->l_stride;
> -        h->cu = h->cur.f->data[1] + h->mby *  8 * h->c_stride;
> -        h->cv = h->cur.f->data[2] + h->mby *  8 * h->c_stride;
> -        if(h->mby == h->mb_height) { //frame end
> +        h->cu = h->cur.f->data[1] + h->mby * 8 * h->c_stride;
> +        h->cv = h->cur.f->data[2] + h->mby * 8 * h->c_stride;
> +        if (h->mby == h->mb_height) { //frame end

space after //

>              return 0;
>          }
>      }
> @@ -673,26 +699,27 @@ int ff_cavs_next_mb(AVSContext *h) {
>   *
>   
> ****************************************************************************/
>
> -void ff_cavs_init_pic(AVSContext *h) {
> +void ff_cavs_init_pic(AVSContext *h)
> +{
>      int i;
>
>      /* clear some predictors */
> -    for(i=0;i<=20;i+=4)
> +    for (i = 0; i <= 20; i += 4)
>          h->mv[i] = un_mv;
>      h->mv[MV_BWD_X0] = ff_cavs_dir_mv;
>      set_mvs(&h->mv[MV_BWD_X0], BLK_16X16);
>      h->mv[MV_FWD_X0] = ff_cavs_dir_mv;
>      set_mvs(&h->mv[MV_FWD_X0], BLK_16X16);
>      h->pred_mode_Y[3] = h->pred_mode_Y[6] = NOT_AVAIL;
> -    h->cy           = h->cur.f->data[0];
> -    h->cu           = h->cur.f->data[1];
> -    h->cv           = h->cur.f->data[2];
> -    h->l_stride     = h->cur.f->linesize[0];
> -    h->c_stride     = h->cur.f->linesize[1];
> -    h->luma_scan[2] = 8*h->l_stride;
> -    h->luma_scan[3] = 8*h->l_stride+8;
> -    h->mbx = h->mby = h->mbidx = 0;
> -    h->flags = 0;
> +    h->cy             = h->cur.f->data[0];
> +    h->cu             = h->cur.f->data[1];
> +    h->cv             = h->cur.f->data[2];
> +    h->l_stride       = h->cur.f->linesize[0];
> +    h->c_stride       = h->cur.f->linesize[1];
> +    h->luma_scan[2]   = 8 * h->l_stride;
> +    h->luma_scan[3]   = 8 * h->l_stride + 8;
> +    h->mbx            = h->mby = h->mbidx = 0;
> +    h->flags          = 0;
>  }
>
>  
> /*****************************************************************************
> @@ -706,23 +733,26 @@ void ff_cavs_init_pic(AVSContext *h) {
>   * this data has to be stored for one complete row of macroblocks
>   * and this storage space is allocated here
>   */
> -void ff_cavs_init_top_lines(AVSContext *h) {
> +void ff_cavs_init_top_lines(AVSContext *h)
> +{
>      /* alloc top line of predictors */
> -    h->top_qp       = av_mallocz( h->mb_width);
> -    h->top_mv[0]    = av_mallocz((h->mb_width*2+1)*sizeof(cavs_vector));
> -    h->top_mv[1]    = av_mallocz((h->mb_width*2+1)*sizeof(cavs_vector));
> -    h->top_pred_Y   = av_mallocz( h->mb_width*2*sizeof(*h->top_pred_Y));
> -    h->top_border_y = av_mallocz((h->mb_width+1)*16);
> -    h->top_border_u = av_mallocz( h->mb_width * 10);
> -    h->top_border_v = av_mallocz( h->mb_width * 10);
> +    h->top_qp       = av_mallocz(h->mb_width);
> +    h->top_mv[0]    = av_mallocz((h->mb_width * 2 + 1) * 
> sizeof(cavs_vector));
> +    h->top_mv[1]    = av_mallocz((h->mb_width * 2 + 1) * 
> sizeof(cavs_vector));
> +    h->top_pred_Y   = av_mallocz(h->mb_width * 2 * sizeof(*h->top_pred_Y));
> +    h->top_border_y = av_mallocz((h->mb_width + 1) * 16);
> +    h->top_border_u = av_mallocz(h->mb_width * 10);
> +    h->top_border_v = av_mallocz(h->mb_width * 10);
>
>      /* alloc space for co-located MVs and types */
> -    h->col_mv       = av_mallocz( 
> h->mb_width*h->mb_height*4*sizeof(cavs_vector));
> -    h->col_type_base = av_mallocz(h->mb_width*h->mb_height);
> -    h->block        = av_mallocz(64*sizeof(int16_t));
> +    h->col_mv        = av_mallocz(h->mb_width * h->mb_height * 4 *
> +                                  sizeof(cavs_vector));
> +    h->col_type_base = av_mallocz(h->mb_width * h->mb_height);
> +    h->block         = av_mallocz(64 * sizeof(int16_t));
>  }
>
> -av_cold int ff_cavs_init(AVCodecContext *avctx) {
> +av_cold int ff_cavs_init(AVCodecContext *avctx)
> +{
>      AVSContext *h = avctx->priv_data;
>
>      ff_dsputil_init(&h->dsp, avctx);
> @@ -733,8 +763,8 @@ av_cold int ff_cavs_init(AVCodecContext *avctx) {
>                                    h->cdsp.idct_perm);
>      ff_init_scantable(h->dsp.idct_permutation, &h->scantable, 
> ff_zigzag_direct);
>
> -    h->avctx = avctx;
> -    avctx->pix_fmt= AV_PIX_FMT_YUV420P;
> +    h->avctx       = avctx;
> +    avctx->pix_fmt = AV_PIX_FMT_YUV420P;
>
>      h->cur.f    = av_frame_alloc();
>      h->DPB[0].f = av_frame_alloc();
> @@ -744,29 +774,30 @@ av_cold int ff_cavs_init(AVCodecContext *avctx) {
>          return AVERROR(ENOMEM);
>      }
>
> -    h->luma_scan[0] = 0;
> -    h->luma_scan[1] = 8;
> -    h->intra_pred_l[      INTRA_L_VERT] = intra_pred_vert;
> -    h->intra_pred_l[     INTRA_L_HORIZ] = intra_pred_horiz;
> -    h->intra_pred_l[        INTRA_L_LP] = intra_pred_lp;
> -    h->intra_pred_l[ INTRA_L_DOWN_LEFT] = intra_pred_down_left;
> +    h->luma_scan[0]                     = 0;
> +    h->luma_scan[1]                     = 8;
> +    h->intra_pred_l[INTRA_L_VERT]       = intra_pred_vert;
> +    h->intra_pred_l[INTRA_L_HORIZ]      = intra_pred_horiz;
> +    h->intra_pred_l[INTRA_L_LP]         = intra_pred_lp;
> +    h->intra_pred_l[INTRA_L_DOWN_LEFT]  = intra_pred_down_left;
>      h->intra_pred_l[INTRA_L_DOWN_RIGHT] = intra_pred_down_right;
> -    h->intra_pred_l[   INTRA_L_LP_LEFT] = intra_pred_lp_left;
> -    h->intra_pred_l[    INTRA_L_LP_TOP] = intra_pred_lp_top;
> -    h->intra_pred_l[    INTRA_L_DC_128] = intra_pred_dc_128;
> -    h->intra_pred_c[        INTRA_C_LP] = intra_pred_lp;
> -    h->intra_pred_c[     INTRA_C_HORIZ] = intra_pred_horiz;
> -    h->intra_pred_c[      INTRA_C_VERT] = intra_pred_vert;
> -    h->intra_pred_c[     INTRA_C_PLANE] = intra_pred_plane;
> -    h->intra_pred_c[   INTRA_C_LP_LEFT] = intra_pred_lp_left;
> -    h->intra_pred_c[    INTRA_C_LP_TOP] = intra_pred_lp_top;
> -    h->intra_pred_c[    INTRA_C_DC_128] = intra_pred_dc_128;
> -    h->mv[ 7] = un_mv;
> -    h->mv[19] = un_mv;
> +    h->intra_pred_l[INTRA_L_LP_LEFT]    = intra_pred_lp_left;
> +    h->intra_pred_l[INTRA_L_LP_TOP]     = intra_pred_lp_top;
> +    h->intra_pred_l[INTRA_L_DC_128]     = intra_pred_dc_128;
> +    h->intra_pred_c[INTRA_C_LP]         = intra_pred_lp;
> +    h->intra_pred_c[INTRA_C_HORIZ]      = intra_pred_horiz;
> +    h->intra_pred_c[INTRA_C_VERT]       = intra_pred_vert;
> +    h->intra_pred_c[INTRA_C_PLANE]      = intra_pred_plane;
> +    h->intra_pred_c[INTRA_C_LP_LEFT]    = intra_pred_lp_left;
> +    h->intra_pred_c[INTRA_C_LP_TOP]     = intra_pred_lp_top;
> +    h->intra_pred_c[INTRA_C_DC_128]     = intra_pred_dc_128;
> +    h->mv[7]                            = un_mv;
> +    h->mv[19]                           = un_mv;
>      return 0;
>  }
>
> -av_cold int ff_cavs_end(AVCodecContext *avctx) {
> +av_cold int ff_cavs_end(AVCodecContext *avctx)
> +{
>      AVSContext *h = avctx->priv_data;
>
>      av_frame_free(&h->cur.f);
>

Should be fine otherwise.
Vittorio
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to