File Exchange

image thumbnail

VCAPG2

version 1.0 (144 KB) by

VCAPG2 is DirectShow based video capture DLL that support various types of video capture cards.

4.58974
39 Ratings

7 Downloads

Updated

No License

VCAPG2 is a new version of MATLAB resident video capture program which employs Microsoft's DirectShow libraries rather than the older Video for Windows (VfW) library.
In order to run VCAPG2, you will need to install the DirectX runtime libraries.
This code has been developed and tested with DirectX 8.1 and 9.0. with MATLAB6.1/6.5.
Features are
1. Up to 6 video capture cards can grab images at one command.(I tested one and two video capture cards)
2. Supported video capture devices are including IEEE1394 based DV CAM, USB Camera as well as old VFW based Camera.(I tested DV-CAM, USB Camera, VFW based Camera)
3. VCAPG2 can run up to almost twice as fast as VfW based program such as VCAPG [1] which is available both source and binary code from http://www.ikko.k.hosei.ac.jp/~matlab/matkatuyo/
that I published.

Plaforms: 2000/XP
(NOTE: 95/98/ME are not supported!! Please use vcapg)

Supported default capture color mode only RGB 16bit. However depending on video capture card, you may change different color modes by clicking task tray icon.
VCAPG2 is a MATLAB residents program; you can confirm residents or not left bottom side of task tray icon. From task tray icon, you can change video mode and crossbar and/or TV tuner mode, which are depending on installed video capture cards.
If you want to remove VCAPG2 from MATLAB, type clear all.

%%%%%%%%%
%sample script for One video capture card is installed.
%Initialization mode
clear all;
cardnum=vcapg2; % you will get available video capture devices number usually 1
% capture mode
aa=vcapg2;% grabbing camera image.
imshow(vcapg2);
clear all; % remove

%%%%%%%%%
%sample script for Two camera capture cards are installed
clear all;
%Initialization mode
cardnum=vcapg2; % you will get available video capture devices number usually 2
% capture mode
[aa,bb]=vcapg2;% grabbing camera image.
subplot(1,2,1);imshow(aa);subplot(1,2,2);imshow(bb);

%%%%%%%%%
%sample script for Two camera capture cards are installed
% if you have two video capture card, you can choose video card at initialization mode
clear all;
cardnum=vcapg2(1); % you can set 0 or 1
% capture mode
aa=vcapg2;% grabbing camera image.
imshow(aa);
%%%%%%%%%

%%%%%%%%%
%sample script for One video capture card is installed.
% realtime image processing example just process diff at Red image
%Initialization mode
clear all;
cardnum=vcapg2; % you will get available video capture devices number usually 1
close all;figure(1);set(1,'doublebuffer','on');
% capture mode
for i=1:100
aa=vcapg2;% grabbing camera image.
subplot(2,1,1);imshow(aa);subplot(2,1,2);imshow(diff(double(aa(:,:,1)),[]);
drawnow;% this is important to view realtime.
end
clear all; % remove

THIS IS BETA VERSION. WE ONLY UPLOAD BINARY DLL.
For further update information browse to:

http://www.ikko.k.hosei.ac.jp/~matlab/matkatuyo/vcapg2.htm

Rights to use, citation:
Authors may encourage to maintenance and consuming time to develop this utility, please cite the following reference in your paper or academic research.
Kazuyuki Kobayashi,?hMATLAB Utilization Book?h, Shuwa System Co, Ltd., 2001,ISBN 4-7980-0141-4

Ikko K. Kobayashi

Comments and Ratings (59)

in 2015 it is still one of the best solutions out there

Is this support for windows 8.1 OS?
i am receiving(Undefined function or variable 'vcapg2'.)

I am not able to get the function/example to work on Win7 + Matlab2012a. Copying the dll to working folder and just calling the dll name does not seem to work:

>> a = vcapg2
Undefined function or variable 'vcapg2'.

The generic Matlab DLL function calling instruction instruct to use loadlibrary function too call dll functions, but to use that also a function header file is needed and that is not provided in this release.

Is there any chance getting this function to run anymore on a modern installation of Matlab?

Alex

Alex (view profile)

Have anybody been able to change the resolution of the webcam using AMCap or GraphEdit (as suggested by the contributor)? I have used both but I have not been able to increase the resolution. When running VCAPG2, it always uses the default resolution (320x240). I want to to set it to the highest one (640x480).

Stephen

Stephen (view profile)

This has been really useful. Worked straight away with my Logitech cam.

Alex Long

Hi, how to implement in my GUI axes. I got 2 axes1 and axes2. But i run the my gui is always pop up show the video in figure.Can any 1 help me?

Sebastien PARIS

Please find a win32/64 compatible version of VCAPG2 modified by Pr Fehn in my toolbox : http://www.mathworks.com/matlabcentral/fileexchange/24092-face-detection-toolbox

It may help some of you.

Kai Tang

It could make it work with aa= vcapg2(0) or aa= vcapg2(1), but aa= vcapg2 doesn't work at all. Kazuyuki Kobayashi, please come out say something to help all of us.
 

Kai Tang

I have tried the example to make two webcam work at the same time. But failed. I could not get any image from any window, they are black or blank. I have also tried to implement them separately, it is working by using different USB. Could you please help me to figure out the problem. Thanks and look forward...

Jay

Jay (view profile)

Great work mate. Works a treat even with my wireless web camera over my local network.

Alfredo

I'm new to this subject. I want to make the trajectory of an object using vcapg2 Matlab. I have the following code:

centros = [];
 video = vcapg2(1);
 %%% Matrix of RGB color to find
 colors = [255 138 139];
 R = colors(1);
 G = colors(2);
 B = colors(3);
 
%%% Umbral
tr = 30;

dif = (abs(I(:,:,1)-R)<tr)&(abs(I(:,:,2)-G)<tr)&(abs(I(:,:,3)-B)<tr);

I get the following error:

??? Index exceeds matrix dimensions.

Error in ==> proyecto at 22
diferencia = (abs(I(:,:,1)-R)<tr)&(abs(I(:,:,2)-G)<tr)&(abs(I(:,:,3)-B)<tr);

I guess that's why the video format of my variable. Could you help me in my error?

Thanks...

Sebastien PARIS

Radek : Please see my face detection toolbox. You have a post of a user in order to compile it with 64 system. Regards

Radek

Radek (view profile)

I want to use vcapg2 under matlab 7.9 64bit, but this release probably does not support mex-files with a .dll file extension. ('??? Undefined function or variable 'vcapg2'.) I tried to compile new mex-file, but with no success...(vs2008, newest DXSDK, bug report attached) Can anyone help me, pls? I want to capture and process images from two USB devices... thx.

bug report:
Trial>> mex -v -g vcapg2.cpp -f msvc60opts.bat
 This is mex, Copyright 1984-2007 The MathWorks, Inc.
 
-> Options file specified on command line
----------------------------------------------------------------
-> Options file = MSVC60~1.BAT
      MATLAB = C:\MATLAB\R2009B
-> COMPILER = cl
-> Compiler flags:
         COMPFLAGS = -c -Zp8 -G5 -W3 -DMATLAB_MEX_FILE -nologo
         OPTIMFLAGS = -O2 -Oy- -DNDEBUG
         DEBUGFLAGS = -Zi -Fd"vcapg2.pdb"
         arguments =
         Name switch = /MT /Fo
-> Pre-linking commands =
-> LINKER = link
-> Link directives:
         LINKFLAGS = /dll /export:mexFunction /MAP /LIBPATH:"C:\MATLAB\R2009B\extern\lib\win32\microsoft\msvc60" libmx.lib libmex.lib libmatlb.lib libmat.lib /implib:C:\USERS\CELDA\APPDATA\LOCAL\TEMP\MEX_P1~1\templib.x
         LINKDEBUGFLAGS = /debug
         LINKFLAGSPOST =
         Name directive = /out:"vcapg2.dll"
         File link directive =
         Lib. link directive =
         Rsp file indicator = @
-> Resource Compiler = rc /fo "mexversion.res"
-> Resource Linker =
----------------------------------------------------------------
 
 
--> cl -c -Zp8 -G5 -W3 -DMATLAB_MEX_FILE -nologo /MT /FoC:\USERS\CELDA\APPDATA\LOCAL\TEMP\MEX_P1~1\vcapg2.obj -IC:\MATLAB\R2009B\extern\include -IC:\MATLAB\R2009B\simulink\include -Zi -Fd"vcapg2.pdb" -DMX_COMPAT_32 vcapg2.cpp
 
 
  C:\MATLAB\R2009B\BIN\MEX.PL: Error: Compile of 'vcapg2.cpp' failed.
 
??? Error using ==> mex at 221
Unable to complete successfully.

Dave Berger

RE: my previous post

I figured out that the dll detected 4 devices when, in fact, there were only 2 devices attached. I don't know what the other two devices are. My kludge is to force the number of devices to be 2 by hacking the code and recompiling. Still looking for a more elegant solution.

Dave Berger

I have noticed that there are several submissions here indicating a stack dump when using a command similar to "cardnum=vcapg2". I am using 2 cameras (Logitech WebCam 9000's) and can access the cameras individually via
"cardnum=vcapg2(0)" or "cardnum=vcapg2(1)" but not both at the same time. Has anyone had any luck doing this? I noticed someone posting about "stereo vision" --- perhaps that person could shed some light.

shithun

i dont how to copy this file how to make as to work

John Melek

WOW. Very good you saved me a lot of time. Thanks very much.

Mohammad Amin

any one got any Idea how to output the processed frames to a PC to TV card to display video on TV (Note should respect the frame rate like 60 Hz)

Niko P

Very good. Only bad thing that camera settings can't be messed with. Captures are what they are. I gor segmentation error in beginning while trying to copy the examples.

MATLAB Version: 7.0.1.24704 (R14) Service Pack 1

But it worked when I put

"
vcapg2(0);
cardnum = vcapg2;
"

instead of plain

"
cardnum = vcapg2;
"

hu jin

i had tried to use NI-IMAQ in Labview, a more powerful package for the image aquireing and process,but i find this DLL too convinent than it looks like!!!. I am think about tell the developer of labview call this dll in labview Mathscript and enjoy it.

David Allison

This dll works great. My only question is how to initialize it with the 2nd input on the crossbar. I can do this with the context menu or with Graphedit but would like to be able to initialize the capture and then shut off the camera.

Nostratic Clemson

I'm giving this a 5 star rating because it was exactly the kind of application i was looking for. It's good to know that such extremely useful applications are available for free download and use. I personally know of many research groups that are trying quite tortuous ways at getting live feed from USB and firewire cameras into MATLAB since they don't have the Image Acquisition toolbox. Mine was one of them. This tool speeds up by several days and possibly hours of time spent by students looking at ways of getting 'video' fed in.

People at my school are going to love this as word spreads. It's a credit to the author's modesty and generosity that this one tool is available for free use, and its pretty simple to use.

NOTE: THERE IS A BRACE MISALIGNMENT IN THE FINAL EXAMPLE. ADD AN EXTRA BRACE TO THE END OF THE IMSHOW COMMAND IN THE 4TH TO LAST LINE THERE. PRETTY SIMPLE REALLY.

Jorge Nieto

It works very good on Matlab 2007b
Could you please tell how can I remove it from memory without using "ALL" in the "CLEAR ALL" instruction so I dont lose my other variables??
Thanks in advance

Rob S

Kazuyuki, thank you for your efforts on this. Please tell me, can the preview window be incorporated into a customised GUI?

chuan chuah

window vista can support?

Mustafa Bahrudin

which MATLAB version that i need to use for vcapg2?
I hv tried 7.0 and 6.5.. sadly it cant work on either of them.

Bartlomiej Zdanowski

Very good library, except that it consumes a lot of CPU. I cannot explain that. Previous version VCAPG didn't consume that amount of CPU but it was based on WFV not DirectX.

Nelson Gonçalves

Yoni,

 1) Ingles es la lenguage tecnica del mundo. Aprendete-la !
 2) Se supieras ingles, saberias que esta pagina es sobre um software para leer hasta 6 webcams en Matlab

yonni s

hello
mi nombre es yonni ,soy estudiante de electronica ,quisiera saver como puedo usar dos camaras con matlab al mismo tiempo,si conocen alguna pagina podrian enbiarme la direccion por fa ..........grasias .....yonni

ali aghamohammadi

Masato Kawanishi

hanali kento

good product

Robin Reusens

Ali Amiri

poudre dor

superb

JUFA Lucas

Great and short code.

When using TV card, how can someone separate different channels of TV stations? Eg: CCTV has CCTV1, CCTV2, ..., CCTV10, how can I separate so that I can view one at a time based on my own choice?
Thanks.

Brian Ho

Very good. this is good and fast enough. May help me to realize the stereo vision project

Andi T

It's Wonder

Kamran Iqbal

It has solved my problem to view media using matlab. Thanksx.

Dhanya Pillai

excellent

jaswinder kaur

I have gained a lot of information from this document.

kantilal rane

its good for future work

Freddy Smith

How can I initialize the size of the window, the capture program is opening?
Because sometimes my Cam has different sizes and I don´t know how to set the right size.

Sarosh Patel

clear all;
cardnum=vcapg2; % you will get available video capture devices number usually 1
% capture mode
aa=vcapg2;% grabbing camera image.
imshow(vcapg2);

------------------------------------------------------------------------
       Segmentation violation detected at Wed Jun 16 17:47:10 2004
------------------------------------------------------------------------

Configuration:
  MATLAB Version: 6.5.0.180913a (R13)
  Operating System: Microsoft Windows 2000
  Window System: Version 5.0 (Build 2195: Service Pack 4)
  Processor ID: x86 Family 15 Model 1 Stepping 3, GenuineIntel
  Virtual Machine: Java 1.3.1_01 with Sun Microsystems Inc. Java HotSpot(TM) Client VM
    (mixed mode)

Register State:
  EAX = 00000058 EBX = 01b4af08
  ECX = 0000000a EDX = 00000000
  ESI = 00000030 EDI = 00dfd164
  EBP = 00dfd148 ESP = 00dfd140
  EIP = 00155123 FLG = 00010202

Stack Trace:
  [0] vcapg2.dll:0x00155123(0x00dfd164, 48, 40, 0)
  [1] vcapg2.dll:0x001521e6(1504800, 0x01ade4a0, 0, 0)
  [2] vcapg2.dll:0x00153823(1, 0x00dfd5d0, 0, 0x00dfd6d4)
  [3] libmex.dll:_mexRunMexFile(1, 0x00dfd5d0, 0, 0x00dfd6d4) + 71 bytes
  [4] m_interpreter.dll:void __cdecl inCallMexFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const,void (__cdecl*)(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const),struct _mex_context *,struct mexfiles *)(1, 0x00dfd5d0, 0, 0x00dfd6d4) + 476 bytes
  [5] m_interpreter.dll:void __cdecl inRunMexFile(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const,struct mexfiles *)(1, 0x00dfd5d0, 0, 0x00dfd6d4) + 126 bytes
  [6] m_interpreter.dll:void __cdecl inExecMexFile(int,int,struct mxArray_tag * * const,struct MATLAB_Function_tag *)(1, 0, 0x00dfd6d4, 0x01b4af08) + 82 bytes
  [7] m_interpreter.dll:_inExecFunction(1, 0, 0x00dfd6d4, 0x01b4af08) + 38 bytes
  [8] m_interpreter.dll:_inMMexExecute(534, 0x01b4af08, 1, 0) + 533 bytes
  [9] m_interpreter.dll:enum opcodes __cdecl inMMex(char const *,int,int,int,int *,int *)(0x1879785c "vcapg2", 534, 1, 0) + 94 bytes
  [10] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,struct inPcodeNest_tag volatile *)(2, 0, 0, 0x01a1eac0) + 2143 bytes
  [11] m_interpreter.dll:_inInterPcode(2, 0x00dfdc54, 0, 0) + 193 bytes
  [12] m_interpreter.dll:enum inExecutionStatus __cdecl in_local_call_eval_function(int *,struct _m_parser_interface *,struct _pcodeheader *,int *,struct mxArray_tag * * const,enum inDebugCheck)(0, 0x7a87fa78, 0x00dfdc54, 0x00dfdcf8) + 174 bytes
  [13] m_interpreter.dll:_inEvalStringWithIsVarFcn(0x185b4ef0 "cardnum=vcapg2; % you will get a..", 80, 0, 0) + 531 bytes
  [14] m_interpreter.dll:_inEvalString(0x185b4ef0 "cardnum=vcapg2; % you will get a..", 80, 0, 0) + 50 bytes
  [15] m_interpreter.dll:enum inExecutionStatus __cdecl inEvalCmdWithLocalReturnandtype(char const *,int *,enum inDebugCheck)(0x185b4ef0 "cardnum=vcapg2; % you will get a..", 0, 2, 0x00dfde30) + 68 bytes
  [16] m_interpreter.dll:_inEvalCmdNoEnd(0x185b4ef0 "cardnum=vcapg2; % you will get a..", 1, 0x0047f617, 11) + 16 bytes
  [17] matlab.exe:_mnParser(0, 0x00e05c7c, 0, 48) + 1001 bytes
  [18] matlab.exe:_WinMain@16(4194304, 0, 0x00e05c7c, 1) + 3872 bytes
  [19] matlab.exe:_WinMainCRTStartup(0, 0, 0x7ffdf000, 0) + 308 bytes
  [20] KERNEL32.dll:0x7c581af6(0x0047172c, 0, 200, 256)

This error was detected while a MEX-file was running. If the MEX-file
is not an official MathWorks function, please examine its source code
for errors. Please consult the External Interfaces Guide for information
on debugging MEX-files.

If it is an official MathWorks function, please
follow these steps in reporting this problem to The MathWorks so
that we have the best chance of correcting it:

  1. Send this crash report to segv@mathworks.com for automated analysis.
     For your convenience, this information has been recorded in:
       C:\DOCUME~1\Sarosh\LOCALS~1\Temp\matlab_crash_dump.1264

  2. Also, if the problem is reproducible, send the crash report to
     support@mathworks.com along with:
       - A specific list of steps that will reproduce the problem
       - Any M, MEX, MDL or other files required to reproduce the problem
       - Any error messages displayed prior to this crash report
     A tec
hnical support engineer will contact you with further information.

Thank you for your assistance. Please save your workspace and restart
MATLAB before continuing your work.

Error in ==> C:\MATLAB6p5\work\vcapg2.dll

arni sicam

1. I dowloaded it
2. I copied it
3. I tried to run it
4. It worked but not according to what I want

I am using a black and white firewire CCD
camera. The pixel value for the output image given by vcapg2 is in 8bit configuration. I need 16bit configuration. Does anybody know how to do this?

Tex Logan

It crashed when I ran it with the command "vcapg2". Listed below displays the message I saw. Can anyone help?

Stack Trace:
  [0] vcapg2.dll:0x0ffb5123(0x00dfd164, 48, 40, 0)
  [1] vcapg2.dll:0x0ffb21e6(0x0ffcf620, 0, 0, 0)
  [2] vcapg2.dll:0x0ffb3823(0, 0x00dfd5d0, 0, 0x00dfd6d4)
  [3] libmex.dll:_mexRunMexFile(0, 0x00dfd5d0, 0, 0x00dfd6d4) + 71 bytes
  [4] m_interpreter.dll:void __cdecl inCallMexFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const,void (__cdecl*)(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const),struct _mex_context *,struct mexfiles *)(0, 0x00dfd5d0, 0, 0x00dfd6d4) + 476 bytes
  [5] m_interpreter.dll:void __cdecl inRunMexFile(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const,struct mexfiles *)(0, 0x00dfd5d0, 0, 0x00dfd6d4) + 126 bytes
  [6] m_interpreter.dll:void __cdecl inExecMexFile(int,int,struct mxArray_tag * * const,struct MATLAB_Function_tag *)(0, 0, 0x00dfd6d4, 0x014d8fb0) + 82 bytes
  [7] m_interpreter.dll:_inExecFunction(0, 0, 0x00dfd6d4, 0x014d8fb0) + 38 bytes
  [8] m_interpreter.dll:_inMMexExecute(530, 0x014d8fb0, 0, 0) + 533 bytes
  [9] m_interpreter.dll:enum opcodes __cdecl inMMex(char const *,int,int,int,int *,int *)(0x197ffe5c "vcapg2", 530, 0, 0) + 94 bytes
  [10] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,struct inPcodeNest_tag volatile *)(2, 0, 0, 0x013ae2b8) + 2143 bytes
  [11] m_interpreter.dll:_inInterPcode(2, 0x00dfdc54, 0, 0) + 193 bytes
  [12] m_interpreter.dll:enum inExecutionStatus __cdecl in_local_call_eval_function(int *,struct _m_parser_interface *,struct _pcodeheader *,int *,struct mxArray_tag * * const,enum inDebugCheck)(0, 0x7a87fa78, 0x00dfdc54, 0x00dfdcf8) + 174 bytes
  [13] m_interpreter.dll:_inEvalStringWithIsVarFcn(0x19626010 "vcapg2\n", 7, 0, 0) + 531 bytes
  [14] m_interpreter.dll:_inEvalString(0x19626010 "vcapg2\n", 7, 0, 0) + 50 bytes
  [15] m_interpreter.dll:enum inExecutionStatus __cdecl inEvalCmdWithLocalReturnandtype(char const *,int *,enum inDebugCheck)(0x19626010 "vcapg2\n", 0, 2, 0x00dfde30) + 68 bytes
  [16] m_interpreter.dll:_inEvalCmdNoEnd(0x19626010 "vcapg2\n", 1, 0x0047f617, 11) + 16 bytes
  [17] matlab.exe:_mnParser(0, 271244, 0, 48) + 1001 bytes
  [18] matlab.exe:_WinMain@16(0x00400000 "MZ�", 0, 271244, 1) + 3872 bytes
  [19] matlab.exe:_WinMainCRTStartup(0, 1, 0x7ffdf000, 0xf0200cf4) + 308 bytes
  [20] kernel32.dll:0x77e7eb69(0x0047172c, 0, 0, 0)

Max Yuen

I downloaded it and it works well.
Thank you~

Chris Ash

1.I downloaded it
2.I copied it
3.I tried to run it
4. It worked without problems
THANKS A LOT

chris

Mario Aguilar

Regarding the segmentation error, contrary to some of the instructions, in some setups you do need to pass a camera number parameter to vcapg2 the first time you call it. Try 'vcapg2(0)' as a starter unless you know the index of the specific camera you need.

Sergey Tsimbalist

I have installed this and I am using USB Creative WebCam Plus. After that I just type 'vcapg2' will appear preview window. I select my WDM driver and get following error!
------------------------------------------------------------------------
       Segmentation violation detected at Tue Oct 28 12:16:41 2003
------------------------------------------------------------------------

Configuration:
  MATLAB Version: 6.5.0.180913a (R13)
  Operating System: Microsoft Windows XP
  Window System: Version 5.1 (Build 2600: Service Pack 1)
  Processor ID: x86 Family 15 Model 1 Stepping 3, GenuineIntel
  Virtual Machine: Java 1.3.1_01 with Sun Microsystems Inc. Java HotSpot(TM) Client VM
    (mixed mode)

Register State:
  EAX = 00000058 EBX = 0144c8f8
  ECX = 0000000a EDX = 00000000
  ESI = 00000030 EDI = 00dfd164
  EBP = 00dfd148 ESP = 00dfd140
  EIP = 0fef5123 FLG = 00010202

Stack Trace:
  [0] vcapg2.dll:0x0fef5123(0x00dfd164, 48, 40, 0)
  [1] vcapg2.dll:0x0fef21e6(0x0ff0f620, 0, 0, 0x77c3c8c1)
  [2] vcapg2.dll:0x0fef3823(0, 0x00dfd5d0, 0, 0x00dfd6d4)
  [3] libmex.dll:_mexRunMexFile(0, 0x00dfd5d0, 0, 0x00dfd6d4) + 71 bytes
  [4] m_interpreter.dll:void __cdecl inCallMexFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const,void (__cdecl*)(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const),struct _mex_context *,struct mexfiles *)(0, 0x00dfd5d0, 0, 0x00dfd6d4) + 476 bytes
  [5] m_interpreter.dll:void __cdecl inRunMexFile(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const,struct mexfiles *)(0, 0x00dfd5d0, 0, 0x00dfd6d4) + 126 bytes
  [6] m_interpreter.dll:void __cdecl inExecMexFile(int,int,struct mxArray_tag * * const,struct MATLAB_Function_tag *)(0, 0, 0x00dfd6d4, 0x0144c8f8) + 82 bytes
  [7] m_interpreter.dll:_inExecFunction(0, 0, 0x00dfd6d4, 0x0144c8f8) + 38 bytes
  [8] m_interpreter.dll:_inMMexExecute(535, 0x0144c8f8, 0, 0) + 533 bytes
  [9] m_interpreter.dll:enum opcodes __cdecl inMMex(char const *,int,int,int,int *,int *)(0x1b6ef444 "vcapg2", 535, 0, 0) + 94 bytes
  [10] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,struct inPcodeNest_tag volatile *)(2, 0, 0, 0x0131e540) + 2143 bytes
  [11] m_interpreter.dll:_inInterPcode(2, 0x00dfdc54, 0, 0) + 193 bytes
  [12] m_interpreter.dll:enum inExecutionStatus __cdecl in_local_call_eval_function(int *,struct _m_parser_interface *,struct _pcodeheader *,int *,struct mxArray_tag * * const,enum inDebugCheck)(0, 0x7a87fa78, 0x00dfdc54, 0x00dfdcf8) + 174 bytes
  [13] m_interpreter.dll:_inEvalStringWithIsVarFcn(0x1b5e54a0 "vcapg2\n", 7, 0, 0) + 531 bytes
  [14] m_interpreter.dll:_inEvalString(0x1b5e54a0 "vcapg2\n", 7, 0, 0) + 50 bytes
  [15] m_interpreter.dll:enum inExecutionStatus __cdecl inEvalCmdWithLocalReturnandtype(char const *,int *,enum inDebugCheck)(0x1b5e54a0 "vcapg2\n", 0, 2, 0x00dfde30) + 68 bytes
  [16] m_interpreter.dll:_inEvalCmdNoEnd(0x1b5e54a0 "vcapg2\n", 1, 0x0047f617, 11) + 16 bytes
  [17] matlab.exe:_mnParser(0x77dd1b53 "?ð?}ü", 271244, 0, 48) + 1001 bytes
  [18] matlab.exe:_WinMain@16(0x00400000 "MZ", 0, 271244, 1) + 3872 bytes
  [19] matlab.exe:_WinMainCRTStartup(0x77dd1b53 "?ð?}ü", 28, 0x7ffdf000, 0xebc18cf0) + 308 bytes
  [20] kernel32.dll:0x77e814c7(0x0047172c, 0, 0, 1245343)

This error was detected while a MEX-file was running. If the MEX-file
is not an official MathWorks function, please examine its source code
for errors. Please consult the External Interfaces Guide for information
on debugging MEX-files.

If it is an official MathWorks function, please
follow these steps in reporting this problem to The MathWorks so
that we have the best chance of correcting it:

  1. Send this crash report to segv@mathworks.com for automated analysis.
     For your convenience, this information has been recorded in:
       C:\DOCUME~1\Ser\LOCALS~1\Temp\matlab_crash_dump.4520

  2. Also, if the problem is reproducible, send the crash report to
     support@mathworks.com along with:
       - A specific list of steps that will reproduce the problem
       - Any M, MEX, MDL or other files required to reproduce the problem
       - Any error messages displayed prior to this crash report
     A technical support engineer will contact you with further informatio
n.

Thank you for your assistance. Please save your workspace and restart
MATLAB before continuing your work.

Error in ==> L:\MATLABR13\DEMOS1\vcapg2demo\vcapg2.dll

bogdan ios

Phillip Kramer

tummi madhu

I have installed this and I am using a CCD camera but it is not working it is saying that"No video capture device was detected."
My camera is on and is working fine

juvas velho

very good!

Subbu Swami

Homero latorre

excelent dll for matlab

I don`t see documentation for dll or help file

Nir Friedman

much stable then the vfm, cannot adjust resolution using a 3com USB camera.

Jia Wen

I used it and it works fine for my video cameras, except for on some PC once I call vcapg2 it brings up a camera monitoring window, consuming much of the CPU cycle. But on other PC it just brings up a blank window. Since I just need to use it to grap image whenver I need, so I don't want the video monitoring process running all the time. How could I disable it?

Shu-An Lee

Updates

Update Information:
Preview window setting can change at initialization time.
Difference from previous version is initialization option. Default preview interval set to 300msec.

MATLAB Release
MATLAB 6.5 (R13)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video