各位高手关于avi文件大小问题,懂vfw的进

coloriy 2010-12-28 04:48:54
我目前使用了AVIFileOpen 接口来保存avi文件,一帧一帧写入,发现第一次写入后,文件大小如果是10M,如果再次打开该文件再次写入小于原来写入时间,则文件大小还是10M,只是流大小变了,也就是说avi封装的盒子(文件)大小没变。
我现在不知道如何再每次创建同一个文件时,都能把文件大小置为0,有没有高手遇到过。如何解决。

/ Step 1 : initialize AVI engine
AVIFileInit();

// Step 2 : Open the movie file for writing....
hr = AVIFileOpen(&m_pAVIFile, m_sFile.c_str(), OF_CREATE | OF_WRITE, NULL);
if (hr != AVIERR_OK)
{
AVIFileExit();
DLL_TRACE(__FILE__, __LINE__, "AVIFileOpen failed");
return FAILED;
}
...全文
283 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
coloriy 2011-01-25
  • 打赏
  • 举报
回复
有人能解决吗
coloriy 2011-01-18
  • 打赏
  • 举报
回复
我是覆盖写入,但是文件大小还是原来的文件大小,流变小了,占据比如占30%,文件大小没变化。
dengzikun 2010-12-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 coloriy 的回复:]
楼上的通知,不是这个意思,我的意思是,在一个已经填充了图像的avi文件中,再次填充小的图像数据,但是文件大小还是原来的大小,但是图像帧是最新的小的,也就是有一部分大小没用到
[/Quote]

你的意思不就是打开存在的AVI文件,追加写入吗?还是覆盖写入?
coloriy 2010-12-28
  • 打赏
  • 举报
回复
楼上的通知,不是这个意思,我的意思是,在一个已经填充了图像的avi文件中,再次填充小的图像数据,但是文件大小还是原来的大小,但是图像帧是最新的小的,也就是有一部分大小没用到
dengzikun 2010-12-28
  • 打赏
  • 举报
回复
不清楚AVI是否直接支持追加写入。

不过很多AVI合并工具都是读两个或多个文件,
然后写入新的AVI文件。
coloriy 2010-12-28
  • 打赏
  • 举报
回复
是的,我用媒体播放软件看,流大小只占20%,文件大小还是原来的大小,有没有办法解决呢,谢谢高手回答
CyberLogix 2010-12-28
  • 打赏
  • 举报
回复
再次写入小于原来写入时间,则文件大小还是10M,只是流大小变了,也就是说avi封装的盒子(文件)大小没变。

说明真是的SAMPLE数据没有写道文件里去,例外VFW API可能有缓存,可能会缓存很多帧才一次FLUSH到文件

2,543

社区成员

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

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