ffmpeg av_read_frame() 使用的问题?

羡渊 2017-01-24 07:56:56
我有一个视频文件avi格式 yuv420 h.264
在调用av_read_frame()的时候.第1304次的时候就小于零了。但是我的bn_frame 有1804 。
然后我把上面的avi转码成MP4
这个时候调用av_read_frame()的时候。第1801次的时候小于零了。这次至少和我的总数相近。为什么会这样。
我查资料说是到了文件尾部或者出错了。照这个逻辑我的两个测试的次数应该差不多啊。为什么后面的次数反而回大于avi的时候?
...全文
2709 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
羡渊 2017-01-25
  • 打赏
  • 举报
回复
假设我的文件中莫一块有问题。我该怎么样保障可以读取到文件末尾呢?
rightorwrong 2017-01-25
  • 打赏
  • 举报
回复
你解析下avi文件看看
羡渊 2017-01-25
  • 打赏
  • 举报
回复
问题找到了。因为我是自己录制的,虽然数据显示的是1800帧,但是实际上大概也就只有1400帧。我录制的时候一秒大概是22~25帧。这样一分钟也就1400左右。但是我录制的时候设置的是30帧一秒。所以最后我mux音频和视频的时候,视频只读出了1400左右。我把av_read_frame的错误码打印出来也是 -541478725 说是到了文件末尾。然后又测试了下其他实际录制的情况,基本确定了,这就是原因。顺道再问个问题?我做mux的时候。为什么显示的帧率会从30变成50?我用的就是雷神的:http://blog.csdn.net/leixiaohua1020/article/details/39802913 这里的代码实现的? 我发现用ffprobe 解析的数据里的nb_frame 的值貌似和pts 有关。还望赐教?
羡渊 2017-01-25
  • 打赏
  • 举报
回复
这是文件的解析
reverse 这个是什么意思?
我看了下。一脸懵逼!!!

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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