关于AForge录像,保存后文件长度和录制时长不一致的问题

木v知 2018-06-05 04:50:37
最近在用AForge做一个监控的案例,发现例如设置3分钟录制时间,大多情况是2分59秒这样,但是偶尔也会出现录制时长为2分10秒或者2分30秒的情况。咨询下大佬们时长不一致可能是因为什么原因?frame_rate目前设置为30.





//[640,480][800,448][864,480][1024,576][960,720][800,600][1600,896][1712,960][1280,960] [1920,1080]
int width = videoSource.VideoCapabilities[0].FrameSize.Width;
int height = videoSource.VideoCapabilities[0].FrameSize.Height;
int fps = 30;

string path = "D:\\视频监控";
fileName = System.DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".mp4";

if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
path = path + "\\" + fileName;
writer = new VideoFileWriter();
writer.Open(path, width, height, fps, VideoCodec.MPEG4);

this.is_record_video = true;
aTimer.Enabled = true;
aTimer.Interval = MonitorMaxSecond * 500;
// lblmontior.Text = "视频监控中";
IsTimeOut = true;
videoSource.Start();

...全文
1525 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
木v知 2018-06-06
  • 打赏
  • 举报
回复
引用 1 楼 OExpress 的回复:
应该是底层音视频文件的时间戳计算有问题,不是很准确,再就是在结束的时候MUXER到文件的时候,buffer处理有问题,duration处理的不对
这就比较尴尬了,多谢提醒,我看下这两点相关的逻辑吧,不然只能换一种解决方案了。
木v知 2018-06-06
  • 打赏
  • 举报
回复
引用 2 楼 qq_29862715 的回复:
底层处理有问题,不建议用AForge和FFMPEG做录像,都会有这种时间问题。
麻烦问下有其他比较好的推荐么?
qq_29862715 2018-06-06
  • 打赏
  • 举报
回复
底层处理有问题,不建议用AForge和FFMPEG做录像,都会有这种时间问题。
CyberLogix 2018-06-05
  • 打赏
  • 举报
回复
应该是底层音视频文件的时间戳计算有问题,不是很准确,再就是在结束的时候MUXER到文件的时候,buffer处理有问题,duration处理的不对

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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