我在回调函数的Databuf里得到了不断回调上来的视频数据,每次DataBuf都会更新,想写入一个文件中,该如何去做?现在是这样的
在回调里这样写的
       pStr := String(DataBuf);
      datalength := Length;
      Mpeg4File := TFileStream.Create(Mpeg4FilePath,fmOpenWrite) ;
      Mpeg4File.Write(pStr,Length) ;
      Mpeg4File.Free;
发现数据是可以写进去,但是录像文件只有40个字节,也就是只有文件头写进去了,,后面的好像写不进去的样子
我在VC里能实现录像,几秒钟也就几百K的大小,请问大侠们这是为何? Delphi没学过,自己刚开始看,请帮帮忙

解决方案 »

  1.   

    Mpeg4File   :=   TFileStream.Create(Mpeg4FilePath,fmOpenWrite)   ; 
    Mpeg4File.Seek(0,soFromEnd);//往尾部添加资源   
    .........
      

  2.   

    不是啊 回调里上来的数据第一次是40个字节,但是最后存下来的还是40个字节 按你说的应该保存下来的比原来大,我的Delphi好像没有帮助,seek的两个参数代表什么呢? create是否就相当于是关联文件了,我用Assign  然后Append 然后writeln 发现2秒的时间竟然写入了13M的数据,在VC里13M要经过15分钟左右.