屏幕录像器可生AVI格式和GIF动画

易语言 2020-08-29 18:13:33

屏幕录像器可生AVI格式和GIF动画

AVI文件体积较大,且容易出现解码问题,一般不建议使用(除非有特殊情况)。

.计次循环首 (取数组成员数 (BMP文件名数组), a)
.如果真 (文件是否存在 (BMP文件名数组 [a]) = 假)
输出调试文本 (BMP文件名数组 [a] + “ 不存在!”)
返回 ()
.如果真结束
BMP文件号 = 打开文件 (BMP文件名数组 [a], , )
移到文件首 (BMP文件号)
bmpFileHdr = 读入字节集 (BMP文件号, 14)
bmpInfoHdr = 读入字节集 (BMP文件号, 40)
w = 取字节集数据 (bmpInfoHdr, #整数型, 5)
h = 取字节集数据 (bmpInfoHdr, #整数型, 9)
s = 取字节集数据 (bmpFileHdr, #整数型, 3) - 54
.如果真 (nFrames = 0)
AVIFileOpen (pfile, AVI保存文件名, 4097, 0)
strhdrVideo.fccType = streamtypeVIDEO
strhdrVideo.fccHandler = 0
strhdrVideo.dwScale = 1
strhdrVideo.dwRate = 帧速率
strhdrVideo.dwSuggestedBufferSize = s
strhdrVideo.rcFrame.left = 0
strhdrVideo.rcFrame.top = 0
strhdrVideo.rcFrame.right = w
strhdrVideo.rcFrame.bottom = h
hr = AVIFileCreateStream (pfile, psV, strhdrVideo)
.如果真结束
tmp_buf = 读入字节集 (BMP文件号, s)
hr = AVIStreamSetFormat (psV, nFrames, bmpInfoHdr, 40)
hr = AVIStreamWrite (psV, nFrames, 1, tmp_buf, s, 16, 0, 0)
nFrames = nFrames + 1
关闭文件 (BMP文件号)
.如果真 (是否为空 (进度显示子程序) = 假)
CallWindowProcA (进度显示子程序, 取数组成员数 (BMP文件名数组), a, 0, 0)
.如果真结束

.计次循环尾 ()