免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: VIP_fuck
打印 上一主题 下一主题

[其他] 吐个槽,工作很久的同事,代码质量仍然像小学生。 [复制链接]

论坛徽章:
11
未羊
日期:2013-12-16 12:45:4615-16赛季CBA联赛之青岛
日期:2016-04-11 19:17:4715-16赛季CBA联赛之广夏
日期:2016-04-06 16:34:012015亚冠之卡尔希纳萨夫
日期:2015-11-10 10:04:522015亚冠之大阪钢巴
日期:2015-07-30 18:29:402015亚冠之城南
日期:2015-06-15 17:56:392015亚冠之卡尔希纳萨夫
日期:2015-05-15 15:19:272015亚冠之山东鲁能
日期:2015-05-14 12:38:13金牛座
日期:2014-12-04 15:34:06子鼠
日期:2014-10-16 13:40:4715-16赛季CBA联赛之八一
日期:2016-07-22 09:41:40
1 [报告]
发表于 2015-08-14 12:01 |显示全部楼层
本帖最后由 zylthinking 于 2015-08-14 12:02 编辑
VIP_fuck 发表于 2015-08-14 10:30
比较无语,匪夷所思的命名,混乱的编码,一天竟然都不懂他一个函数的实际工作,,,

编码规范难道不应该 ...


幼儿园的路过。。。。。。。, 算了, 不标颜色了, 太多了, 这是我写的, 我写的, 我写的。。。。。。。。。。 那个紫色的, 是google的, 是google的, 是google的。。。。。
就是为了让英语党看不懂, 你信不信?

static uintptr_t chunk_size(video_format* fmt, sp<MetaData> meta, MediaBuffer* buffer,
                            intptr_t chunk0[3][2], intptr_t chunk1[3][2])
{
    int32_t w0 = fmt->pixel->size->width;
    int32_t h0 = fmt->pixel->size->height;
    int32_t nb0 = 0;

    int32_t w1, h1, nb1 = 0;
    meta->findInt32(kKeyWidth, &w1);
    meta->findInt32(kKeyHeight, &h1);

    intptr_t chunk[3][2], (*chunk2)[2] = NULL;
    int32_t w2, h2, nb2 = 0;
    if (0 != ((w1 | h1) & 15)) {
        w2 = roundup(w1, 16);
        h2 = roundup(h1, 16);
        chunk2 = &chunk[0];
    }

    for (int i = 0; i < fmt->pixel->panels; ++i) {
        chunk1[0] = panel_width(i, w1, fmt->pixel->csp);
        chunk1[0] = pixels_to_bytes(i, chunk1[0], fmt->pixel->csp);
        chunk1[1] = panel_height(i, h1, fmt->pixel->csp);
        nb1 += chunk1[0] * chunk1[1];

        if (chunk2 != NULL) {
            chunk2[0] = panel_width(i, w2, fmt->pixel->csp);
            chunk2[0] = pixels_to_bytes(i, chunk2[0], fmt->pixel->csp);
            chunk2[1] = panel_height(i, h2, fmt->pixel->csp);
            nb2 += chunk2[0] * chunk2[1];
        }

        chunk0[0] = panel_width(i, w0, fmt->pixel->csp);
        chunk0[0] = pixels_to_bytes(i, chunk0[0], fmt->pixel->csp);
        chunk0[1] = panel_height(i, h0, fmt->pixel->csp);

        nb0 += chunk0[0] * chunk0[1];
    }

    int32_t nb = (int32_t) buffer->range_length();
    if (nb == nb2) {
        chunk1 = chunk;
    } else if (nb != nb1) {
        logmsg_d("nb mismatch %d:%d:%d\n", nb, nb1, nb2);
    }

    if (chunk1[0] != chunk0[0] || chunk1[1] != chunk0[1]) {
        logmsg_d("pic mismatch %d:%d vs %d:%d\n", chunk1[0], chunk1[1], chunk0[0], chunk0[1]);
    }
    return nb0;
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP