Firefly开源社区

标题: 关于增大MEDIACODEC的解码输入缓冲区的调试意见 [打印本页]

作者: jingjin221    时间: 2016-6-29 20:16
标题: 关于增大MEDIACODEC的解码输入缓冲区的调试意见
本帖最后由 jingjin221 于 2016-8-4 11:51 编辑

在存储的过程成发现一个问题,存储FLASH的时候正常,在存储SD卡,发现和SPI冲突,应该是DMA的原因吧?在存储USB设备时候,感觉文件写入的时候会干扰到的我的视频解码,有时候回出现视频播放卡顿的现象!这是什么原因呢?我的U盘写入速度已经很高了,大概有20M/S,是2.0的USB!

最近在播放视频的同时加入了视频录制功能,发现在解码隔行视频的时候,我的缓冲区始终会爆掉!经查找原因应该是MEDIACODEC的硬解码缓冲区获取不到我又舍不得丢帧,所以导致我的解复用缓冲区爆掉!默认给我分配的解码输入缓冲区为4个WIDTH*HEIGHT*3/2,输入缓冲区为6个WIDTH*HEIGHT*3/2,输出缓冲区已经够了,主要是输入缓冲区不够,需要加大!一下为增大输入缓冲区的办法
  1. /**/ACodec.cpp

  2.     OMX_PARAM_PORTDEFINITIONTYPE def;
  3.     InitOMXParams(&def);
  4.     def.nPortIndex = portIndex;
  5.     status_t err = mOMX->getParameter(mNode, OMX_IndexParamPortDefinition, &def, sizeof(def));        if(portIndex == kPortIndexInput) {
  6.                 ALOGE("JJ::setVideoFormatOnPort add the PortIndexInput Buffer");
  7.                 def.nBufferCountMin = 8;
  8.                 def.nBufferCountActual = 8;
  9.      }
  10.     err = mOMX->setParameter(
  11.             mNode, OMX_IndexParamPortDefinition, &def, sizeof(def));
复制代码







作者: 暴走的阿Sai    时间: 2016-6-29 22:26
好贴,已经设置精华。经常能看见楼主的好贴,楼主加油!
作者: zygcs    时间: 2017-6-7 15:00
?,
改的哪几行代码?




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1