Fixed VideoCapture::open() does not release previous capture sources (Bug #3150).
VideoCapture didn't call release method and just ignored the new capture sources. OpenCV documentation: bool VideoCapture::open(const string& filename); bool VideoCapture::open(int device); The methods first call VideoCapture::release() to close the already opened file or camera.
This commit is contained in:
parent
68a992b075
commit
21211308d0
@ -490,14 +490,14 @@ VideoCapture::~VideoCapture()
|
||||
|
||||
bool VideoCapture::open(const String& filename)
|
||||
{
|
||||
if (!isOpened())
|
||||
if (isOpened()) release();
|
||||
cap = cvCreateFileCapture(filename.c_str());
|
||||
return isOpened();
|
||||
}
|
||||
|
||||
bool VideoCapture::open(int device)
|
||||
{
|
||||
if (!isOpened())
|
||||
if (isOpened()) release();
|
||||
cap = cvCreateCameraCapture(device);
|
||||
return isOpened();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user