从Android到桌面的视频流

时间:2012-11-28 20:15:52

标签: android iphone python ios streaming

我正在进行声音和图像处理以及更快的原型设计我使用python和opencv。到目前为止,我已经在手机上录制了一些视频(无法使用网络摄像头 - 需要检查我手机中的特定相机),上传到桌面,然后在文件中离线工作。

虽然它变得有点乏味,但我想知道是否有办法在python中实时流式传输视频和处理这些视频帧?我注意到有这样的应用程序:DroidCam但是没有适用于MacOS的应用程序,似乎只能通过WiFI运行。我还检查了android scripting,但只有一种方法可以记录到文件中。

因为在我的情况下,低延迟对于通过USB进行流式传输非常重要。我注意到adb允许端口转发所以看起来有一种方法可以做没有特定的android / python USB api并且只使用套接字。

是否已存在任何工具或最简单的方法是使用套接字和adb转发自行编写内容?

类似于iOS的东西也会很棒。

1 个答案:

答案 0 :(得分:1)

尝试设置UDP服务器,这是发送图像的代码,

UDPSock = socket(AF_INET,SOCK_DGRAM)

  while 1:
    image = camProxy.getImageLocal(nameId)
    size = (image[0], image[1])
    data = image[6]
    im = Image.fromstring("YCbCr", size, data)
    s = StringIO.StringIO()
    im.save(s, "JPEG")

    UDPSock.sendto(s.getvalue(), addr)

    camProxy.releaseImage(nameId)

  UDPSock.close()

接收流的代码:

  UDPSock = socket(AF_INET,SOCK_DGRAM)
  UDPSock.bind(addr)

  while 1:
    data, addr = UDPSock.recvfrom(buf)
    # here add code to process image and receive image

  UDPSock.close()

退房: