aboutsummaryrefslogtreecommitdiffstats
path: root/android/camera/camera-capture-linux.c
Commit message (Collapse)AuthorAgeFilesLines
* Implements white balance and exposure compensation for emulated webcamVladimir Chtchetkine2011-12-051-3/+9
| | | | Change-Id: Id2dbb227280f0c0e1b5708ef78b9f19b087f92d5
* Fix emulator crash.Vladimir Chtchetkine2011-10-211-5/+7
| | | | Change-Id: I4f238bbd0175036b6003ebdf266de608d6acc6e7
* Bound loop indexVladimir Chtchetkine2011-10-211-1/+1
| | | | | | | In some cases (when frame sizes for pixel formats are not available) the loop will be not properly bounded, and may cause a crash. Change-Id: I2f2380ab4e2f7454bff8eeabcaff4e3f238fe71e
* Fix emulator crash caused by bad 'printf'Vladimir Chtchetkine2011-10-201-2/+2
| | | | Change-Id: I7c4830ba7606bedcf462e967adad3358723c44ba
* Timeout frame capturing.Vladimir Chtchetkine2011-09-231-4/+2
| | | | | | | | | | | It has been observed on some of the MS camera devices, that device may got stuck on something that would alwais return EAGAIN when queried for the next video frame. This requires us to timeout the loop that repeats attempts to acquire first frame from the device. Also added detection and reporting of I/O errors occurred during frame capturing. Also, this CL contains some cosmetick changes to error and warning reporting. Change-Id: I81edaf5ff8bfe147dbe4510e1446e77a87817f37
* Properly reset camera device between capture requestsVladimir Chtchetkine2011-09-221-9/+40
| | | | Change-Id: Ia748fe3f38e8366d0507fcee995eac311dd8c72a
* Fix NV12, and NV21 format descriptorsVladimir Chtchetkine2011-09-211-0/+1
| | | | | | Also adds support for YU12 pixel format that is used in video frames Change-Id: I613beef8b3e2296fd1fab7e2b9d2956fba1ac788
* Add -webcam commandline option to control webcam emulationVladimir Chtchetkine2011-09-201-0/+3
| | | | | | -webcam name=<name>[,dir=<direction>] options controls web cameras to use for emulation. Change-Id: I961fd399c7e041541adda040dd24f194cc383cb9
* Fixes "stop device" issue on LinuxVladimir Chtchetkine2011-09-141-0/+19
| | | | | | | | Apparently, video driver doesn't allow frame size change, once it has been explicitly set. In order to get around this we need to reset the handle to the camera device by closing, and then reopening it. Change-Id: Icfd37b3c196d2643507218b965c5015884ed455b
* Implements camera service in emulatorVladimir Chtchetkine2011-09-121-84/+448
| | | | | | | | | | | | This is fully functional camera service implementation, that works (tested) on both, Linux and Windows. Fixed little/big endian bugs in the coverter code. Moved preview frames to use RGB32 instead of RGB565: RGB32 conversions are simpler and faster in the guest. Made "payload size send" a separate routine Change-Id: I96954f4c2cb4e4ef4dd6a20e41897d79c5037bae
* Video capturing code for Linux, and WindowsVladimir Chtchetkine2011-08-181-0/+678
Contains API that connects to a camera device, and pulls video frames from it on request from the client. Change-Id: If1d80c57611afff637a7734ce5c3a2c874cfc85a