2013-06-25 3 views
0

Я пытаюсь подключить IP-камеру с OpenCV 2.4.5 в Python 2.7 с помощью этой функции cap=cv2.VideoCapture("http://192.168.180.60:82/videostream.cgi?user=admin&pwd="), но это дает мне эту ошибку:icvOpenAVI_XINE() ошибка в VideoCapture OpenCV

input_bluray: (bluray_class_get_instance:1455) bluray_class_get_instance 
input_bluray: (bluray_class_get_instance:1455) bluray_class_get_instance 
demux_wavpack: (open_wv_file:127) open_wv_file: non-seekable inputs aren't supported yet. 
(ERROR)icvOpenAVI_XINE(): Unable to open source 'http://192.168.180.60:82/videostream.cgi?user=admin&pwd=' 

В this forum они обсудите ошибку icvOpenAVI_XINE как проблему ffmpeg с флагом --enable-shared, я сделал это много раз, и проблема не устранена

ответ

0

Я нашел решение, чтобы избежать этой ошибки без изменений в OpenCV. Решение описывается следующим образом: 1. Установите vlc: sudo apt-get install vlc 2. По командной строке напишите этот скрипт: vlc "http://192.168.180.60:82/videostream.cgi?user=admin&pwd=" --sout "#transcode{vcodec=mp2v,vb=800,scale=1,acodec=mpga,ab=128,channels=2,samplerate=44100}:duplicate{dst=rtp{sdp=rtsp://:8554/output.mpeg},dst=display}" --sout-keep где http: // 192.168.180.60:82/videostream.cgi?user=admin & pwd = содержит мой поток Ip-камеры и rtsp: //: 8554/output.mpeg - это результат, созданный VLC 3. Вызовите потоковое использование с помощью OpenCV с помощью этой функции: cap=cv2.VideoCapture("rtsp://:8554/output.mpeg")