X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=server%2Fstream.c;h=e1e23c1432c40ee5c18bcd0ffb8ea88918b36886;hb=161a41e5fae2e8f2d575dbd26417c0719abe9b1f;hp=229041a6c3d61c32f5b7e61d048ffd70573ad397;hpb=459042e32b6ffb31338e3f5a88ddb401530d1beb;p=matches%2FMCTX3420.git diff --git a/server/stream.c b/server/stream.c index 229041a..e1e23c1 100644 --- a/server/stream.c +++ b/server/stream.c @@ -13,23 +13,37 @@ compile with: int storeFrame( CvCapture* capture) { IplImage *frame; + CvMat* jpg; + //FILE *fp = fopen ("test.jpg", "wb"); + int p[3]; p[0] = CV_IMWRITE_JPEG_QUALITY; - p[1] = 10; //quality value. 0-100 + p[1] = 100; //quality value. 0-100 p[2] = 0; frame = cvQueryFrame(capture); if( frame == NULL) return 0; //error cvSaveImage("../web/images/test.JPG",frame,p); + //jpg = cvEncodeImage(".jpg", frame,p); + /*pass buf to client, write to file on client*/ + //fwrite(jpg->data.ptr,1,jpg->rows*jpg->cols, fp); + + //decjpg = cvDecodeImage(jpg, CV_LOAD_IMAGE_COLOR); + //cvShowImage( "Display window", decjpg ); + + //cvWaitKey(0); + cvReleaseImageHeader(&frame); + //cvReleaseMat(&jpg); + //fclose( fp); return 1; } int main (int argc, char** argv) { CvCapture* capture; - + //cvNamedWindow( "Display window", CV_WINDOW_AUTOSIZE );// Create a window for display. //Get capture structure for camera, -1 refers to any camera device. //If multiple cameras used, need to use specific camera ID capture = cvCreateCameraCapture(-1); @@ -37,15 +51,18 @@ int main (int argc, char** argv) if( capture == NULL) return -1; + cvSetCaptureProperty (capture, CV_CAP_PROP_FOURCC, 'MJPEG'); + while(1) { if( !storeFrame( capture)) return -1; + printf("enter to continue"); + getchar(); //sleep(1); //for now just to make the camera take 1 shot a second, as that's all my camera seems to be able to take/save (camera or function causing this? is 1 second per frame enough?) } //Need to determine how the function is called in respect to system. just leave it running with a while loop? will something turn it on and off? will the function be called once from elsewhere? - cvReleaseCapture( &capture); }