第团含肢一,了解视频格式,知道怎么样从文件中把一帧帧视频数据读取出来。比如可以读取文件头信息,根据头信息来确认所需的各个参数。如果是没规范的视频裸数据,就根据事由定义的分辩率和YUV格式来确认如果读取帧数据,比如是320*240,YUV422,那一帧的数据是320*240*2,每隔这么多数据,就是一帧了。
第二,使用转换公式把YUV转换成RGB。具体代码百度一下即有。
第三,会使用directdraw,不会的话先百度一下学会使用。搞视频显示的,都要使用这个低层的画图库。效率高
第四,开一个40MS的定时器(因为帧率为25Hz,所以每40MS显示画一帧)。每隔40MS *** 作一次:从文件中准确读取出一帧YUV图像数据,把YUV视频数据转换成RGB图像数据,使用directdraw把RGB图像数据画到窗口。一直循环,把文件中数据全部显示完毕。
(把问题这样区分后,各个百度一下,塌世基本可以得到代码,这个是搞开发的基本技能)
注老举:路人是搞视频监控产品开发的,本来是想百度一下有什么润侯汤,不小心看到这个问题,就助人为乐一下。以上回答信不信由你,满不满意由你,不用给分的!
YUV格式具有亮度信息和色彩信息分离的特点,但大多数图像处理 *** 作都是基于RGB格式。因此当要对图像进行后期处理显猛基州示时,需要把YUV格式转换成RGB格式。
1. 基本实现
按照YUV与RGB的变换公式,逐像素访问Y、U、V分量的值,并转换成RGB。
2. 基于查表法的实现
逐一访问像素,进行浮点运算,比较耗时,因而利用空间换时间思路,以查找表来替代转换过程中的一些计算。
3. 基于OpenCV的实现
利用OpenCV提供的转换函数实现YUV到锋瞎RGB的转换,实现简单方便。实现过程,只需枝蔽要合理构造包含YUV数据的Mat。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)