[artoolkit-commits] artoolkit/lib/SRC/VideoMacOSX video.c,1.11,1.12
Optical marker tracking and overlay for augmented reality.
Brought to you by:
philip_lamb
From: Philip L. <phi...@us...> - 2005-08-30 20:46:53
|
Update of /cvsroot/artoolkit/artoolkit/lib/SRC/VideoMacOSX In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20054 Modified Files: video.c Log Message: Fix long-standing bug when CapStart is called after CapStop. Index: video.c =================================================================== RCS file: /cvsroot/artoolkit/artoolkit/lib/SRC/VideoMacOSX/video.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** video.c 18 Aug 2005 18:23:00 -0000 1.11 --- video.c 30 Aug 2005 20:46:42 -0000 1.12 *************** *** 1621,1630 **** vid->status = 0; ! if (err = vdgStartGrabbing(vid->pVdg, vid->scaleMatrixPtr)) { ! fprintf(stderr, "vdgStartGrabbing err=%ld\n", err); ! err_i = (int)err; } ! #ifdef AR_VIDEO_SUPPORT_OLD_QUICKTIME // Release our hold on the QuickTime toolbox. --- 1621,1638 ---- vid->status = 0; + if (!vid->pVdg->isPreflighted) { + if (err = vdgPreflightGrabbing(vid->pVdg)) { + fprintf(stderr, "ar2VideoCapStart(): vdgPreflightGrabbing err=%ld\n", err); + err_i = (int)err; + } + } ! if (err_i == 0) { ! if (err = vdgStartGrabbing(vid->pVdg, vid->scaleMatrixPtr)) { ! fprintf(stderr, "ar2VideoCapStart(): vdgStartGrabbing err=%ld\n", err); ! err_i = (int)err; ! } } ! #ifdef AR_VIDEO_SUPPORT_OLD_QUICKTIME // Release our hold on the QuickTime toolbox. *************** *** 1676,1679 **** --- 1684,1688 ---- } vid->threadRunning = 0; + vid->thread = NULL; // Exit status is ((exit_status_p == AR_PTHREAD_CANCELLED) ? 0 : *(ERROR_t *)(exit_status_p)) *************** *** 1697,1700 **** --- 1706,1711 ---- err_i = (int)err; } + vid->status = 0; + vid->pVdg->isPreflighted = 0; #ifdef AR_VIDEO_SUPPORT_OLD_QUICKTIME |