如何播放放在内存中的一帧AVI视频信号?500分!!!(300分)

  • 主题发起人 soberbaby
  • 开始时间
S

soberbaby

Unregistered / Unconfirmed
GUEST, unregistred user!
如何播放放在内存中的一帧AVI视频信号?500分!!!
 
用TfileStream

Var FS:TfileStream;
Buf:pointer;
Begin
GetMem(Buf,YourNewFileSize);
FS:=TFileStream.Create(YourFileName, fmOpenRead);
FS.Position:=YourStartPosition;
FS.Read(Buf^,YourNewFileSize);
FS.Free;
FS:=TFileStream.Create(YourFileName, fmOpenWrite or fmCreate);
FS.Write(Buf^,YourNewFileSize);
FS.Free;
FreeMem(Buf,YourNewFileSize);
End;
 
看不太懂,我是要播放出来,信息在内存中(有地址,没有任何文件),如何“播放“,
清说详细些。
 
最笨的方法就是内存是的AVI信息保存到一个AVI文件中再播放之!
 
Use VOD Technology
 
内存中的一帧视频?那就应该是一个位图或者一个DIB对象?
我不明白内存中一帧视频的概念。我做过视频采集卡的实时压缩,它是在内存中建立一个
视频缓冲区,实际上是按照DIB对象来组织象素的。我定时的将DIB取出来,再压缩,再写
到AVI文件中。你说的内存的一帧视频是不是这样的?
 
首先,如果AVI是压缩过的得先解压.
然后得得到图象的BitmpaInfoHead
再用StretchDIBits
 
可以用DRAWDIB,更方便
 
http://www.banasoft.com/AVPhone.htm
 
To Dick:
请问,如何压缩捕获的帧?能否给一个例子给我,谢谢你。
robin_lo@163.com
 
顶部