海思3531使用mp4v2库,合成的mp4文件音视频不同步。

赵鸣寒 2018-01-03 03:57:55
大家好,我是一个海思芯片初学者。有个问题。帮帮忙。
我用libmp4v2库,在海思3531上合成mp4文件。我合成的mp4文件,刚开始音视频是同步的,但视频文件时长越长,越不同步。
比如合成了一个时长1小时的mp4文件,从30分钟开始,声音和视频对不上了,声音出来早,画面出来晚。
网上搜了些方法试验,还是不行。这个如何解决啊,帮帮忙。
...全文
2809 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
不回头的倔强 2019-06-22
  • 打赏
  • 举报
回复
int uFrameMS = timeStramp - m_ALastFrame.m_nTimeStamp;

uDuration = (44100/1000)*uFrameMS;

你好,音视频都这样设置好了 感觉音频播完 视频还在播可能是什么原因
不回头的倔强 2019-06-21
  • 打赏
  • 举报
回复
能帮我看看嘛,非常感谢
weixin_44494225 2019-01-11
  • 打赏
  • 举报
回复
赵鸣寒 2018-11-06
  • 打赏
  • 举报
回复
引用 7 楼 jy19930617 的回复:
你好,Hi3615a芯片音视频录像MP4具体步骤能介绍一下吗,现在紧紧实现了单独存储


详细的我也说不清楚,你这里遇到什么问题了。
jy19930617 2018-11-01
  • 打赏
  • 举报
回复
你好,Hi3615a芯片音视频录像MP4具体步骤能介绍一下吗,现在紧紧实现了单独存储
赵鸣寒 2018-02-09
  • 打赏
  • 举报
回复
解决了,使用时间戳计算出帧与帧的间隔,在换算成对应duration,实时的修改duration值,最后同步了。
赵鸣寒 2018-01-08
  • 打赏
  • 举报
回复
引用 3 楼 qq_35369749 的回复:
请问您这几个参数是给的什么值MP4WriteSample(hMP4File[i], video[i], stStream.pstPack[0].pu8Addr+stStream.pstPack[0].u32Offset,stStream.pstPack[0].u32Len-stStream.pstPack[0].u32Offset,MP4_INVALID_DURATION, 0, 1);我给这几个值保存一百帧视频只有100多K(一针一个包)
duration,的值是上次调用MP4WriteSampl和这次调用MP4WriteSampl的时间间隔(单位是ms)换算出来的,(Timestamp - temTimeStamp)*90;
~学海无涯~ 2018-01-08
  • 打赏
  • 举报
回复
请问您这几个参数是给的什么值MP4WriteSample(hMP4File[i], video[i], stStream.pstPack[0].pu8Addr+stStream.pstPack[0].u32Offset,stStream.pstPack[0].u32Len-stStream.pstPack[0].u32Offset,MP4_INVALID_DURATION, 0, 1);我给这几个值保存一百帧视频只有100多K(一针一个包)
赵鸣寒 2018-01-04
  • 打赏
  • 举报
回复
再支持下。大家帮帮忙。
赵鸣寒 2018-01-04
  • 打赏
  • 举报
回复
自己顶一下。

19,498

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧