2012-11-28 2 views
4

나는 소리와 이미지 프로세싱을하고 있으며, 더 빠른 프로토 타이핑을 위해 파이썬과 opencv를 사용하고 있습니다. 지금까지 저는 전화로 일부 비디오를 녹화했습니다 (웹캠을 사용할 수 없음 - 전화에있는 특정 카메라를 확인해야 함), 데스크톱에 업로드 한 다음 파일로 오프라인으로 작업했습니다.안드로이드에서 데스크톱으로 비디오 스트리밍

조금 지루하고 실시간으로 비디오를 스트리밍하고 해당 비디오 프레임을 파이썬으로 처리하는 방법이 있는지 궁금합니다. 나는 애플 리케이션이 같다는 것을 알았다 : DroidCam하지만 MacOS 용 앱은없고 WiFI를 통해서만 작동하는 것 같다. 나는 또한 android scripting을 체크했으나 파일에 기록하는 유일한 방법이 있습니다.

내 경우에는 대기 시간이 중요하기 때문에 USB를 통한 스트리밍은 더할 나위없이 좋습니다. 나는 adb가 포트 포워딩을 허용한다는 것을 알아 냈다. 특정한 안드로이드/파이썬 USB API없이 소켓을 사용하는 것만 큼 방법이있는 것처럼 보였다.

이미 소켓 또는 adb 전달을 사용하여 직접 작성하는 것이 가장 쉬운 방법일까요?

iOS와 비슷한 점이 좋습니다.

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() 

체크 아웃 : :

답변

0

스트림을받을하기 위해

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() 

코드, 여기에 이미지를 전송하는 코드가하는 UDP 서버를 설정하십시오