OSDN Git Service

android-x86/frameworks-av.git
9 years agoMerge "Fix potential deadlock between AudioPolicyService and AudioSystem" into lmp-dev
Andy Hung [Mon, 8 Sep 2014 21:17:22 +0000 (21:17 +0000)]
Merge "Fix potential deadlock between AudioPolicyService and AudioSystem" into lmp-dev

9 years agoMerge "Camera2: reconfigure video snapshot size if needed" into lmp-dev
Yin-Chia Yeh [Mon, 8 Sep 2014 20:56:03 +0000 (20:56 +0000)]
Merge "Camera2: reconfigure video snapshot size if needed" into lmp-dev

9 years agoFix potential deadlock between AudioPolicyService and AudioSystem
Andy Hung [Mon, 8 Sep 2014 18:47:24 +0000 (11:47 -0700)]
Fix potential deadlock between AudioPolicyService and AudioSystem

Bug: 17109761
Change-Id: I315c1c5066f62b05e1c13b04fae1272b5fbce977

9 years agoMerge "NuPlayerDriver: put player in paused state when reaching EOS." into lmp-dev
Wei Jia [Mon, 8 Sep 2014 17:45:06 +0000 (17:45 +0000)]
Merge "NuPlayerDriver: put player in paused state when reaching EOS." into lmp-dev

9 years agoMerge "Make IPowerManager native conform to .aidl for oneway" into lmp-dev
Glenn Kasten [Mon, 8 Sep 2014 16:35:00 +0000 (16:35 +0000)]
Merge "Make IPowerManager native conform to .aidl for oneway" into lmp-dev

9 years agoCamera2: reconfigure video snapshot size if needed
Yin-Chia Yeh [Fri, 5 Sep 2014 21:14:44 +0000 (14:14 -0700)]
Camera2: reconfigure video snapshot size if needed

When recording fails to start due to stream configuration failed,
try configure stream again by setting jpeg stream to video size.

Bug: 16162133
Change-Id: Ib20271e787ae07719ce419f0b15c7f86434f7ebb

9 years agoMerge "audiopolicy: fix direct output profile probing" into lmp-dev
Eric Laurent [Mon, 8 Sep 2014 15:37:45 +0000 (15:37 +0000)]
Merge "audiopolicy: fix direct output profile probing" into lmp-dev

9 years agoMerge "Revert "Revert "disable AwesomePlayer for Ogg vorbis""" into lmp-dev
Andy Hung [Mon, 8 Sep 2014 04:46:12 +0000 (04:46 +0000)]
Merge "Revert "Revert "disable AwesomePlayer for Ogg vorbis""" into lmp-dev

9 years agoaudiopolicy: fix direct output profile probing
Eric Laurent [Sun, 7 Sep 2014 19:26:06 +0000 (12:26 -0700)]
audiopolicy: fix direct output profile probing

Do not select maximum sampling rate and channel count
when opening a direct output for the first time
to make sure that the combination of sampling rate
and channel count is supported by the connected sink.

Bug: 17047809.
Change-Id: I077a3c1436158378f2762343469ceb39fab9775e

9 years agoMerge "Fix "invalid device combination" in system audio mode." into lmp-dev
Jungshik Jang [Sat, 6 Sep 2014 02:58:39 +0000 (02:58 +0000)]
Merge "Fix "invalid device combination" in system audio mode." into lmp-dev

9 years agoMerge "DO NOT MERGE - MPEG4Extractor: parse csd correctly; workaround malformed csd...
Robert Shih [Sat, 6 Sep 2014 00:49:52 +0000 (00:49 +0000)]
Merge "DO NOT MERGE - MPEG4Extractor: parse csd correctly; workaround malformed csd" into lmp-dev

9 years agoDO NOT MERGE - MPEG4Extractor: parse csd correctly; workaround malformed csd
Robert Shih [Fri, 16 May 2014 19:22:35 +0000 (12:22 -0700)]
DO NOT MERGE - MPEG4Extractor: parse csd correctly; workaround malformed csd

Bug: 14895152
Change-Id: Ibfee9e176459099507589c26a5eca6c61caabd1c
(cherry picked from commit bc413f6ad0023f7ad451a0129a07fc31dbc65665)

9 years agoMake IPowerManager native conform to .aidl for oneway
Glenn Kasten [Fri, 5 Sep 2014 23:45:52 +0000 (16:45 -0700)]
Make IPowerManager native conform to .aidl for oneway

But provide a temporary escape hatch for AudioFlinger.
This oneway option will be removed as soon as possible.

Bug: 16408906
Change-Id: I058a50906af810787e444a96819cb781b7f639ad

9 years agoMerge "Cache audio attributes when player not available" into lmp-dev
Jean-Michel Trivi [Fri, 5 Sep 2014 23:36:21 +0000 (23:36 +0000)]
Merge "Cache audio attributes when player not available" into lmp-dev

9 years agoMerge "stagefright: allow P-frames spacing of 0 and 1" into lmp-dev
Lajos Molnar [Fri, 5 Sep 2014 23:08:53 +0000 (23:08 +0000)]
Merge "stagefright: allow P-frames spacing of 0 and 1" into lmp-dev

9 years agoMerge "GenericSource: refactor track selection for dedicated looper" into lmp-dev
Robert Shih [Fri, 5 Sep 2014 22:12:51 +0000 (22:12 +0000)]
Merge "GenericSource: refactor track selection for dedicated looper" into lmp-dev

9 years agoNuPlayerDriver: put player in paused state when reaching EOS.
Wei Jia [Fri, 5 Sep 2014 21:58:59 +0000 (14:58 -0700)]
NuPlayerDriver: put player in paused state when reaching EOS.

Bug: 17352759
Change-Id: I19b183e0a86b712524f79ec7c35e32b5a5b47bc6

9 years agoMerge "Camera API1: fix AE state check in precapture state" into lmp-dev
Zhijun He [Fri, 5 Sep 2014 21:53:53 +0000 (21:53 +0000)]
Merge "Camera API1: fix AE state check in precapture state" into lmp-dev

9 years agoMerge "NuPlayer: Restrict seek on video texture changes" into lmp-dev
Andy Hung [Fri, 5 Sep 2014 21:49:32 +0000 (21:49 +0000)]
Merge "NuPlayer: Restrict seek on video texture changes" into lmp-dev

9 years agoMerge "NuPlayer: Discard seeks when source and decoders are NULL" into lmp-dev
Andy Hung [Fri, 5 Sep 2014 20:38:27 +0000 (20:38 +0000)]
Merge "NuPlayer: Discard seeks when source and decoders are NULL" into lmp-dev

9 years agoMerge "Split CEA-608 Closed caption into 4 tracks CC1~CC4" into lmp-dev
Chong Zhang [Fri, 5 Sep 2014 19:19:47 +0000 (19:19 +0000)]
Merge "Split CEA-608 Closed caption into 4 tracks CC1~CC4" into lmp-dev

9 years agoCache audio attributes when player not available
Jean-Michel Trivi [Fri, 5 Sep 2014 18:20:11 +0000 (11:20 -0700)]
Cache audio attributes when player not available

Cache the audio attributes stored in a Parcel in the client-side
 MediaPlayer object if they are set through setParameter()
 before the server-side MediaPlayer is available. Apply them when
 the player is prepared.

Bug 17280746

Change-Id: I72f1a7fc4e2b076fae8cbdede77a2f74e98b2a03

9 years agoNuPlayer: Restrict seek on video texture changes
Andy Hung [Fri, 5 Sep 2014 18:42:58 +0000 (11:42 -0700)]
NuPlayer: Restrict seek on video texture changes

MediaPlayer::setVideoSurfaceTexture() should generate seek to refresh
display only if player is started and has video.

Bug: 17379148
Bug: 17404923
Change-Id: I5f55dc40943e4419d08be6fdab964b8a2c5ee519

9 years agoMerge "audio policy service: filter out delayed audio patch commands if needed."...
Eric Laurent [Fri, 5 Sep 2014 18:01:41 +0000 (18:01 +0000)]
Merge "audio policy service: filter out delayed audio patch commands if needed." into lmp-dev

9 years agoMerge "Fix to parse audio_source_t member of audio_attributes_t" into lmp-dev
Eric Laurent [Fri, 5 Sep 2014 17:13:31 +0000 (17:13 +0000)]
Merge "Fix to parse audio_source_t member of audio_attributes_t" into lmp-dev

9 years agoFix to parse audio_source_t member of audio_attributes_t
Hyejin Kim [Fri, 5 Sep 2014 06:50:03 +0000 (15:50 +0900)]
Fix to parse audio_source_t member of audio_attributes_t

When unmarshalling audio_attributes_t typed data,
it didn't parse the audio_source_t member between content_type and flags.

Bug: 16906307

Change-Id: Ia0d8df9b5c31441d34dc82678bceccd8ce31423d

9 years agoaudio policy service: filter out delayed audio patch commands if needed.
Eric Laurent [Thu, 4 Sep 2014 23:40:57 +0000 (16:40 -0700)]
audio policy service: filter out delayed audio patch commands if needed.

As for set parameters commands, create or release audio patch commands
modifying the same patch handle should be filtered by the audio policy service
command thread so that an immediate command is not overridden by
a pending delayed command.

Bug: 17379728.

Change-Id: I6aa4652b4bfec59eebd3c3cb7d1d9ac1bc1d6e49

9 years agoFix "invalid device combination" in system audio mode.
Jungshik Jang [Fri, 5 Sep 2014 12:25:48 +0000 (21:25 +0900)]
Fix "invalid device combination" in system audio mode.

HDMI-CEC system audio mode removes speaker from output
list. It also has multiple outputs by connected outputs.
However, getDeviceForVolume() doesn't cover multiple
output with no speaker or bluetooth case.
This change picks one of system audio outputs in order.

Bug: 17400026
Change-Id: I102fd0052c9c4c9543f9e8f3b16ec6815d7485d8

9 years agoNuPlayer: Discard seeks when source and decoders are NULL
Andy Hung [Thu, 4 Sep 2014 01:22:22 +0000 (18:22 -0700)]
NuPlayer: Discard seeks when source and decoders are NULL

Problem occurs when loop mode asynchronously seeks to the
start of the source after a MediaPlayer::reset().

Bug: 17379148
Change-Id: I50bfe65a753afffb1d478db54c76067a9c61a0ae

9 years agoMerge "PlaylistFetcher: do not reset mStartTimeUs if we are resuming" into lmp-dev
Robert Shih [Thu, 4 Sep 2014 22:58:34 +0000 (22:58 +0000)]
Merge "PlaylistFetcher: do not reset mStartTimeUs if we are resuming" into lmp-dev

9 years agostagefright: allow P-frames spacing of 0 and 1
Lajos Molnar [Thu, 4 Sep 2014 18:45:26 +0000 (11:45 -0700)]
stagefright: allow P-frames spacing of 0 and 1

Bug: 17387418
Change-Id: Ib966496b4ca220d96fb3741c29002c13cd2db848

9 years agoSplit CEA-608 Closed caption into 4 tracks CC1~CC4
Chong Zhang [Fri, 1 Aug 2014 20:46:53 +0000 (13:46 -0700)]
Split CEA-608 Closed caption into 4 tracks CC1~CC4

Bug: 16463078

Change-Id: Ib3073090934232016e535fbb8fa56cdf9d7ab6eb

9 years agoGenericSource: refactor track selection for dedicated looper
Robert Shih [Thu, 21 Aug 2014 00:00:21 +0000 (17:00 -0700)]
GenericSource: refactor track selection for dedicated looper

 - move getFormatMeta, getSelectedTrack, selectTrack, and seekTo to
   dedicated looper
 - start & dequeueAccessUnit posts readBuffer requests instead of reading
   directly
 - call internal doGetFormatMeta in onPrepareAsync

Bug: 16892748
Change-Id: I5d5e34381f1dfceca655c52a201627b53454ad22

9 years agoPlaylistFetcher: do not reset mStartTimeUs if we are resuming
Robert Shih [Sat, 30 Aug 2014 01:57:34 +0000 (18:57 -0700)]
PlaylistFetcher: do not reset mStartTimeUs if we are resuming

Bug: 17376049
Change-Id: Ie519bdf7128841172df41e6512d624e99d9853d6

9 years agoRevert "Revert "disable AwesomePlayer for Ogg vorbis""
Andy Hung [Wed, 3 Sep 2014 23:28:52 +0000 (23:28 +0000)]
Revert "Revert "disable AwesomePlayer for Ogg vorbis""

This reverts commit da65048e8e6f65ed9b3f23cda3f4554025c76fc4.

Deadlock audio issues for NuPlayer have been resolved.

Change-Id: I1853d367dc771a9396a9b2d48ff34e50c78c112c

9 years agoMerge "Fix the bug that same video frame has been decoded twice during port reconfig...
hkuang [Wed, 3 Sep 2014 21:54:45 +0000 (21:54 +0000)]
Merge "Fix the bug that same video frame has been decoded twice during port reconfig." into lmp-dev

9 years agoMerge "NuPlayer: add seek operation when change video texture surface." into lmp-dev
Wei Jia [Wed, 3 Sep 2014 21:23:57 +0000 (21:23 +0000)]
Merge "NuPlayer: add seek operation when change video texture surface." into lmp-dev

9 years agoCamera API1: fix AE state check in precapture state
Zhijun He [Wed, 3 Sep 2014 18:36:00 +0000 (11:36 -0700)]
Camera API1: fix AE state check in precapture state

It is legal to transit to CONVERGED or FLASH_REQUIRED after a AE precapture
trigger.

Bug: 17365185
Change-Id: Id041eff5eac564c32d09b547a0139d24807336f4

9 years agoMerge "Use CharacterEncodingDetector in metadataretriever" into lmp-dev
Marco Nelissen [Wed, 3 Sep 2014 19:09:43 +0000 (19:09 +0000)]
Merge "Use CharacterEncodingDetector in metadataretriever" into lmp-dev

9 years agoFix the bug that same video frame has been decoded twice during port reconfig.
hkuang [Tue, 2 Sep 2014 20:57:31 +0000 (13:57 -0700)]
Fix the bug that same video frame has been decoded twice during port reconfig.

This does not hurt normal video playback. But in adaptive playback,
this will lead to a little bit delay for some clips.

Bug: 17202935

Change-Id: I5af0a5911e28a1597c74d79960fac25faf72c9d2

9 years agoNuPlayer: add seek operation when change video texture surface.
Wei Jia [Wed, 3 Sep 2014 02:01:34 +0000 (19:01 -0700)]
NuPlayer: add seek operation when change video texture surface.

Bug: 17278770

Change-Id: I9fd5207e1eccb91e64644d2d1da4183d4bf7ac2c

9 years agoMerge "Move stale handler cleanup to constructor" into lmp-dev
Marco Nelissen [Wed, 3 Sep 2014 15:52:32 +0000 (15:52 +0000)]
Merge "Move stale handler cleanup to constructor" into lmp-dev

9 years agoMerge "Fix more potential deadlocks in ALooperRoster" into lmp-dev
Marco Nelissen [Wed, 3 Sep 2014 15:52:23 +0000 (15:52 +0000)]
Merge "Fix more potential deadlocks in ALooperRoster" into lmp-dev

9 years agoMerge "Restore the ability to build tee sink for debugging" into lmp-dev
Glenn Kasten [Wed, 3 Sep 2014 15:29:57 +0000 (15:29 +0000)]
Merge "Restore the ability to build tee sink for debugging" into lmp-dev

9 years agoMerge "render one video frame after flush even when we're paused" into lmp-dev
Chong Zhang [Wed, 3 Sep 2014 01:13:08 +0000 (01:13 +0000)]
Merge "render one video frame after flush even when we're paused" into lmp-dev

9 years agorender one video frame after flush even when we're paused
Chong Zhang [Sat, 30 Aug 2014 01:34:17 +0000 (18:34 -0700)]
render one video frame after flush even when we're paused

allows the video to get some update when user seeks while paused.

Bug: 17140448

Change-Id: I064806bfd566585eeb4150a508422c9775e08f99

9 years agoaudio flinger: fix use of global effect buffer
Eric Laurent [Tue, 2 Sep 2014 21:45:53 +0000 (14:45 -0700)]
audio flinger: fix use of global effect buffer

When float mixing format is enabled, audio effects use a specific
buffer in 16 bit format. This buffer was not enabled when only
global effects were present resulting in the mixer accumulating directly
to the output sink buffer.

Bug: 16202259.
Change-Id: I3537d36c63196d97772f0ab22dd31d04dfa7fdd6

9 years agoRestore the ability to build tee sink for debugging
Glenn Kasten [Thu, 28 Aug 2014 23:23:16 +0000 (16:23 -0700)]
Restore the ability to build tee sink for debugging

This changelist does not enable tee sink, but makes it possible to do so.
Tee sink had suffered some bit rot since it is not built by default.

Also fixes a crash for > 2 byte per sample or > 2 channels.
Still does not write correct header for floating-point;
that will be best solved by moving to libsndfile.

Bug: 16990102
Change-Id: I8e92c588ccc513d7802d696fcfb324e815772df6

9 years agoUse CharacterEncodingDetector in metadataretriever
Marco Nelissen [Fri, 29 Aug 2014 23:00:28 +0000 (16:00 -0700)]
Use CharacterEncodingDetector in metadataretriever

instead of media scanner. This way the java MediaMetadataRetriever API
will give the same result as the media scanner.
Also apply some tweaks to the encoding detector to improve handling of
ISO-8859-1 tags.

Bug: 1630258117205395

Change-Id: I1682a7a6a8bf04cffaa455044ba72dd7fd152d49

9 years agoMerge "camera1: Ensure MemoryHeap buffers are mmapped before copying." into lmp-dev
Ruben Brunk [Tue, 2 Sep 2014 18:19:13 +0000 (18:19 +0000)]
Merge "camera1: Ensure MemoryHeap buffers are mmapped before copying." into lmp-dev

9 years agoMerge "Add adaptive playback support to VPX decoder." into lmp-dev
Ronghua Wu [Tue, 2 Sep 2014 17:43:48 +0000 (17:43 +0000)]
Merge "Add adaptive playback support to VPX decoder." into lmp-dev

9 years agoMerge "NuPlayerRenderer: stop feeding AudioSink when paused." into lmp-dev
Wei Jia [Tue, 2 Sep 2014 01:40:36 +0000 (01:40 +0000)]
Merge "NuPlayerRenderer: stop feeding AudioSink when paused." into lmp-dev

9 years agoMerge "GenericSource: set DRM playback status." into lmp-dev
Ronghua Wu [Sat, 30 Aug 2014 02:06:51 +0000 (02:06 +0000)]
Merge "GenericSource: set DRM playback status." into lmp-dev

9 years agoMerge "MediaCodec: set state to UNINITIALIZED when receiving fatal error." into lmp-dev
Wei Jia [Sat, 30 Aug 2014 02:04:48 +0000 (02:04 +0000)]
Merge "MediaCodec: set state to UNINITIALIZED when receiving fatal error." into lmp-dev

9 years agoMerge "Tunneled Video Playback: Changed AudioHwSync token to int32_t to match Audio...
Rachad [Sat, 30 Aug 2014 01:10:37 +0000 (01:10 +0000)]
Merge "Tunneled Video Playback: Changed AudioHwSync token to int32_t to match Audio stack api." into lmp-dev

9 years agoMediaCodec: set state to UNINITIALIZED when receiving fatal error.
Wei Jia [Fri, 29 Aug 2014 21:47:50 +0000 (14:47 -0700)]
MediaCodec: set state to UNINITIALIZED when receiving fatal error.

NuPlayerDecoder: release MediaCodec when handling an error.

Bug: 16661923
Change-Id: I1b6fd7ee5cc1136b3f289135e5360cd3d98f9799

9 years agoNuPlayerRenderer: stop feeding AudioSink when paused.
Wei Jia [Fri, 29 Aug 2014 23:33:49 +0000 (16:33 -0700)]
NuPlayerRenderer: stop feeding AudioSink when paused.

NuPlayerDriver: current position is updated only in running state.

Bug: 17141882
Change-Id: Ia88551cc29ef8f0e7ef0600a214feb5633389b6e

9 years agocamera1: Ensure MemoryHeap buffers are mmapped before copying.
Ruben Brunk [Sat, 30 Aug 2014 00:25:13 +0000 (17:25 -0700)]
camera1: Ensure MemoryHeap buffers are mmapped before copying.

Bug: 16986293
Change-Id: Icb68254d7ed1812fa9e60342749a2746d6fcfb17

9 years agoMerge "stagefright: add codec capability info for google video codecs" into lmp-dev
Lajos Molnar [Fri, 29 Aug 2014 21:39:34 +0000 (21:39 +0000)]
Merge "stagefright: add codec capability info for google video codecs" into lmp-dev

9 years agoGenericSource: set DRM playback status.
Ronghua Wu [Thu, 28 Aug 2014 22:50:29 +0000 (15:50 -0700)]
GenericSource: set DRM playback status.

Bug: 17307158
Change-Id: I36b801a9b67831b618930cf1241756bb9644b4fd

9 years agoMerge "sound trigger: fix cross deadlock between service and client" into lmp-dev
Eric Laurent [Fri, 29 Aug 2014 18:29:49 +0000 (18:29 +0000)]
Merge "sound trigger: fix cross deadlock between service and client" into lmp-dev

9 years agoMerge "audio policy: fix input source passed to openInput()" into lmp-dev
Eric Laurent [Fri, 29 Aug 2014 18:29:36 +0000 (18:29 +0000)]
Merge "audio policy: fix input source passed to openInput()" into lmp-dev

9 years agoMerge "audiopolicy: Indicate output device change to all input threads for pre-proces...
Dmitry Shmidt [Fri, 29 Aug 2014 18:28:26 +0000 (18:28 +0000)]
Merge "audiopolicy: Indicate output device change to all input threads for pre-processing" into lmp-dev

9 years agosound trigger: fix cross deadlock between service and client
Eric Laurent [Fri, 29 Aug 2014 02:45:37 +0000 (19:45 -0700)]
sound trigger: fix cross deadlock between service and client

Do not call callback methods on ISoundTriggerClient with the service mutex
locked: the client implementation will lock its mutex to process
the callback and if a request from the same client with client
mutex locked was waiting for the service mutex a deadlock occurs.

Bug: 16873049.
Change-Id: Ifc3b31fdfaed525981fa59876c041478f38b42e8

9 years agoaudio policy: fix input source passed to openInput()
Eric Laurent [Fri, 29 Aug 2014 02:37:25 +0000 (19:37 -0700)]
audio policy: fix input source passed to openInput()

The input source passed to openInput() must be
modified from HOTWORD to VOICE_RECOGNITION if the capture does not
correspond to a sound trigger session.

Bug: 16731718.
Change-Id: I48aa4180e75dd5335cd096b48da1c15f2236e6ed

9 years agoTunneled Video Playback:
Rachad [Fri, 29 Aug 2014 02:08:45 +0000 (19:08 -0700)]
Tunneled Video Playback:
Changed AudioHwSync token to int32_t to match Audio stack api.

Bug: 17112525
Change-Id: I673819495c2e7b540e8d7572cc95796bddbf63bb

9 years agoMerge "[AU]Sync libmedia/Android.mk modification from KLP-Sprout" into lmp-dev
Bart Sears [Fri, 29 Aug 2014 02:06:36 +0000 (02:06 +0000)]
Merge "[AU]Sync libmedia/Android.mk modification from KLP-Sprout" into lmp-dev

9 years ago[AU]Sync libmedia/Android.mk modification from KLP-Sprout
Hochi Huang [Sat, 23 Aug 2014 01:19:27 +0000 (09:19 +0800)]
[AU]Sync libmedia/Android.mk modification from KLP-Sprout

Bug: 17322146

Change-Id: If29fbd87252710bd794f2e0bb270bc846380ef1d
Signed-off-by: Hochi Huang <hochi.huang@mediatek.com>
9 years agoaudiopolicy: Indicate output device change to all input threads for pre-processing
bryant_liu [Tue, 19 Aug 2014 12:07:05 +0000 (20:07 +0800)]
audiopolicy: Indicate output device change to all input threads for pre-processing

Bug: 17129715

Change-Id: I1fd938cce0b85241c80ea00f3d013a98948d3975

9 years agoframeworks: av: AudioPolicyEffect: Add refCount for each session
bryant_liu [Wed, 20 Aug 2014 10:06:13 +0000 (18:06 +0800)]
frameworks: av: AudioPolicyEffect: Add refCount for each session

Audio framework stops and restarts AudioTracks on same audio session.
Sometimes the AudioTrack start() comes before a stop(). As effects
are linked to the session, they should only be created on the last
stop() related to that session.

Bug: 17201117

Change-Id: I19343e293d6b7b6b794fe05ebd0dd239ed3b075c

9 years agoMerge "CameraService: Create a dummy stream when 0 streams are requested." into lmp-dev
Eino-Ville Talvala [Thu, 28 Aug 2014 23:46:08 +0000 (23:46 +0000)]
Merge "CameraService: Create a dummy stream when 0 streams are requested." into lmp-dev

9 years agoMerge "PlaylistFetcher: add lower bound check when starting live streams" into lmp-dev
Robert Shih [Thu, 28 Aug 2014 22:57:39 +0000 (22:57 +0000)]
Merge "PlaylistFetcher: add lower bound check when starting live streams" into lmp-dev

9 years agoCameraService: Create a dummy stream when 0 streams are requested.
Eino-Ville Talvala [Wed, 27 Aug 2014 21:41:33 +0000 (14:41 -0700)]
CameraService: Create a dummy stream when 0 streams are requested.

A workaround for a camera device HAL v3.2 or older specification hole - it's
not acceptable to configure_streams with 0 output streams. However, we allow for
this at the public API level, to allow an application to release all output streams.

So in this case, create a dummy stream that doesn't actually do anything as a placeholder.

Bug: 17220694
Change-Id: Ib25242ffc2c9f2b2f619fd5fe6d652266579da85

9 years agoPlaylistFetcher: add lower bound check when starting live streams
Robert Shih [Thu, 28 Aug 2014 22:18:53 +0000 (15:18 -0700)]
PlaylistFetcher: add lower bound check when starting live streams

Avoid false 'missed the boat' alarms that cause us to queue a bogus
discontinuity before even starting.

Bug: 17303166
Change-Id: I5003934fc695f30db2df9a0803b8fe960d77a458

9 years agoMerge "Fix audio dropouts with multiple playback streams." into lmp-dev
Paul McLean [Thu, 28 Aug 2014 20:44:57 +0000 (20:44 +0000)]
Merge "Fix audio dropouts with multiple playback streams." into lmp-dev

9 years agoMove stale handler cleanup to constructor
Marco Nelissen [Thu, 28 Aug 2014 19:40:34 +0000 (12:40 -0700)]
Move stale handler cleanup to constructor

This avoids the potential side effect of deleting more ALoopers
inside the cleanup loop.

Bug: 17059501
Change-Id: I41efaf490449b95fedfe01175f3b19067d50da24

9 years agoFix more potential deadlocks in ALooperRoster
Marco Nelissen [Thu, 28 Aug 2014 17:49:08 +0000 (10:49 -0700)]
Fix more potential deadlocks in ALooperRoster

Bug: 17059501
Change-Id: I242f2859527bed2d6e275c27de94fb19f4dcdc28

9 years agoAdd adaptive playback support to VPX decoder.
Ronghua Wu [Fri, 22 Aug 2014 19:49:26 +0000 (12:49 -0700)]
Add adaptive playback support to VPX decoder.

Bug: 13842676
Change-Id: I9c054ea489fd3a71b3b2394f15a85b84d42edb5a

9 years agoMerge "audio policy: remove audio patch when closing input or output" into lmp-dev
Eric Laurent [Thu, 28 Aug 2014 15:32:53 +0000 (15:32 +0000)]
Merge "audio policy: remove audio patch when closing input or output" into lmp-dev

9 years agoaudio policy: remove audio patch when closing input or output
Eric Laurent [Wed, 27 Aug 2014 22:32:29 +0000 (15:32 -0700)]
audio policy: remove audio patch when closing input or output

Make sure that an audio patch having an output as source or input as sink
is removed when this input or output is closed.

Bug: 17303725.

Change-Id: I234d54a25ce0b579eeeafdcfda3a0594f048768c

9 years agoMerge "cameraservice: decrease zsl metadata queue size by 1" into lmp-dev
Yin-Chia Yeh [Wed, 27 Aug 2014 23:47:42 +0000 (23:47 +0000)]
Merge "cameraservice: decrease zsl metadata queue size by 1" into lmp-dev

9 years agoMerge "Camera API1: Fix ZSLProcessor3 deadlock" into lmp-dev
Zhijun He [Wed, 27 Aug 2014 23:42:01 +0000 (23:42 +0000)]
Merge "Camera API1: Fix ZSLProcessor3 deadlock" into lmp-dev

9 years agoCamera API1: Fix ZSLProcessor3 deadlock
Zhijun He [Wed, 27 Aug 2014 22:50:25 +0000 (15:50 -0700)]
Camera API1: Fix ZSLProcessor3 deadlock

ZSLProcessor3 shouldn't acquire mInputMutex in onBufferReleased call for output
buffers, because the caller (Camera3Stream::returnBuffer) holds the camera3
stream lock already. This could cause deadlock for ZSL reprocess request as it
holds the ZSLProcessor3 input lock and try to acquire camera3 stream lock to
submit the request.

Bug: 17299038
Change-Id: I6a7bf8ebd7c2064852358c655f3a3e9a67769213

9 years agoFix audio dropouts with multiple playback streams.
Paul McLean [Wed, 20 Aug 2014 23:47:57 +0000 (16:47 -0700)]
Fix audio dropouts with multiple playback streams.

Bug 17136569

Change-Id: I7f69cb24168c7d27ce28679735f53c1ece4014c1

9 years agoMerge "Fix potential deadlock in unregisterStaleHandlers()" into lmp-dev
Marco Nelissen [Wed, 27 Aug 2014 23:26:29 +0000 (23:26 +0000)]
Merge "Fix potential deadlock in unregisterStaleHandlers()" into lmp-dev

9 years agoFix potential deadlock in unregisterStaleHandlers()
Marco Nelissen [Wed, 27 Aug 2014 22:20:45 +0000 (15:20 -0700)]
Fix potential deadlock in unregisterStaleHandlers()

The scenario is that a call to unregisterStaleHandlers() is in progress,
and is holding a temporary sp<ALooper> reference to an active ALooper inside
of the loop. At this point the only other remaining external reference to
the ALooper goes away, so the temporary sp<ALooper> in the loop is now
the only reference keeping that object alive. When the loop iterates and
the sp<> goes out of scope, the ALooper destructor is called, which in turn
calls unregisterStaleHandlers again, resulting in a recursive lock.

Bug: 17300093
Change-Id: I116f2ffab4ae7c43b6bcf54a367ae6f9d77c9626

9 years agocameraservice: decrease zsl metadata queue size by 1
Yin-Chia Yeh [Wed, 27 Aug 2014 19:58:33 +0000 (12:58 -0700)]
cameraservice: decrease zsl metadata queue size by 1

Zsl buffer needs to be longer than metadata queue to ensure that
oldest metadata can always find a match in buffer queue.
Since we don't want to add memory overhead, decrease metadata
queue size by one serves the same purpose.

bug 17264283

Change-Id: Ic53441cc29c98e57d3345f5845d92839d0ce6faf

9 years agoMerge "AudioPlayback: delay the post of EOS based on pending playout." into lmp-dev
Ronghua Wu [Wed, 27 Aug 2014 21:52:39 +0000 (21:52 +0000)]
Merge "AudioPlayback: delay the post of EOS based on pending playout." into lmp-dev

9 years agoAudioPlayback: delay the post of EOS based on pending playout.
Ronghua Wu [Wed, 27 Aug 2014 19:05:48 +0000 (12:05 -0700)]
AudioPlayback: delay the post of EOS based on pending playout.

Bug: 16840522
Change-Id: Icdc8888f5a8a77e2e5ebeb8a6934c7d79bd9e71a

9 years agoCameraService: Correct API2 error handling
Eino-Ville Talvala [Wed, 6 Aug 2014 21:32:02 +0000 (14:32 -0700)]
CameraService: Correct API2 error handling

- Add more error codes to the binder camera2 callbacks
- Translate HAL errors to callback errors
- When flushing, report failures for queued requests
- Treat stream config failure as nonfatal
- Send request errors when buffers aren't available for captures

Bug: 15524101
Bug: 14448494
Bug: 11272459
Bug: 17160301
Change-Id: I81aa54e805a9cce1cb8a6a9374549daa7666deb2

9 years agoMerge "Fix memory leak in getConnectionState" into lmp-dev
Marco Nelissen [Wed, 27 Aug 2014 17:58:14 +0000 (17:58 +0000)]
Merge "Fix memory leak in getConnectionState" into lmp-dev

9 years agoMerge "Fix AudioMixer MONO muted track handling" into lmp-dev
Andy Hung [Wed, 27 Aug 2014 03:41:29 +0000 (03:41 +0000)]
Merge "Fix AudioMixer MONO muted track handling" into lmp-dev

9 years agoMerge "NuPlayer: set controlledByApp to true when creating Surface." into lmp-dev
Wei Jia [Wed, 27 Aug 2014 03:29:59 +0000 (03:29 +0000)]
Merge "NuPlayer: set controlledByApp to true when creating Surface." into lmp-dev

9 years agoFix memory leak in getConnectionState
Marco Nelissen [Mon, 25 Aug 2014 22:58:39 +0000 (15:58 -0700)]
Fix memory leak in getConnectionState

Turns out having an sp<> point at the containing object doesn't really
work so well.

Bug: 17210991
Change-Id: I4bcb0c38adffc574d661f0772583357868f6c5b4

9 years agoMerge "Fix SoundPool lockup" into lmp-dev
Marco Nelissen [Tue, 26 Aug 2014 22:28:35 +0000 (22:28 +0000)]
Merge "Fix SoundPool lockup" into lmp-dev

9 years agoNuPlayer: set controlledByApp to true when creating Surface.
Wei Jia [Tue, 26 Aug 2014 22:24:43 +0000 (15:24 -0700)]
NuPlayer: set controlledByApp to true when creating Surface.

This fixes hang when trying to dequeue buffer from native window
followed by a flush.

Bug: 16303659
Bug: 17250931
Change-Id: Ib87ae558b020f5ce82b4192ec63339c93a72a2e9

9 years agoFix SoundPool lockup
Marco Nelissen [Tue, 26 Aug 2014 20:57:32 +0000 (13:57 -0700)]
Fix SoundPool lockup

NuPlayerDriver needs to update its internal state before calling
its listener, so that when the listener calls back into NuPlayerDriver,
NuPlayerDriver has the right state.

Bug: 14057920
Change-Id: I224882c427f5e3c9d4bf96c5d68075e235062401

9 years agoMerge "do string compare with mime immediately after we get the value" into lmp-dev
Chong Zhang [Tue, 26 Aug 2014 17:38:17 +0000 (17:38 +0000)]
Merge "do string compare with mime immediately after we get the value" into lmp-dev

9 years agodo string compare with mime immediately after we get the value
Chong Zhang [Tue, 26 Aug 2014 16:56:52 +0000 (09:56 -0700)]
do string compare with mime immediately after we get the value

Bug: 17210803
Change-Id: I4d20dd4b95d18251c18a371bd8f89b1320b38879

9 years agoFix AudioMixer MONO muted track handling
Andy Hung [Tue, 26 Aug 2014 00:15:29 +0000 (17:15 -0700)]
Fix AudioMixer MONO muted track handling

Incorrect handling caused "stereo" mode to be used.
Augmented error handling to print more debug info.

Bug: 17208475
Change-Id: I5bcaf0ba5bd5a4f7d4885f8cce43bbf42e5f1e6b