100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Qt利用avilib实现录屏功能 生成avi文件

Qt利用avilib实现录屏功能 生成avi文件

时间:2022-01-07 20:04:36

相关推荐

Qt利用avilib实现录屏功能 生成avi文件

环境:

Qt + vs + avilib

demo下载:/download/birenxiaofeigg/12087607

界面

开始录制:

结束录制:

新建.avi文件

AVI_open_output_file(char* filename);//打开avi文件,不存在,即创建

设置视频参数

void AVI_set_video(avi_t *AVI, int width, int height, double fps, char *compressor);

AVI:为打开avi文件的avi_t;width:图像宽度;height:图像高度;

fps:帧率;compressor:视频压缩类型,比如"MJPG",“H264”

例子:

AVI_set_video(hAviHandle,704,576,25, "H264");AVI_set_video(hAviHandle,704,576,25, "MJPG");

设置音频参数

void AVI_set_audio(avi_t *AVI, int channels, long rate, int bits, int format, long mp3rate);

例子:

AVI_set_audio(hAviHandle, 1, 8000, 16, WAVE_FORMAT_PCM, 128);//rate*bit/(channels*1000) ?= mp3rate

写视频帧

int AVI_write_frame(avi_t *AVI, char *data, long bytes, int keyframe); //保存一帧图像, keyframe

keyframe 表示是否为关键帧(即是否完整的一帧图像数据, jpg每张都是完整的)

写音频帧

int AVI_write_audio(avi_t *AVI, char *data, long bytes);

关闭.avi文件

int AVI_close(avi_t *AVI); //结束保存视频,并会写入文件索引的。

demo下载:/download/birenxiaofeigg/12087607

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。