2

使用 Python,我需要能够从网络摄像头创建一个 http 流视频并从该 http 源捕获静态图像。我以为我可以使用 VLC 播放器流式传输视频并使用 python 捕获一帧,但如果 VLC 正在使用网络摄像头,Python 无法使用它来获取静止图像。这导致我认为我可以使用 python 流式传输视频,并且我可以在需要时使用相同的脚本来获取静止图像。我将使用我们使用的专有软件使用http流显示视频,单击按钮时抓取静止图像。

请就最好的方法提出任何建议吗?

谢谢

4

1 回答 1

0

这取决于网络摄像头主机是 Windows 还是 Linux:

#!/usr/bin/env python

import pygame, sys
import pygame.camera
from pygame.locals import *
pygame.init()
pygame.camera.init()
screen = pygame.display.set_mode((320,240))
cam = pygame.camera.Camera("/dev/video4",(320,240))

cam.start()
while 1:
    image = cam.get_image()
    screen.blit(image,(0,0))
    pygame.display.set_caption(str("TUX PLOT CAM"))
    pygame.display.update()
    for event in pygame.event.get():
      if event.type == pygame.QUIT:
         sys.exit()

我在这里找到了这个片段:(https://www.linuxquestions.org/questions/programming-9/how-to-stream-a-webcam-with-python-905968/

而且,似乎有一个适用于 Windows 的解决方案:http: //videocapture.sourceforge.net/

这是另一个片段(也使用 pygame): http ://www.jperla.com/blog/post/capturing-frames-from-a-webcam-on-linux

于 2013-04-19T16:40:41.120 回答