videoInput icon indicating copy to clipboard operation
videoInput copied to clipboard

Program freezes at videoInput.setupDevice()

Open ShikyC opened this issue 1 year ago • 1 comments

I successfully built videoInput within my dll library but when the program runs, it freezes at setting up the camera:

VIDEOINPUT SPY MODE!

SETUP: Looking For Capture Devices
SETUP: 0) HBVCAM FHD CAMERA
SETUP: 1 Device(s) found

SETUP: Setting up device 0

No more outputs from the console since then. I found that it's this line that hangs up:

hr = CoCreateInstance(CLSID_FilterGraph, 0, CLSCTX_INPROC_SERVER,IID_IGraphBuilder, (void**)&VD->pGraph);

Any clues why this happens? I'm using Windows 11.

Code to reproduce the issue:

	videoInput VI;
	int numDevices = VI.listDevices();
	if (numDevices > 0) {
		int vidDevice = 0;
		VI.setupDevice(vidDevice);    // Freezes here
		int width = VI.getWidth(vidDevice);
		int height = VI.getHeight(vidDevice);
		int size = VI.getSize(vidDevice);
	} else {
		printf("No camera devices available.\n");
	}

ShikyC avatar Jan 24 '24 23:01 ShikyC

Hmm - It might be a privilege issue with VI running inside a DLL.

See this thread: https://stackoverflow.com/questions/1304847/is-it-possible-to-lower-the-privilege-level-when-calling-cocreateinstance-on-vis?rq=3

ofTheo avatar Jan 25 '24 16:01 ofTheo