Merge commit '41aabeb51305d19747687f246080f44fc2a74435'
* commit '41aabeb51305d19747687f246080f44fc2a74435':
Added more robust tracking and cancelation of events.
Merge commit '2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7'
* commit '2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7':
Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.
Merge commit '1e6a3a53fc4d56e3a0f86c8721dedfd46e738a32' into gingerbread-plus-aosp
* commit '1e6a3a53fc4d56e3a0f86c8721dedfd46e738a32':
Added more robust tracking and cancelation of events.
This change fixes several issues where events would be dropped in the
input dispatch pipeline in such a way that the dispatcher could not
accurately track the state of the input device.
Given more robust tracking, we can now also provide robust cancelation
of input events in cases where an application might otherwise become
out of sync with the event stream due to ANR, app switch, policy decisions,
or forced focus transitions.
Pruned some of the input dispatcher log output.
Moved the responsibility for calling intercept*BeforeQueueing into
the input dispatcher instead of the input reader and added support for
early interception of injected events for events coming from trusted
sources. This enables behaviors like injection of media keys while
the screen is off, haptic feedback of injected virtual keys, so injected
events become more "first class" in a way.
Change-Id: Iec6ff1dd21e5f3c7feb80ea4feb5382bd090dbd9
- Register buffers with Gralloc when unflattening a GraphicBuffer (rather than
doing it in the Surface class).
- Add support for a GraphicBuffer that wraps an android_native_window_t*.
Change-Id: I029ac086111bbac800e5ca37eb505f558b718cd8
Merge commit '22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5'
* commit '22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5':
Switch Looper back to using poll() instead of epoll().
Merge commit 'bb70837397e3fb437b7b4443b37d7a83c11e6e43'
* commit 'bb70837397e3fb437b7b4443b37d7a83c11e6e43':
Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.
Merge commit '45bd1159fa34b51ba077e0cde760d171ca092552'
* commit '45bd1159fa34b51ba077e0cde760d171ca092552':
On this particular device the hardware video decoder spits out buffers that don't actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.
Part III: Move startRecording() call earlier, asking camera hal
to allocate video buffers before CameraSource.start() is called.
Change-Id: I3f1d7d5636ca2644fe52af61f297d48c6b1ce89d
o updated comments and streamlined the logic in
checkVideoSize() and checkFrameRate() as suggested
Change-Id: I49d04ac7998d4a215997aa63555dfb6e814e38d3
Merge commit 'f72dd0190ee64914161d361be1213eda8cab7b90' into gingerbread-plus-aosp
* commit 'f72dd0190ee64914161d361be1213eda8cab7b90':
Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.
Merge commit 'b37fcbfd7f9d65b90b43e0242903030c5a6517b5' into gingerbread-plus-aosp
* commit 'b37fcbfd7f9d65b90b43e0242903030c5a6517b5':
Added getter for session Id to AudioSink
Added a method to expose the audio session id at AudioSink interface
so that the AudioPlayer in stagefright can retrieve it.
Also:
- Fixed audio effect send level not being initialized in mediaplayer.
- Fixed compilation error when LOGV is enabled in mediaplayer JNI
Change-Id: I4bb55454fd63d646e0e677692d737c4843fb05fb
Merge commit 'd577cfd73a223279f9a5af698f55edd38a3fe4db' into gingerbread-plus-aosp
* commit 'd577cfd73a223279f9a5af698f55edd38a3fe4db':
Switch Looper back to using poll() instead of epoll().
Merge commit '949f7d9066e09768e570686a5695aaba4a1dafd0' into gingerbread-plus-aosp
* commit '949f7d9066e09768e570686a5695aaba4a1dafd0':
Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.
Merge commit '02654f01bc6bd2e581b4a1d2409ecea217294fa2' into gingerbread-plus-aosp
* commit '02654f01bc6bd2e581b4a1d2409ecea217294fa2':
On this particular device the hardware video decoder spits out buffers that don't actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.
Added a couple of micro-optimizations to avoid calling wake() unnecessarily
and reduce JNI overhead slightly.
Fixed a minor issue where we were not clearing the "next" field of Messages
returned by the MessageQueue so the Message would hold on to its successor
and potentially prevent the GC from collecting it if the message were leaked
somehow.
Change-Id: I488d29417ce0cdd7d0e447cda76ec978ef7f811c
Merge commit '56ee1080f004110bff622e5b60c243d9cabfe120'
* commit '56ee1080f004110bff622e5b60c243d9cabfe120':
Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.
Merge commit 'ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb'
* commit 'ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb':
fix [2835280] Add support for cancelling buffers to ANativeWindow
Merge commit 'a86a6c4e326bfdfc351dacca95b23bb78f78efbe'
* commit 'a86a6c4e326bfdfc351dacca95b23bb78f78efbe':
Fixed an issue where the reserved free space in the file writer was larger than intended
Merge commit '17bc4f65324a823598e7671256c815bf32ddcc95' into gingerbread-plus-aosp
* commit '17bc4f65324a823598e7671256c815bf32ddcc95':
Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.
Merge commit '78d15acfb20269ce263ce19514a2c0e7a98409e2' into gingerbread-plus-aosp
* commit '78d15acfb20269ce263ce19514a2c0e7a98409e2':
Make secure views tolerate IME overlays.
Merge commit 'f461930872beb4362998642c115691bdd2e94617' into gingerbread-plus-aosp
* commit 'f461930872beb4362998642c115691bdd2e94617':
fix [2835280] Add support for cancelling buffers to ANativeWindow
There is a new ANativeWindow::cancelBuffer() API that can be used to
cancel any dequeued buffer, BEFORE it's been enqueued. The buffer is
returned to the list of availlable buffers. dequeue and cancel are not
mutually thread safe, they must be called from the same thread or
external synchronization must be used.
Change-Id: I86cc7985bace8b6a93ad2c75d2bef5c3c2cb4d61
Merge commit '6f1c7bda39774fe3a1febf72b03c8ad481c1ea54' into gingerbread-plus-aosp
* commit '6f1c7bda39774fe3a1febf72b03c8ad481c1ea54':
Fixed an issue where the reserved free space in the file writer was larger than intended
the core screenshot function now can capture the screen at any lower resolution
performing bilinear filtering.
we also now have some client code to interface with the screenshot service.
it's now possible to request a screenshot at a lower resolution.
Change-Id: I33689bba98507ab928d0898b21596d0d2fe4b953
Merge commit 'f84a5918f5e0572c0280fa705970ef7459b45393' into gingerbread-plus-aosp
* commit 'f84a5918f5e0572c0280fa705970ef7459b45393':
Use pread() in ZipFileRO for Linux
The problem was that even though user does not explicitly request the max file size
limit via MediaRecorder.setMaxFileSize(), the file writer sets an implicit file
size limit if 32-bit file offset is used on user's behalf. The reserved free space
is estimated based on the file size, if the file size limit is set by the user.
The fix is to add an extra bool to tell the difference between an
explit requested file size and an implicit file limit and use that
to set the estimated moov box size accordingly.
Change-Id: I731aca6c7833aa764ed7b905edb77721577471b3
AssetManager instances are created by zygote and passed to all its
children so that they don't have to individually open
frameworks-res.apk. This creates a problem for determining the current
file offset when using lseek() on those files, because you can't
guarantee the cross-process locking of a mutex. Luckily, Linux
implements pread() to get around this suckiness.
The problem is that only Linux implements this, so we have to keep the
old locking for use on host builds with aapt and friends. aapt doesn't
have this same problem of sharing file descriptors across forked
processes, so we can keep the local AutoMutex to protect accesses of
those files.
Change-Id: Ibe9f11499a53fe345f50fbaea438815ec0fd363e
Merge commit 'b58b27142a936aa76897a7040c08b8a0989a685b' into gingerbread-plus-aosp
* commit 'b58b27142a936aa76897a7040c08b8a0989a685b':
ZipFileRO: moar logging and wrap close