最简单的视频流?
我有一台相机,它每秒拍大约10张照片,然后把这些照片发送到电脑上。我需要在电脑上把这些连续的图片显示成一个实时视频。
我只需要用一些Python的图形界面框架,创建一个可以显示单张图片的控件,然后快速地更换这个控件里的图片就可以了吗?
这样做会不会太简单了?我是不是应该用某种视频流库?如果是的话,你有什么推荐的吗?
1 个回答
2
那这样做会不会很无聊呢?
不会的。其实根本就行不通。
要让视频正常播放,有一些技巧。苹果的QuickTime就用到了这些技巧。微软的很多产品也用到了,还有一些开源的视频播放工具也在用。
这些技巧之间有很多相似之处,但都非常麻烦。
压缩。完整的视频文件非常大。想想看,640x480的分辨率,24位颜色,每秒30帧,数据量很快就会累积起来。如果不压缩,根本无法快速读取这些数据。
缓冲和时序。有时候数据传输速度和帧率对不上。你需要一个缓冲区来存放准备好显示的帧,还需要一个非常精准的时钟,确保它们在正确的时间间隔内显示。
把一系列JPEG图片做成视频就是iPhoto和iMovie的用途。
通常,我们会从图片创建视频文件,然后通过标准的视频播放器播放这个视频文件。从图片制作QuickTime电影或Flash电影其实并不难。有很多工具可以帮助你把图片做成电影。几乎任何照片管理软件都能创建幻灯片并将其保存为某种标准格式的视频。
实际上,我觉得Graphic Converter也能做到这一点。