S3C6410 MFC同时编解码问题

 09年遇到两件最郁闷的问题,一个是freescale 的wince5 wm9715驱动,用无锡开发板,没法录音。厂家很不负责。后来找到freescale总部,答复是,原来就没搞定,这些都是废话了。

换了三星6410,知道还在完善中,bug特多,用时编解码时遇到图像会串的问题,就是编码的图像会显示到解码的图像上,经过三星FAE的测试反馈到三星总部,第二天给了个8月11号发布的包,说搞定了,已测试图像不串了,但编码有问题,修改三星封装库中的两个参数,终于搞定了。

如下:

void *SsbSipH264EncodeInit(unsigned int uiWidth,     unsigned int uiHeight,
                           unsigned int uiFramerate, unsigned int uiBitrate_kbps,
                           unsigned int uiGOPNum)
{
    _MFCLIB_H264_ENC   *pCTX;
    HANDLE              hOpen;


    //
    /     CreateFile     /
    //
    hOpen = CreateFile(L"MFC1:",
                       GENERIC_READ|GENERIC_WRITE,
                       0,
                       NULL,
                       OPEN_EXISTING,
                       FILE_ATTRIBUTE_NORMAL,
                       NULL);
    if (hOpen == INVALID_HANDLE_VALUE) {
        LOG_MSG(LOG_ERROR, "SsbSipH264EncodeInit", "MFC Open failure./n");
        return NULL;
    }

    pCTX = (_MFCLIB_H264_ENC *) malloc(sizeof(_MFCLIB_H264_ENC));
    if (pCTX == NULL) {
        LOG_MSG(LOG_ERROR, "SsbSipH264EncodeInit", "malloc failed./n");
        CloseHandle(hOpen);
        return NULL;
    }
    memset(pCTX, 0x00, sizeof(_MFCLIB_H264_ENC));

    pCTX->magic = _MFCLIB_H264_ENC_MAGIC_NUMBER;
    pCTX->hOpen = hOpen;
    pCTX->fInit = 0;

    pCTX->width     = uiWidth;
    pCTX->height    = uiHeight;
    pCTX->framerate = uiFramerate;
    pCTX->bitrate   = uiBitrate_kbps;
    pCTX->gop_num   = uiGOPNum;

    pCTX->intraqp = 1;
    pCTX->qpmax = 32;
    pCTX->gamma = 0.75;

    pCTX->enc_strm_size = 0;

    return (void *) pCTX;
}

如果你遇到同样问题,请更换bsp。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值