This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM6467 720P H.264 编码问题



各位好:

          目前我板子的视频输入是16位的YUV422格式,通过修改DVSDK demo 的encode程序 

可以正常地编码1080P的,为了让它支持720,采集部分还是用1080P采集,我只是在capture.c

文件在YUV422转YUV420之前通过resize转换了分辨率,然后发送给编码线程编码,但编码出来

的720P不正常,用VLC播放时画面一闪一闪的,就是久不久能看到一下画面,其它时间都是灰色的,

不知道是不是还需要修改别的地方?那具体还需要修改哪些地方,谢谢!具体capture.c修改代码如下:

………………

在这里把1080P的 hCapBuf 转换成720P保存到OutBuf.

/* Color convert the captured buffer from 422Psemi to 420Psemi */
//if (Ccv_execute(hCcv, hCapBuf, hDstBuf) < 0) {

if (Ccv_execute(hCcv, OutBuf, hDstBuf) < 0) {
      ERR("Failed to execute color conversion job\n");
      cleanup(THREAD_FAILURE);
}

在这里把hDstBuf 的420Psemi YUV数据写到文件,用YUV播放器可以正常播放,并且是720P 的YUV 420Psemi格式。

/* Send color converted buffer to video thread for encoding */
if (Fifo_put(envp->hOutFifo, hDstBuf) < 0) {
      ERR("Failed to send buffer to display thread\n");
      cleanup(THREAD_FAILURE);
}

………………

编码器那边 我也只是把分辨率从1080P改成 720P。不知道

具体还需要修改哪些参数,急求,希望大家帮帮忙!谢谢大家!