commit 08259dd3dc9026887f9bbfedaf45866eb56ea9bc
Author: Andreas Huber <andih@google.com>
Date: Thu Nov 5 12:02:31 2009 -0800
DO NOT MERGE: Use PV for metadata extraction even if stagefright is used for playback.
commit 991832fe4dc012e51d3d9ed8d647c7f09991858f
Author: Andreas Huber <andih@google.com>
Date: Thu Nov 5 11:24:11 2009 -0800
DO NOT MERGE: Do not assert if we encounter OMX_StateInvalid. All bets are off though.
commit cec45cf302d9218fe79956cbe8a462d7ca3a10bb
Author: Andreas Huber <andih@google.com>
Date: Mon Oct 26 16:11:54 2009 -0700
DO NOT MERGE: When freeing an OMX node, attempt to transition it from its current state all the way to "Loaded" in order to properly free any allocated buffers.
commit 34a1e885ef9113d68acbc26d36fcc47fdebbed84
Author: Andreas Huber <andih@google.com>
Date: Thu Nov 5 11:10:49 2009 -0800
DO NOT MERGE: Fix heap corruptin in OMXNodeInstance.
commit 5a47f7439a1298b330541a7e4e647a8b44487388
Author: Andreas Huber <andih@google.com>
Date: Thu Nov 5 11:08:19 2009 -0800
DO NOT MERGE: Fix seek-on-initial-read behaviour of OMXCodec.
commit 45bed64722501b9f411a2940aff5aff4cc4d2e98
Author: Andreas Huber <andih@google.com>
Date: Thu Nov 5 11:02:23 2009 -0800
DO NOT MERGE: Renaming string.h to stagefright_string.h to avoid conflicts.
commit 6738e306a50196f31a73d4fc7b7c45faff639903
Author: Andreas Huber <andih@google.com>
Date: Thu Oct 15 13:46:54 2009 -0700
DO NOT MERGE: Reimplement the OMX backend for stagefright.
Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup.
Changed APIs to conform to the rest of the system.
* changes:
Modify the behavior of createThumbnailForEXIF() to: returning SizedThumbnailBitmap, which contains the downsampled bitmap either from the thumbnail in EXIF or the full image.
Merge commit '67b692920c18f99b096dce285adc6f7439fa866c' into eclair-mr2
* commit '67b692920c18f99b096dce285adc6f7439fa866c':
Fix issue 2203561: Sholes: audio playing out of earpiece.
Create a new IAudioTrack interface to AudioFlinger when start() fails due to a broken pipe error.
Do the same if start fails due to the same error after time out in obtainBuffer().
Do not indicate that the AudioTrack is started to AudioPolicyManager if IAudioTrack start fails.
This avoids that an AudioTrack keeps a dead IAudioTrack after a media server crash.
Same modifications for AudioRecord.
Add a flag to ToneGenerator indicating that the callback thread can call Java. Without it, when the media server crashes and restarts, the AudioSystem error callback will crash in JNI if the IAudiotrack is created from AudioTrack callback thread.
Merge commit '7ed0ceeba54712f76e9a4f2dd4c9197d76813488' into eclair-mr2
* commit '7ed0ceeba54712f76e9a4f2dd4c9197d76813488':
Add new audio sources to support the A1026 recording configurations.
Merge commit '338ccf43b6a4468aea6aa7d831be7d6c8d8d134d' into eclair-mr2
* commit '338ccf43b6a4468aea6aa7d831be7d6c8d8d134d':
Fix video flickering by propagating the NO_CACHING flag from the master to MemoryHeapPMem.
Merge commit 'f67eff177515baa421d8717ee20efdc516fde580' into eclair-mr2
* commit 'f67eff177515baa421d8717ee20efdc516fde580':
Add windows media support check in MediaMetadataRetrieverTest
Merge commit '1d9246e8bb8de624e14c55dce57e93da18cfd7a8' into eclair-mr2
* commit '1d9246e8bb8de624e14c55dce57e93da18cfd7a8':
Make sure the visualization stops immediately when sound stops, instead of continuing for a fraction of a second.
Merge commit '3a8141416a0b1d517d4729eba4bcf914c468e20b' into eclair-mr2
* commit '3a8141416a0b1d517d4729eba4bcf914c468e20b':
Dump media recorder PID in dumpsys media.player, and fix minor bugs.
Merge commit '898897338dfd62a268a89fb55ee900a9bd5a683f' into eclair-mr2
* commit '898897338dfd62a268a89fb55ee900a9bd5a683f':
Fix bug 2201417. Whenever the System setting that indicates
Merge commit '98de26e06aeab9d3e6abd92080eec9ad54f537b6' into eclair-mr2
* commit '98de26e06aeab9d3e6abd92080eec9ad54f537b6':
Add some logging to detect if AsyncPlayer is lagging. Bug 2201082.
Merge commit 'adf4b4f5cd5982a56f8027a5a91b25762dd7b1bd' into eclair-mr2
* commit 'adf4b4f5cd5982a56f8027a5a91b25762dd7b1bd':
Fixed the H263 video duation which caused the incorrect video validation.
Merge commit 'e8543418783f8f8f9a6bafdaa1dd6289661eac85' into eclair-mr2
* commit 'e8543418783f8f8f9a6bafdaa1dd6289661eac85':
Run the metadataretriever at background priority. Bug 2187133.
Merge commit '54620b1a77e51b3fa531dbd099bd69c39d7d0029' into eclair-mr2
* commit '54620b1a77e51b3fa531dbd099bd69c39d7d0029':
Revert "Now that the underlying bug is fixed we can continue using OMX_UseBuffer for this decoder's input buffers."
* changes:
Fix bug 2201417. Whenever the System setting that indicates whether the notifcation stream uses the ring volume changes, the table of stream volume aliases in AudioService is updated. But the name of the alias stored in VolumeStreamState.mVolumeIndexSettingName was not updated whenever the NOTIFICATIONS_USE_RING_VOLUME setting was updated. This caused the wrong volume setting to be persisted. This change ensures the setting name is updated whenever the volume alias is, and persists the notification volume change right away (instead of after a delay), so that registered observers are notified right away. The notification seekbar in the sound settings is an example of such an observer.
whether the notifcation stream uses the ring volume changes, the
table of stream volume aliases in AudioService is updated. But the
name of the alias stored in VolumeStreamState.mVolumeIndexSettingName
was not updated whenever the NOTIFICATIONS_USE_RING_VOLUME setting
was updated. This caused the wrong volume setting to be persisted.
This change ensures the setting name is updated whenever the volume
alias is, and persists the notification volume change right away
(instead of after a delay), so that registered observers are notified
right away. The notification seekbar in the sound settings is an
example of such an observer.
This change forces metadata retreiver threads to background priority.
Uses an inner class to encapsulate the priority change so that it
automatically restores priority when returning to the client.