怎么把pygame的过程录制到mp4

Posted nocomment

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么把pygame的过程录制到mp4相关的知识,希望对你有一定的参考价值。

其实蛮无聊的,首先,用的是cv2模块,也就是没有音频,只是动画,不过mp4压缩比大,体积小,windows支持自动播放(比如flash格式flv是不支持的)。
所谓录制,就是一帧一帧图像写入video,想想很简单,不过有个数据接口问题,代码如下(插入到pygame的刷新一帧函数的结束部分即可):

    def printAll(self):
        #。。。。。。。pygame表示各种物体代码块
        if CMG.step == 1:
            fps = 12
            size = (800,570)
            file_path = r"C:UsersAdministratorDesktopaa1" + str(int(time.time())) + ".mp4v"#导出路径
            fourcc = cv2.VideoWriter_fourcc(I,4,2,0)#不同视频编码对应不同视频格式(例:‘I‘,‘4‘,‘2‘,‘0‘ 对应avi格式)
            CMG.video = cv2.VideoWriter( file_path, fourcc, fps, size )
        else:
            imagestring = pygame.image.tostring(CMG.screen.subsurface(0,0,800,570),"RGB")
            pilImage = Image.frombytes("RGB", (800,570), imagestring)
            img = cv2.cvtColor(numpy.asarray(pilImage),cv2.COLOR_RGB2BGR)
            
            CMG.video.write(img)        #把图片写进视频
            if CMG.step == len(CMG.gameAnswer)+1:
                CMG.video.release() #释放

 

以上是关于怎么把pygame的过程录制到mp4的主要内容,如果未能解决你的问题,请参考以下文章

以 mp4 格式录制、保存和/或转换视频?

如何将flv视频格式转换为mp4视频格式

JavaCV开发详解之27补充篇1:摄像头画面录制成多个mp4视频分片文件,支持树莓派嵌入式安卓linux和windows等平台摄像头画面录制视频分片文件

JavaCV开发详解之27补充篇1:摄像头画面录制成多个mp4视频分片文件,支持树莓派嵌入式安卓linux和windows等平台摄像头画面录制视频分片文件

音频队列服务录制到 .mp4 文件,无法播放。和魔术饼干问题

iOS - 录制 mp4 文件