Hi Tanner, On Monday 20 August 2007, Tanner Ezell wrote: > Hello all, > > As it is summer break and I find myself a small bit of free time, I was > considering writing an implementation to decode the frames from the webcams > using assembly (as an attempt to gain performance, as current > implementations provide low fps and drag on my Pentium M considerably).
That's interesting. Are you aware of the libjpeg-mmx project ? Other codec libraries (namy ffmpeg) might also have optimised MJPEG decoding > However, I am very new to field and have a few questions if you all > wouldn't mind helping me with. > > Do these (i have a Logitech QuickCam for Notebooks Pro) webcams generate > data strictly in MJPEG format? or do they output MJPEG and/or YUV/YUYV? All UVC compliant webcams I ran into (until now) produce YUYV data and possible MJPEG. The output format is selectable for webcams that can produce both. > If the formats are streamed differently how are they controlled? (ie: get > YUV/YUYV output, or get MJPEG output from camera) The V4L2 VIDIOC_S_FMT ioctl is used to select the video format (frame size and format). > I assume regardless of the camera's output format, they must be in rgb24 to > be displayed on the output, is that correct? It depends how you display the video. Most graphic toolkits use RGB internally to draw on screen, but the Xv extension allows hardware-accelerated display in some YUV variants (depending on your graphic card). OpenGL also supports different formats. > I would appreciate any information you have and any suggestions you may > also have. As there are many ways to display video, and as all applications don't require video display (think about image processing), I suggest to choose a target audience before starting the implementation. Needs will vary between image processing developers and video display developers. Best regards, Laurent Pinchart _______________________________________________ Linux-uvc-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/linux-uvc-devel
