Commit Graph

2587 Commits

Author SHA1 Message Date
David Hu
63e5983c9b Merge "Change the test to user the listener mechanism" 2011-11-02 20:11:20 -07:00
David Hu
acf95539c3 Change the test to user the listener mechanism
this is to avoid the precision issue with the coordinates

Change-Id: Icfab3fa6fd0a331aef12ee71c73bac04dc9685be
2011-11-02 17:01:23 -07:00
Steve Block
629719e390 Rename LOGV(_IF) to ALOGV(_IF) DO NOT MERGE
See https://android-git.corp.google.com/g/#/c/143865

Bug: 5449033
Change-Id: Iad3a485eed0dc273d66607d30a7b9b79b02c03b6
2011-10-25 18:24:59 +01:00
Eddy Talvala
e53a773396 Merge "Added white balance settings to the camera Emulator." 2011-10-24 09:41:20 -07:00
Christine Chen
12c0b21abe Added white balance settings to the camera Emulator.
- Added the white balance control to the fake camera.

Change-Id: I5ada253a3ae7195ca5625a3601c9e4ed819fa2cc
2011-10-20 17:49:35 -07:00
Iliyan Malchev
10fc4be16b a3dconvert: add -ldl for host builds
Change-Id: I6f594bc3d2e0e4306eee1719ee81e2ff53177aa6
Signed-off-by: Iliyan Malchev <malchev@google.com>
2011-10-20 16:20:45 -07:00
David 'Digit' Turner
a8f182c105 Merge "emulator: opengl: add design document for emulation implementation." 2011-10-19 10:14:13 -07:00
David 'Digit' Turner
aafffde798 Merge "emulator: opengl: minor fix and reformatting" 2011-10-19 10:13:55 -07:00
David 'Digit' Turner
0e205e6d6e emulator: opengl: minor fix and reformatting
This patches fixes a minor invalid usage of delete (instead of delete[])
and reformats the source code a little to make it more obvious.

Change-Id: If853d12e74549abcc6682430c837b0f14da81fdc
2011-10-19 17:54:20 +02:00
David 'Digit' Turner
fb2ddf9347 emulator: opengl: add design document for emulation implementation.
This patch adds a rather extensive document explaining the design
of our OpenGLES emulation, both on the guest and the host.

Change-Id: I13cf1eac21e5a8a0be170b5f90100b04f9ae6d75
2011-10-19 16:43:24 +02:00
Vladimir Chtchetkine
f7f6886820 Cherry picked from c9a94b0f in master. Do not merge.
Implement CAMERA_MSG_PREVIEW_FRAME callback

Also does better work detecting pixel format for video frames, depending on the
mode that camera is intended to be operated with.

Change-Id: Idb2dfc7c0a79e81eff58f83a14af769afc713096
2011-10-18 12:32:24 -07:00
Vladimir Chtchetkine
caa1aeafba Implement CAMERA_MSG_PREVIEW_FRAME callback
Also does better work detecting pixel format for video frames, depending on the
mode that camera is intended to be operated with.

Change-Id: I352204b8d6d1a9e7857d77b6363de2bb5d5db0dd
2011-10-17 12:56:54 -07:00
Christine Chen
366396d9b0 Added exposure compensation control for the fake camera.
Change-Id: I10bc16d9d521f82e12ff335eed29465ac08b5595
2011-10-14 15:14:36 -07:00
Xavier Ducrohet
faa85e4d5b Make the VXGA720 skin indicate no hw back/home keys.
Change-Id: Iea7121903e75275849f0bcc2ecbc533aa37c3971
2011-10-04 10:51:37 -07:00
Xavier Ducrohet
8a585470c5 Add 1280x720@320dpi skin.
Also tweak some skins to provide more ram to the emulator
for better performance.

Change-Id: I89dcdb7a6a78d95132820db284c1fdfb6f82c6db
2011-10-03 20:27:07 -07:00
David 'Digit' Turner
b8b0bacb8c am 7b2cacb4: am 76f63551: am 894a63dd: emulator: opengl: Add custom_write optimization to encoder.
* commit '7b2cacb4523bc564321d0726c8b53b72f6b1c562':
  emulator: opengl: Add custom_write optimization to encoder.
2011-09-28 04:46:47 -07:00
David 'Digit' Turner
c11d87d30a am 5127bebf: am 8790e10a: am 5d7f0875: emulator: opengl: \'large\' buffer optimization
* commit '5127bebff8d3848c96749d80c8c4ad79fc88bb54':
  emulator: opengl: 'large' buffer optimization
2011-09-28 04:46:46 -07:00
David 'Digit' Turner
7dc4d98eb6 am 175512d4: am 5d2e245d: am e72ed049: emulator: opengl: improve gralloc debug traces
* commit '175512d4aba36f5e5be9a12dca64cc27d159ec98':
  emulator: opengl: improve gralloc debug traces
2011-09-28 04:46:45 -07:00
David 'Digit' Turner
640cf6988b am 81488f05: am ac6c7392: am 9a6c0287: emulator: opengl: fix inccorect delete usage.
* commit '81488f055f5a2bd7e5307a0e16d5ff924baf566e':
  emulator: opengl: fix inccorect delete usage.
2011-09-28 04:46:45 -07:00
David 'Digit' Turner
bb1e135697 am f90030a9: am 0bf9070e: am 6aca3d9f: emulator: opengl: add missing EGLDisplay destructor
* commit 'f90030a9bf63d47840c88c6f8022bc0a903df9dd':
  emulator: opengl: add missing EGLDisplay destructor
2011-09-28 04:46:42 -07:00
David 'Digit' Turner
0426ac51b5 am 5703f4d9: am 81ee5461: am 8abfab1b: emulator: opengl: make internal tables const.
* commit '5703f4d9ec04f5e774f8cb154af7fd087bebfffd':
  emulator: opengl: make internal tables const.
2011-09-28 04:46:37 -07:00
David 'Digit' Turner
7b2cacb452 am 76f63551: am 894a63dd: emulator: opengl: Add custom_write optimization to encoder.
* commit '76f63551d36b1de63c63f357e5f0646ed8c306bb':
  emulator: opengl: Add custom_write optimization to encoder.
2011-09-28 04:41:09 -07:00
David 'Digit' Turner
5127bebff8 am 8790e10a: am 5d7f0875: emulator: opengl: \'large\' buffer optimization
* commit '8790e10a7f27b0e364605f5ef48bb22fb078b4b0':
  emulator: opengl: 'large' buffer optimization
2011-09-28 04:41:08 -07:00
David 'Digit' Turner
175512d4ab am 5d2e245d: am e72ed049: emulator: opengl: improve gralloc debug traces
* commit '5d2e245d760c7e100a657e408686def677e1ff0c':
  emulator: opengl: improve gralloc debug traces
2011-09-28 04:41:07 -07:00
David 'Digit' Turner
81488f055f am ac6c7392: am 9a6c0287: emulator: opengl: fix inccorect delete usage.
* commit 'ac6c73921cb03f6785457700b7d349158fcb6902':
  emulator: opengl: fix inccorect delete usage.
2011-09-28 04:41:06 -07:00
David 'Digit' Turner
f90030a9bf am 0bf9070e: am 6aca3d9f: emulator: opengl: add missing EGLDisplay destructor
* commit '0bf9070ec5ddea4e4c048e4c5a5eaf25ed2c0b7a':
  emulator: opengl: add missing EGLDisplay destructor
2011-09-28 04:41:05 -07:00
David 'Digit' Turner
5703f4d9ec am 81ee5461: am 8abfab1b: emulator: opengl: make internal tables const.
* commit '81ee546174830e039bb523eec6139eb99e77a45e':
  emulator: opengl: make internal tables const.
2011-09-28 04:41:03 -07:00
David 'Digit' Turner
76f63551d3 am 894a63dd: emulator: opengl: Add custom_write optimization to encoder.
* commit '894a63dd6eb8a1c675c21a8a10eff8c0118890c8':
  emulator: opengl: Add custom_write optimization to encoder.
2011-09-28 04:28:52 -07:00
David 'Digit' Turner
8790e10a7f am 5d7f0875: emulator: opengl: \'large\' buffer optimization
* commit '5d7f0875e9cda2d6ab37b49f0b6ceed8f0d16f45':
  emulator: opengl: 'large' buffer optimization
2011-09-28 04:28:51 -07:00
David 'Digit' Turner
5d2e245d76 am e72ed049: emulator: opengl: improve gralloc debug traces
* commit 'e72ed049a890da6883b0de09a2263b88b648391a':
  emulator: opengl: improve gralloc debug traces
2011-09-28 04:27:22 -07:00
David 'Digit' Turner
ac6c73921c am 9a6c0287: emulator: opengl: fix inccorect delete usage.
* commit '9a6c02877a128a0236377ee21b78767faa50ad83':
  emulator: opengl: fix inccorect delete usage.
2011-09-28 04:27:21 -07:00
David 'Digit' Turner
0bf9070ec5 am 6aca3d9f: emulator: opengl: add missing EGLDisplay destructor
* commit '6aca3d9f7c8e637ec253ca1d501d8b91d3e63770':
  emulator: opengl: add missing EGLDisplay destructor
2011-09-28 04:27:20 -07:00
David 'Digit' Turner
81ee546174 am 8abfab1b: emulator: opengl: make internal tables const.
* commit '8abfab1baf04ebd57f8eff74485b746d56368014':
  emulator: opengl: make internal tables const.
2011-09-28 04:27:14 -07:00
Vladimir Chtchetkine
e466a63ab4 Include correct endian.h file
Apparently including sys/endian.h directly produces uninitialized endianness macros.
Should include target CPU-dependent header instead.

Change-Id: Ib16f0470d27baa085bf1675a403c02efa6f994c4
2011-09-27 15:41:12 -07:00
David 'Digit' Turner
009a020ce9 resolved conflicts for merge of 944b4f80 to master
Change-Id: I83f38f345caa456466d86e46f4f3c94721b7ebd1
2011-09-27 21:27:20 +02:00
Vladimir Chtchetkine
1bc31fe7e0 Some minor polishing.
Change-Id: I2e8f2bf3671e9676f115aaa894684618087e979d
2011-09-23 14:41:46 -07:00
Vladimir Chtchetkine
55d41f8969 Sets right preview frame properties.
Don't cofuse preview window with preview frames. Preview frames are relevant only
in panoramic mode that receives frames via CAMERA_MSG_PREVIEW_FRAME callback.

Change-Id: Ibecb345e43ba452856b8ca75449264d8d354a9d5
2011-09-23 10:08:28 -07:00
Vladimir Chtchetkine
b3ea171655 Implements camera error reporting.
Change-Id: I5f4f4cd1baab60053e827e0605a92a123c7a086f
2011-09-23 08:34:08 -07:00
David 'Digit' Turner
944b4f80e5 am 6ddbd156: resolved conflicts for merge of 4e6af749 to gingerbread-plus-aosp
* commit '6ddbd1563d84a7b18607aa67c1f5f5e4095f816f':
  emulator: opengl: Back-port GLES emulation from the master tree.
2011-09-23 01:36:15 -07:00
David 'Digit' Turner
6ddbd1563d resolved conflicts for merge of 4e6af749 to gingerbread-plus-aosp
Change-Id: I3a8d71bd9b359a067c2a250db99e855e59c08854
2011-09-23 10:27:34 +02:00
Vladimir Chtchetkine
4d7f7de700 Use actual JPEG quality when compressing picture
Sometimes framework chooses to override the default JPEG quality value (90), so we need to
respect that when compressing frame during picture taking.

Change-Id: Ic7ad8938d33d94d34ecd0b979e5c8c3e8246fd53
2011-09-21 15:33:18 -07:00
Vladimir Chtchetkine
68ec4ac828 Fix video format
Apparently, video pixel format expected by the camera framework is YU12, and not YV12
as it was implemented.

Change-Id: Id33d8aa7f62f6e68276774ca2a7d25c04acd71cc
2011-09-21 14:55:29 -07:00
Vladimir Chtchetkine
1f37cd45f6 Fix callback sequence on picture taking
Also fixes a bug in JPEG converter.

Change-Id: I5bbeec96ec2bb0a9a6a333a3798880bb0b837c65
2011-09-21 14:20:07 -07:00
Vladimir Chtchetkine
a88e749e29 Adds media_profiles.xml file that is required for proper framework setup
This file must be copied over to /system/etc directory inside the emulated system image.

Change-Id: Ia013ed20e1ce7a6f9a3ce162f86e0fd3c97ded31
2011-09-21 06:58:08 -07:00
Vladimir Chtchetkine
dd63895f1f Fix camera ID validation
Check for id being <0 before checking its upper boundary

Change-Id: I92ed1ac78f35b5d6bbdd24cc041b2cfb4c121c74
2011-09-20 14:16:53 -07:00
David 'Digit' Turner
894a63dd6e emulator: opengl: Add custom_write optimization to encoder.
This patch allows an auto-generated GLES encoder function to write
'isLarge' buffers with a custom writer, instead of calling stream->readFully()
directly.

This is intended to allow writing pixel or vertex data that is stored
with a specific stride.

Another patch will introduce the corresponding changes to the .attrib files

Change-Id: I6ca86b968cd3f4db91676bc485ee1e84419e50e0
2011-09-20 15:58:54 +02:00
David 'Digit' Turner
5d7f0875e9 emulator: opengl: 'large' buffer optimization
This patch modifies the guest encoding libraries to avoid
un-necessary copies when sending large buffers (e.g. pixels)
to the host. Instead, the data is sent directly through a
new IOStream method (writeFully()).

On my machine, this improves the NenaMark2 benchmark
(from 50.8 to 57.1 fps). More importantly, this speeds up
the display of non-GL surfaces too, which are sent through
the special rcUpdateColorBuffer() function in gralloc_goldfish.

This is noticeable in many parts of the UI (e.g. when scrolling
through lists).

To tag a given parameter, use the new 'isLarge' variable flag
in the protocol .attrib file.

Implemented for the following encoding functions:

  rcUpdateColorBuffer
  glTexSubImage2D
  glTexImage2Di
  glBufferData
  glBufferSubData
  glCompressedTexImage2D
  glCompressedTexSubImage2D
  glTexImage3DOES
  glTexSubImage3DOES
  glCompressedTexImage3DOES
  glCompressedTexSubImage3DOES

+ Optimize the auto-generated encoder functions to avoid
  repeated function calls (for size computations).

Change-Id: I13a02607b606c40cd05984cd2051b1f3424bc2d0
2011-09-20 15:58:54 +02:00
David 'Digit' Turner
e72ed049a8 emulator: opengl: improve gralloc debug traces
+ shut up the gralloc module for now.

Change-Id: I7d22c63f298c4e50d96655adf4025a65b7405c28
2011-09-20 15:58:54 +02:00
David 'Digit' Turner
9a6c02877a emulator: opengl: fix inccorect delete usage.
Change-Id: I3afc5197d2d13c4698a535ed769a56920e81c94f
2011-09-20 15:58:53 +02:00
David 'Digit' Turner
6aca3d9f7c emulator: opengl: add missing EGLDisplay destructor
Change-Id: I788904a597b7929a7fc7a5db3cf5baa79b9f1936
2011-09-20 15:58:53 +02:00