0

I was trying the openCV background subtraction code, but I kept getting this error message:

unable to stop the stream: invalid argument

I commented out all other codes now, and the only code I have left is:

import cv2

cap = cv2.VideoCapture('test.avi')

But the error message remains the same when I run it.

I was using a Ubuntu system.

What should I do?

Haoyu Chen
  • 11
  • 1
  • 1
  • 4

1 Answers1

2

It seems to be a test.avi file related problem... can you please check with this file i just tested right now? http://www.engr.colostate.edu/me/facil/dynamics/files/drop.avi

import cv2

cap = cv2.VideoCapture('drop.avi')

the code is ok and should work. You can check your dependencies and you can do one last try to ensure your opencv is installed properly, using official example code:

import numpy as np
import cv2

cap = cv2.VideoCapture(0)

while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()

    # Our operations on the frame come here
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # Display the resulting frame
    cv2.imshow('frame',gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

This code will show your webcam. If it works i'm quite sure your problem is with your file.

Mellgood
  • 195
  • 2
  • 12