summaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* Looper: use pthread_once for TLS key initialization.Jeff Brown2010-09-211-0/+1
| | | | | | | | Also fix a Valgrind complaint by zeroing out the entire epoll event struct since otherwise the data field union would be partly uninitialized (but not in a harmful way). Change-Id: I2091ce517e87fcad7c9caf90e2c5e4854a7ca465
* Rename FOCUS_MODE_CONTINUOUS to FOCUS_MODE_CONTINUOUS_VIDEO.Wu-cheng Li2010-09-211-6/+8
| | | | | | | | | | This constant is not public yet. Continuous autofocus should behave differently in still camera and camcorder. In camcorder, lens movement may be more smooth. And the triggers to start a new focus search may be different. If there is a need, FOCUS_MODE_CONTINUOUS_PHOTO can be added in the future. Change-Id: I05df9e491aca37829be3df92a73b952f26c86a4a
* Looper: Drop default parameters in favor of a safer overload.Jeff Brown2010-09-161-6/+9
| | | | | | | | | | | The idea is that if you're writing code that wants fd/events/data on return from pollOnce() / pollAll() you should really pass in all of those arguments. When I changed the Looper API earlier, it was difficult to ensure that all callers were passing the right parameters since they were relying on default parameters to some degree so usage mistakes would not have been caught by the compiler. Change-Id: I1f2812894270aaf1515017ac1616b6b312d9b565
* Fix app switch latency optimization.Jeff Brown2010-09-161-6/+6
| | | | | | This optimization was broken due to recent changes in how ANRs are handled. Change-Id: Ic99248a12755fadac8d4893e7d305b773e038d3d
* Merge "Input API review." into gingerbreadJeff Brown2010-09-161-2/+2
|\
| * Input API review.Jeff Brown2010-09-141-2/+2
| | | | | | | | | | | | | | Drop currently unsupported input features. Add documentation comments. Change-Id: I407d2e1dd90c5ee82983a3ccf177430d35ee7592
* | Make input dispatcher only ANR for foreground windows.Jeff Brown2010-09-151-89/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Redesigned the input dispatcher's ANR timeout mechanism so it is much closer to Froyo's policy. ANR is only ever signalled if the dispatcher is waiting on a window to finish processing its previous event(s) and there is new pending input. In the old code, we tracked the dispatch timeout separately for each input channel. This was somewhat complicated and also resulted in the situation where applications could ANR long after the user had pushed them into the background. Change-Id: I666ecada0952d4b95f1d67b9f733842b745c7f4b
* | fix a typo where the eventtags code were wrongMathias Agopian2010-09-151-16/+16
|/ | | | Change-Id: I517112a1475c10b71009a0aa9c3894c76a1f270f
* Merge "Replace epoll() with poll() and rename PollLoop to Looper." into ↵Jeff Brown2010-09-146-229/+220
|\ | | | | | | gingerbread
| * Replace epoll() with poll() and rename PollLoop to Looper.Jeff Brown2010-09-146-229/+220
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As part of this change, consolidated and cleaned up the Looper API so that there are fewer distinctions between the NDK and non-NDK declarations (no need for two callback types, etc.). Removed the dependence on specific constants from sys/poll.h such as POLLIN. Instead looper.h defines events like LOOPER_EVENT_INPUT for the events that it supports. That should help make any future under-the-hood implementation changes easier. Fixed a couple of compiler warnings along the way. Change-Id: I449a7ec780bf061bdd325452f823673e2b39b6ae
* | Add logging of various important graphics eventsMathias Agopian2010-09-132-0/+74
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are 16 events logged in the event log: SF_APP_DEQUEUE_BEFORE SF_APP_DEQUEUE_AFTER SF_APP_LOCK_BEFORE SF_APP_LOCK_AFTER SF_APP_QUEUE SF_REPAINT SF_COMPOSITION_COMPLETE SF_UNLOCK_CLIENTS SF_SWAP_BUFFERS SF_REPAINT_DONE SF_FB_POST_BEFORE SF_FB_POST_AFTER SF_FB_DEQUEUE_BEFORE SF_FB_DEQUEUE_AFTER SF_FB_LOCK_BEFORE SF_FB_LOCK_AFTER all events log the buffer conserned and a timestamp in microseconds. by default the logging is not enabled, to turn it on: adb shell service call SurfaceFlinger 1006 i31 1 adb shell setprop debug.graphic_log 1 The effect is immediate in SurfaceFlinger, but applications need to be restarted. Change-Id: Ifc2e31f7aed072d9a7dede20ff2ce59231edbec1
* Input dispatcher ANR handling enhancements.Jeff Brown2010-09-125-156/+513
| | | | | | | | | | | | | | | | | | | | | | | This change is essentially a rewrite of the main input dispatcher loop with the target identification folded in. Since the input dispatcher now has all of the window state, it can make better decisions about when to ANR. Added a .5 second deadline for processing app switch keys. This behavior predates Gingerbread but had not previously been ported. Fixed some timing inaccuracies in the ANR accounting that could cause applications to ANR sooner than they should have. Added a mechanism for tracking key and motion events that have been dispatched to a window so that appropriate cancelation events can be synthesized when recovering from ANR. This change helps to keep applications in sync so they don't end up with stuck buttons upon recovery from ANRs. Added more comments to describe the tricky parts of PollLoop. Change-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1
* Merge "HW audio encoder expects timestamp via kKeyTime from each input ↵James Dong2010-09-081-0/+1
|\ | | | | | | buffer" into gingerbread
| * HW audio encoder expects timestamp via kKeyTime from each input bufferJames Dong2010-09-081-0/+1
| | | | | | | | | | | | - This fixes media server crashes on droid Change-Id: I7191cadc5275107425ec3ee3d437b2c5295858dc
* | Modify type of some environmental reverb parametersEric Laurent2010-09-081-10/+10
| | | | | | | | | | | | | | | | | | Changed type of decay time, reverb delay and reflections delay parameters from signed to unsigned int to match OpenSL ES interface definition. Also fixed some type casts in lvm reverb wrapper. Change-Id: I5ca5e76a87c2590f01f031f3168355586ef22556
* | Fix key repeat delay.Jeff Brown2010-09-081-1/+4
| | | | | | | | Change-Id: I6216e082324ee29bf50e37acc673350ca5417c4d
* | Add support for secure views.Jeff Brown2010-09-083-8/+31
|/ | | | | | | | | | | | Added the MotionEvent.FLAG_WINDOW_IS_OBSCURED flag which is set by the input manager whenever another visible window is partly or wholly obscured the target of a touch event so that applications can filter touches accordingly. Added a "filterTouchesWhenObscured" attribute to View which can be used to enable filtering of touches when the view's window is obscured. Change-Id: I936d9c85013fd2d77fb296a600528d30a29027d2
* Modify native ALooper to take an explicit ident.Dianne Hackborn2010-09-072-4/+12
| | | | | | | | The ALooper API now uses an explicit "identifier" for the integer that is returned rather than implicitly using the fd. This allows the APIs that had the fd to be a little more sane. Change-Id: I8507f535ad484c0bdc4a1bd016d87bb09acd7ff0
* Ogg files can be tagged to be automatically looping, this setting always ↵Andreas Huber2010-09-031-0/+2
| | | | | | | overrides the MediaPlayer's setLooping setting. Change-Id: Ifb564c6cdf6137eac14869f9ca7d471f05a5556a related-to-bug: 2974691
* Remove unused/debugging code from MP4 file writerJames Dong2010-09-032-0/+6
| | | | | | o also makes nal length in the recorded file modifiable at runtime Change-Id: I731b4dde7070d8d9628b36b523a5b2c011c7c2cf
* Better file size estimateJames Dong2010-09-021-0/+1
| | | | | | | | | When the recorded file becomes large, the metadata size can no longer be ignored. This makes it possible to save the recorded file when the storage becomes almost full at the end of the recording session. Change-Id: Ief038080f825c9946ce550949c03e914aec1e31a
* Calculate audio media drift time from AudioSourceJames Dong2010-09-013-1/+3
| | | | | | | | | | | | | | | | | | | The problem was that the time to receive an output buffer from an audio encoder is different because the encoder does not need to read from the source for all output buffers. This leads to large fluctuation in terms of wall clock duration between two neighboring audio sample outputs from the audio encoder. As a result, the media time for the video track after adjustment using the drifting changes wildly sometimes. This patch addresses this issue by only updating the media drift time when an audio source input buffer is read. the wall clock for the audio track is also calculated at the same time when the input audio buffer is read at AudioSource. bug - 2959800 Change-Id: I3174aa182f744784b540f0a7198524d4eee8bd7b
* Remove incomplete input device enumeration NDK API.Jeff Brown2010-08-311-23/+0
| | | | Change-Id: I32de74ff5fcf0e29179a2aee03ddabd22fa485bb
* Don't propagate StrictMode over one-way Binder calls.Brad Fitzpatrick2010-08-311-1/+5
| | | | | | | | | | | | | | | | | This was causing stack stitching problems where a one-way call with violations followed by a two-way call without violations was getting the previous one-way call's violation stack stitched on to the second caller's stack. The solution is a little more indirect than I would've liked (preserving the binder's onTransact flags until enforceInterface) but was seemingly necessary to work without changing the AIDL compiler. It should also be sufficiently cheap, since no new calls to thread-local IPCThreadState lookups were required. The additional work is just same-thread getter/setters on the existing IPCThreadState. Change-Id: I4b6db1d445c56e868e6d0d7be3ba6849f4ef23ae
* Input device calibration and capabilities.Jeff Brown2010-08-303-23/+146
| | | | | | | | | | | | | Finished the input device capability API. Added a mechanism for calibrating touch devices to obtain more accurate information about the touch contact area. Improved pointer location to show new coordinates and capabilities. Optimized pointer location display and formatting to avoid allocating large numbers of temporary objects. The GC churn was causing the application to stutter very badly when more than a couple of fingers were down). Added more diagnostics. Change-Id: Ie25380278ed6f16c5b04cd9df848015850383498
* Remove camera metering mode API.Wu-cheng Li2010-08-301-17/+0
| | | | | | Metering mode is not supported yet. Change-Id: Id6906d6ab0cd1a9dcbc5c303d8d5081b2cda699e
* Merge "ALoopers can now be named (useful to distinguish threads)." into ↵Andreas Huber2010-08-301-0/+6
|\ | | | | | | gingerbread
| * ALoopers can now be named (useful to distinguish threads).Andreas Huber2010-08-271-0/+6
| | | | | | | | Change-Id: Ieabaddb2e3a9e3a7a5bc36e55cd0721b60dbd50e
* | Workaround for a QCOM issue where the output buffer size advertised by the ↵James Dong2010-08-271-0/+1
| | | | | | | | | | | | | | | | | | | | AVC encoder is occasionally too small. bug - 2882917 Change-Id: Id59d8529084c5689a26f272e0cd3b1e955fd8a30
* | Merge "Suppress the video recording start signal - bug 2950297" into gingerbreadJames Dong2010-08-271-1/+17
|\ \ | |/ |/|
| * Suppress the video recording start signalJames Dong2010-08-261-1/+17
| | | | | | | | | | | | - bug 2950297 Change-Id: I0044d07178691feb904cf81e87c1b6d4b714dc1a
* | fix a race in SF buffer managementMathias Agopian2010-08-261-1/+5
|/ | | | | | also remove some unused code. Change-Id: Iae2c3309b7a08055f3e13a5b866c5c084993e352
* Merge "Added preset reverb." into gingerbreadEric Laurent2010-08-251-1/+2
|\
| * Added preset reverb.Eric Laurent2010-08-241-1/+2
| | | | | | | | | | | | | | Modified lvm reverb wrapper code to expose a preset reverb interface. Also removed debug log from bundle and reverb wrapper. Change-Id: If9b95d91e25a6ff834decdfdda34b17df9b46967
* | Allow sniffers to return a packet of opaque data that the corresponding ↵Andreas Huber2010-08-251-2/+7
| | | | | | | | | | | | | | extractor can take advantage of to not duplicate work already done sniffing. The mp3 extractor takes advantage of this now. Change-Id: Icb77ae3ee95a69c7da25b4d3b8696c0a2d33028a related-to-bug: 2948754
* | fix [2931513] Add support for setting the orientation of an ANativeWindowMathias Agopian2010-08-243-8/+42
|/ | | | | | Also implement support for cropping. Change-Id: Iba5888dd242bf2feaac9e9ce26e404c1f404c280
* Runtime dump support for MediaWriterJames Dong2010-08-232-0/+5
| | | | Change-Id: I10b2c474de612ee4cef4b7c9eae2ee1dd8c2e895
* Merge "Visualizer: replace the FFT implementation with a faster one." into ↵Chia-chi Yeh2010-08-221-1/+0
|\ | | | | | | gingerbread
| * Visualizer: replace the FFT implementation with a faster one.Chia-chi Yeh2010-08-191-1/+0
| | | | | | | | | | | | | | | | | | This implementation uses fixed points instead of floating points. It is slightly inaccurate compared to the old one but still perfect for visualization purpose. It runs 40% faster on passion, 5 times faster on sholes, and of course 14 times faster on sapphire. Change-Id: I1e868417bcffda091becf106a7b941d02813faec
* | Reorganize MountService IPCKenny Root2010-08-204-0/+220
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove auto-generated AIDL files and replace them with manually edited .java and .cpp/.h files so that binder calls can be made from either Java or C++. Update the makefiles to not attempt to generate the AIDL files and also remove the old auto-generated .java files. Put all the storage-related C++ things in libstorage so that we don't pollute other libraries. Change-Id: I82d1631295452709f12ff1270f36c3100e652806
* | Merge "Add camera fps range API." into gingerbreadWu-cheng Li2010-08-201-0/+15
|\ \
| * | Add camera fps range API.Wu-cheng Li2010-08-201-0/+15
| | | | | | | | | | | | | | | | | | | | | Original preview frame rate API assumes the frame rate is fixed. It does not not work with auto frame rate camera. Change-Id: I38f7122ac8ec844ffd63558dc0763ffa17b0926a
* | | Merge "Handle the camera open failure better." into gingerbreadWu-cheng Li2010-08-191-0/+1
|\ \ \
| * | | Handle the camera open failure better.Wu-cheng Li2010-08-191-0/+1
| |/ / | | | | | | | | | | | | | | | Check if camera hardware is NULL to avoid mediaserver crash. Change-Id: Ibde0251f30bdb6b36a5d5380222d7be25ec9449c
* | | Merge "Make MediaWriter stop and pause return errors if necessary" into ↵James Dong2010-08-193-7/+8
|\ \ \ | |/ / |/| | | | | gingerbread
| * | Make MediaWriter stop and pause return errors if necessaryJames Dong2010-08-193-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Make the API consistent with SF framework, which the MediaSource provides a return status for stop o Also, helps to convey errors that occurred right when a premature stop() is called, leading to a potentially mal-formed output file. Change-Id: I52a932345f38570fdf8ea04d67d73dd94ccd30ef
* | | Merge "Adding getSupportedPreviewSizes to CameraParameters.DO NOT MERGE" ↵Wu-cheng Li2010-08-191-0/+1
|\ \ \ | | | | | | | | | | | | into gingerbread
| * | | Adding getSupportedPreviewSizes to CameraParameters.DO NOT MERGENipun Kwatra2010-08-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moved functionality to parse string of sizes from getSupportedPictureSizes to parseSizesList. Added getSupportedPreviewSizes which returns a list of supported preview sizes. Change-Id: I41d4f62f9f1641e9e9258aa2ebaeda13ba846c02
* | | | Merge "Adding getSupportedPictureSizes to CameraParameters.DO NOT MERGE" ↵Wu-cheng Li2010-08-191-0/+16
|\ \ \ \ | |/ / / | | | | | | | | into gingerbread
| * | | Adding getSupportedPictureSizes to CameraParameters.DO NOT MERGENipun Kwatra2010-08-191-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also added a struct 'Size' containing a width and a height field. Modified parse_size to optionally set an end pointer pointing to the character after the found size. Change-Id: I0c95ebf1ad4684721b32165f363db7d4d15a1b19