X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=server%2Fimage.c;fp=server%2Fimage.c;h=81c692ba2043ab6d417e6ec83daa1da23e11f38e;hb=ff5831931c289cd740609eaad0d36d768751a6d3;hp=0000000000000000000000000000000000000000;hpb=3982d051198ced76dcf4ed173098e5e344c0c8c0;p=matches%2FMCTX3420.git diff --git a/server/image.c b/server/image.c new file mode 100644 index 0000000..81c692b --- /dev/null +++ b/server/image.c @@ -0,0 +1,25 @@ +#include "cv.h" +#include "highgui_c.h" +#include "image.h" +#include +#include + +void Image_Handler(FCGIContext * context, const char * params) +{ + static CvCapture * capture = NULL; + if (capture == NULL) + capture = cvCreateCameraCapture(-1); + + static int p[] = {CV_IMWRITE_JPEG_QUALITY, 100, 0}; + + IplImage * frame = cvQueryFrame(capture); + assert(frame != NULL); + CvMat * jpg = cvEncodeImage(".jpg", frame, p); + + // Will this work? + Log(LOGNOTE, "Sending image!"); + FCGI_PrintRaw("Content-type: image/jpg\r\n\r\n"); + //FCGI_PrintRaw("Content-Length: %d", jpg->rows*jpg->cols); + FCGI_WriteBinary(jpg->data.ptr,1,jpg->rows*jpg->cols); + +}