| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 333 人关注过本帖
标题:求助:视频的存储问题
只看楼主 加入收藏
tanchaoacl
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-8-13
结帖率:0
收藏
 问题点数:0 回复次数:0 
求助:视频的存储问题
我现在在做视频存储的工作,点击“保存”按钮对摄像头采集的视频进行算法处理后以AVI的格式存储到硬盘中,保存按钮函数的内容是:
void CShowStreamDlg::OnBaocun()
{
CString filename;
CFileDialog FileDlg(FALSE,_T("avi"));
if(FileDlg.DoModal()==IDOK)
{
ilename=FileDlg.GetPathName();
nFrames=0;
m_bIsbaocun=true;
}

}
下面是回调函数里的内容,但是保存成AVI视频文件时,文件占存储空间,但是打不开,用暴风影音打开提示说文件头不完整,不是标准的视频文件。
我个人觉得可能是这个函数的参数设置的不对AVIStreamSetFormat(ps,nFrames,&(OutHeader),sizeof(OutHeader));您看能不能给我指点指点,学生感激不尽!
if(m_bIsbaocun==true)
{
if(nFrames==0)
{
AVIFileInit();
AVIFileOpen(&pfile,filename,OF_WRITE|OF_CREATE,NULL);
memset(&strhdr,0,sizeof(strhdr));
strhdr.fccType=streamtypeVIDEO;
strhdr.fccHandler=0;
strhdr.dwScale=1;
strhdr.dwRate=25;
strhdr.dwSuggestedBufferSize=pInfo->bmiHeader.biSizeImage;
SetRect(&strhdr.rcFrame,0,0,pInfo->bmiHeader.biWidth,pInfo->bmiHeader.biHeight);
AVIFileCreateStream(pfile,&ps,&strhdr);
}
AVIStreamSetFormat(ps,nFrames,&(OutHeader),sizeof(OutHeader));
AVIStreamWrite(ps,nFrames,1,(LPBYTE)GrayImage,OutHeader.biSizeImage,AVIIF_KEYFRAME,NULL,NULL);
nFrames++;
}
if(m_bIstingzhibaocun==true)
{
AVIStreamClose(ps);
if(pfile!=NULL)
AVIFileExit();
MessageBox("保存成功");
m_bIsbaocun=false;
m_bIstingzhibaocun=false;
}
搜索更多相关主题的帖子: 视频 
2010-08-21 15:00
快速回复:求助:视频的存储问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024081 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved