Python和IP摄像机的问题



我从我拥有的 IP 摄像机获取视频流时遇到问题。我正在使用opencv从中获取图像。这是我的代码:

import sys
import cv
video="http://prot-on.dyndns.org:8080/video2.mjpeg"
capture =cv.CaptureFromFile(video)
cv.NamedWindow('Video Stream', 1 )
while True:
  # capture the current frame
  frame = cv.QueryFrame(capture)
  if frame is None:
    break
  else:
    #detect(frame)
    cv.ShowImage('Video Stream', frame)
  if k == 0x1b: # ESC
    print 'ESC pressed. Exiting ...'
    break

实际上,这个东西是有效的,但是显示图像需要太多时间。我猜这是因为 ffmpeg 的这个错误。

    [mjpeg @ 0x8cd0940]max_analyze_duration reached
    [mjpeg @ 0x8cd0940]Estimating duration from bitrate, this may be inaccurate

我不是 Python 专家,所以任何帮助将不胜感激!

首先,mjpeg 是一种相对简单的视频格式。如果您阅读IP摄像机的手册,则非常喜欢,您可以找到如何使用一些JavaScript代码在浏览器中显示视频。 实际上,如果您在谷歌浏览器中打开 http://prot-on.dyndns.org:8080/video2.mjpeg 的链接,您将看到没有任何问题的视频。 (也许你不应该留下相机的真实网址)

其次,据

我所知,相机的帧速率非常慢。 这可能是由于互联网延迟或相机设置造成的。 将您在 Chrome 中看到的内容与您的代码显示的视频进行比较,如果它们的质量相同,则不是您的代码的问题。

相关内容

  • 没有找到相关文章

最新更新