aga*_*ust 6 python video pygame
我正在尝试本教程将网络摄像头视频流式传输到 PyGame 没有错误.. https://www.youtube.com/watch?v=H6ijuSmv5N0
还有这样的剧本..
import pygame, sys
import pygame.camera
from pygame.locals import *
pygame.init()
pygame.camera.init()
screen = pygame.display.set_mode((640, 480))
cam = pygame.camera.Camera("/dev/video0", (640, 480))
cam.start()
while 1:
image = cam.get_image()
screen.blit(image, (0,0))
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.QUIT:
#save as video output
sys.exit()
Run Code Online (Sandbox Code Playgroud)
但是..在这里,当我想将该流保存为视频输出时遇到问题..如 mp4、3gp、avi 等。
在此线程中,pygame.image.save(img, "image.jpg")将输出保存为图像。
/sf/answers/1435185601/
Pygame的多媒体输出能力受到严重限制:它只能保存未压缩的BMP图像,并且无法保存视频格式。
您必须使用另一个库来提供图像帧,渲染视频 - 或将帧逐帧保存在文件夹中,按新月顺序对文件名进行编号,然后使用实用程序将结果转换为视频。
该项目似乎有一个类来调用 libffmpeg 来编码视频,在 Python 调用中逐帧传递: https: //github.com/kanryu/pipeffmpeg - 您只需要一种将 pygame Surface 对象转换为预期的方法ffmpeg 的“frameraw”属性。
https://github.com/kanryu/pipeffmpeg/blob/master/pipeffmpeg.py