summaryrefslogtreecommitdiffstats
path: root/services
Commit message (Collapse)AuthorAgeFilesLines
* AudioFlinger: offload playback, non-blocking writeEric Laurent2013-07-2511-321/+1153
| | | | | | | | | | | | | | | | | | | | | | | | - Added specialized playback thread class for offload playback, derived from directoutput thread. This thread type handles specific state transitions for offloaded tracks and offloading commands (pause/resume/drain/flush..) to audio HAL. As opposed to other threads, does not go to standby if the track is paused. - Added support for asynchronous write and drain operations at audio HAL. Use a thread to handle async callback events from HAL: this avoids locking playback thread mutex when executing the callback and cause deadlocks when calling audio HAL functions with the playback thread mutex locked. - Better accouting for track activity: call start/stop and release Output methods in audio policy manager when tracks are actually added and removed from the active tracks list. Added a command thread in audio policy service to handle stop/release commands asynchronously and avoid deadlocks with playback thread. - Track terminated status is not a state anymore. This condition is othogonal to state to permitted state transitions while terminated. Change-Id: Id157f4b3277620568d8eace7535d9186602564de
* camera2: Implement ICameraDeviceUser::waitUntilIdleZhijun He2013-07-233-1/+27
| | | | | | Also fixed some logging typo Change-Id: Ib254bdb137dca10b12595c23aeb1c53097423425
* Camera: ProCamera connect need support HAL3 deviceZhijun He2013-07-221-0/+1
| | | | Change-Id: Iae7e5f9e6387f61f1c4bbb91f75803fc1fdf2668
* Merge "Use AudioSystem::setLowRamDevice() to configure memory"Glenn Kasten2013-07-225-18/+80
|\
| * Use AudioSystem::setLowRamDevice() to configure memoryGlenn Kasten2013-07-195-18/+80
| | | | | | | | | | Bug: 9798886 Change-Id: I9321e3f369f1ed9429ae222e3926ebdeb012b8b0
* | Merge "Revert "Fix Audioflinger crash when TeeSink is enabled""Glenn Kasten2013-07-221-3/+2
|\ \ | |/
| * Revert "Fix Audioflinger crash when TeeSink is enabled"Glenn Kasten2013-07-191-3/+2
| | | | | | | | | | | | | | This reverts commit 84e391686d7eced293913d1d7993721224ee0ba1. Bug: 8834855 Change-Id: I8211ef5ea5d87d97ada115723df31c8057f38ca8
* | Merge "Fix compile warning"Glenn Kasten2013-07-221-1/+1
|\ \
| * | Fix compile warningGlenn Kasten2013-07-191-1/+1
| | | | | | | | | | | | Change-Id: I80de4a013dc65eb7c532561438fd10e005354c03
* | | Merge "camera2: Fix request ID bug"Zhijun He2013-07-201-1/+1
|\ \ \
| * | | camera2: Fix request ID bugZhijun He2013-07-191-1/+1
| |/ / | | | | | | | | | | | | | | | Wrong request id was pushed in request list. Change-Id: I55bf7ae84ca41eec79db1a81d2cde35beaa2a6b9
* | | Merge "update to new Consumer APIs"Mathias Agopian2013-07-205-10/+5
|\ \ \
| * | | update to new Consumer APIsMathias Agopian2013-07-165-10/+5
| | | | | | | | | | | | | | | | Change-Id: I3c5d4be2a2e8783fbf98b3e268fd02658f71dc7d
* | | | am b0177ff2: am 46910bdc: Camera2/3: Fix deadlock when starting recording ↵Eino-Ville Talvala2013-07-197-89/+140
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | before preview. * commit 'b0177ff25e3e620be6ebe1e2c3f645b2f05dd57e': Camera2/3: Fix deadlock when starting recording before preview.
| * | | am 46910bdc: Camera2/3: Fix deadlock when starting recording before preview.Eino-Ville Talvala2013-07-197-89/+140
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * commit '46910bdc57c35ac36bd4adcbb76f4f3a590e3f21': Camera2/3: Fix deadlock when starting recording before preview.
| | * | | Camera2/3: Fix deadlock when starting recording before preview.Eino-Ville Talvala2013-07-187-89/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move 3A notification synthesis for HAL3 devices from Camera3Device::processCaptureResult to Camera2Client's FrameProcessor. This will ensure that calls to processCaptureResult from HAL can never block on Camera2Client internal mutexes. Bug: 9923891 Change-Id: I5184649bf45c0807babe6b8c0e1239e959cd3480
* | | | | Make AudioFlinger::instantiate() more resilient when called from separate moduleGlenn Kasten2013-07-1913-21/+69
| |_|_|/ |/| | | | | | | | | | | | | | | Bug: 8834855 Change-Id: I4cd842cdfb09d2aaaaab9df9ac3bec6179709bd3
* | | | Fix theoretical memory leak in mConfigEventsGlenn Kasten2013-07-172-0/+7
| | | | | | | | | | | | | | | | Change-Id: I137f70676c8919661e716c33e0dd9c25c2b6285c
* | | | Merge "Fix indentation"Glenn Kasten2013-07-171-74/+74
|\ \ \ \
| * | | | Fix indentationGlenn Kasten2013-07-101-74/+74
| | | | | | | | | | | | | | | | | | | | Change-Id: Ia28720a7d0fad8cf110c2448b967d5648d42e017
* | | | | Merge "Add comments"Glenn Kasten2013-07-172-1/+9
|\ \ \ \ \ | |_|_|_|/ |/| | | |
| * | | | Add commentsGlenn Kasten2013-07-102-1/+9
| |/ / / | | | | | | | | | | | | Change-Id: Ifbf3a46a4183c8abc0feee1c588953ab10303cc1
* | | | Merge "always pass the BufferQueue explicitely to consumers"Mathias Agopian2013-07-165-5/+10
|\ \ \ \
| * | | | always pass the BufferQueue explicitely to consumersMathias Agopian2013-07-125-5/+10
| | | | | | | | | | | | | | | | | | | | Change-Id: Ic2d9a9cf184a482b3c78a481ed693ee32df5ca13
* | | | | camera2: Implement ICameraDeviceUser::getCameraInfoIgor Murashkin2013-07-152-13/+6
|/ / / / | | | | | | | | | | | | | | | | Bug: 9529161 Change-Id: I927e39c124cd5fb19e38423506f4463acc381cb0
* | | | Merge "Pass additional arg to acquireBuffer calls."Andy McFadden2013-07-113-4/+4
|\ \ \ \
| * | | | Pass additional arg to acquireBuffer calls.Andy McFadden2013-07-083-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug 7900302 Change-Id: I30b9cca783e0a48f77035b745b7d5e20edf10f27
* | | | | am adaa78c9: am a2520db0: camera2/3: set preview callback oneshot flag ↵Zhijun He2013-07-111-0/+1
|\ \ \ \ \ | |_|/ / / |/| | / / | | |/ / | |/| | | | | | | | | | during still capture * commit 'adaa78c901a2f2509965b7acc1cde848dfc6bafe': camera2/3: set preview callback oneshot flag during still capture
| * | | am a2520db0: camera2/3: set preview callback oneshot flag during still captureZhijun He2013-07-091-0/+1
| |\ \ \ | | | |/ | | |/| | | | | | | | | * commit 'a2520db02bead68d4980783c41500ae96511bdf8': camera2/3: set preview callback oneshot flag during still capture
| | * | camera2/3: set preview callback oneshot flag during still captureZhijun He2013-07-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Preview callback oneshot flag need set when a still picture is being captured and preview callback oneshot is enabled, otherwise, the callback enabling status could be lost when preview is restarted after still catpure. Bug 9742091 Change-Id: If9562369013e53727edfdd16f3d00d6a9392e70d
* | | | am 06a4604e: am 4a5c009b: Camera2/3: As a fallback, unilaterally free old ↵Eino-Ville Talvala2013-07-082-14/+119
|\ \ \ \ | |/ / / | | | / | |_|/ |/| | | | | | | | recording buffers * commit '06a4604e77b5872857ef95fe712b6ce00c7aa506': Camera2/3: As a fallback, unilaterally free old recording buffers
| * | am 4a5c009b: Camera2/3: As a fallback, unilaterally free old recording buffersEino-Ville Talvala2013-07-082-14/+119
| |\ \ | | |/ | | | | | | | | | * commit '4a5c009bc2389304cf078c270bceb656479367d2': Camera2/3: As a fallback, unilaterally free old recording buffers
| | * Camera2/3: As a fallback, unilaterally free old recording buffersEino-Ville Talvala2013-07-082-14/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When starting a recording session, check for and clear out recording buffers still owned by stagefright from a previous recording session, if any. There should never be any, but in case they are due to a bug elsewhere in the system, clearing out the buffers makes recovery possible. Bug: 9591080 Change-Id: I3a2a1256860bd174381cd525948419f985c9b415
* | | am ace2378c: am f59a4b39: fix scheduling policy service death detectionEric Laurent2013-07-032-13/+31
|\ \ \ | |/ / | | | | | | | | | * commit 'ace2378c934b61fbd865b5ade9ff7d0df81dabe3': fix scheduling policy service death detection
| * | am f59a4b39: fix scheduling policy service death detectionEric Laurent2013-07-032-13/+31
| |\ \ | | |/ | | | | | | | | | * commit 'f59a4b393f4844c5bbc8d6212364bdddea33d232': fix scheduling policy service death detection
| | * fix scheduling policy service death detectionEric Laurent2013-07-022-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | Check status of transactions to scheduling policy service and re-acquire a binder interface in case of DEAD_OBJECT. Bug: 8875559. Change-Id: I1e00bd44e2d4723b3ec95d5c31d9652ba08e238a
* | | Include what is neededGlenn Kasten2013-07-023-4/+3
| | | | | | | | | | | | | | | | | | | | | Remove old includes. Header files only include other header files that they directly need themselves. Change-Id: Ic471386808d9f42ea19ccbd59cb50a5f83a89dd0
* | | Merge "Camera2Api: Creating a JPEG stream needs to use the right size"Eino-Ville Talvala2013-07-011-2/+17
|\ \ \
| * | | Camera2Api: Creating a JPEG stream needs to use the right sizeEino-Ville Talvala2013-07-011-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | JPEG streams have variable size, so use the HAL-provided max size to size the stream buffers. Change-Id: Ie6900bc9ece6e972eae93fca6aca779224c9bfc6
* | | | Merge "Public API changes for audio offload support."Eric Laurent2013-06-285-22/+43
|\ \ \ \
| * | | | Public API changes for audio offload support.Richard Fitzgerald2013-06-275-22/+43
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NOTE: this does _not_ include all private member variables added to classes as part of offload support. Only public/protected functions and stubs functions/variables needed to make the changes buildable. - isOffloadSupported() added to audio policy service A stub implementation is required to build, this always returns false - setParameters() added to IAudioTrack A stub implementation is required to build, this always returns INVALID_OPERATION - CBlk flag for stream end - Change AudioSystem::getRenderPosition() to take an audio_output_t so caller can specify which output to query - Add AudioSystem::isOffloadSupported() This is fully implemented down to the AudioFlinger function AudioPolicyServer::isOffloadSupported() which is just a stub that always returns false. - Add EVENT_STREAM_END to AudioTrack interface. STREAM_END is used to signal when the hardware has actually finished playing all the data it was sent. - Add event type enumeration to media player interface AudioSink callbacks so that the same callback can be used to handle multiple types of event. For offloaded tracks we also have to handle STREAM_END and TEAR_DOWN events - Pass audio_offload_info_t to various functions used for opening outputs, tracks and audio players. This passes additional information about the compressed stream down to the HAL when using offload. For publicly-available APIs this is an optional parameter (for some of the internal and low-level APIs around the HAL interface it is mandatory) - Add getParameters() and setParameters() API to AudioTrack Currently dummy implementations. - Change AudioPlayer contructor so that it takes a set of bitflags defining what options are required. This replaces the original bool which only specified whether to use deep buffering. - Changes to StageFright class definition related to handling tearing-down of an offloaded track when we need to switch back to software decode - Define new StageFright utility functions used for offloaded tracks Currently dummy implementations. - AudioFlinger changes to use extended audio_config_t. Fills in audio_offload_info_t member if this info is passed in when opening an output. - libvideoeditor changes required to add the new event type parameter to AudioSink callback functions - libmediaplayerservice changes required to add the new event type parameter to AudioSink callback functions Change-Id: I3ab41138aa1083d81fe83b886a9b1021ec7320f1 Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com> Signed-off-by: Eric Laurent <elaurent@google.com>
* | | | resolved conflicts for merge of 364a2677 to masterEino-Ville Talvala2013-06-282-32/+84
|\ \ \ \ | |/ / / |/| / / | |/ / Change-Id: I21f23c1c5e4408c24c359bef6270dffce47a988d
| * | am a691ff3c: Camera2/3: Don\'t allow recording and callbacks to coexist.Eino-Ville Talvala2013-06-282-29/+85
| |\ \ | | |/ | | | | | | | | | * commit 'a691ff3c03e38e148bbefed35ebb15e552a12613': Camera2/3: Don't allow recording and callbacks to coexist.
| | * Camera2/3: Don't allow recording and callbacks to coexist.Eino-Ville Talvala2013-06-272-29/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Tear down conflicting streams when necessary. - Shut down callbacks if recording starts - Do not allow callbacks to start if recording is active Per the current camera API, recording and preview callbacks cannot be active simultaneously. However, the framework did not explicitly disallow this, and in fact left the streams configured once they were created, even if switching between the two operational modes. In addition, no guards existed for trying to enable both recording and callbacks at the same time. Bug: 9423825 Change-Id: I7d6e6114c2e14fcfb5299b4c72ad557895cbf4b8
* | | Merge changes I5b2eeab2,I71568560Igor Murashkin2013-06-2510-45/+926
|\ \ \ | | | | | | | | | | | | | | | | | | | | * changes: Make android.hardware.photography.Camera work on HAL3+ devices Initial implementation of android.hardware.photography.CameraDevice (service)
| * | | Make android.hardware.photography.Camera work on HAL3+ devicesIgor Murashkin2013-06-207-19/+129
| | | | | | | | | | | | | | | | | | | | Bug: 9213377 Change-Id: I5b2eeab28985f53dfcb7b8e3029930f5adcd74f5
| * | | Initial implementation of android.hardware.photography.CameraDevice (service)Igor Murashkin2013-06-207-26/+797
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Verified preview streaming requests * Other things *should* work but unverified / unimplemented in client side Missing: * CameraService needs to return static camera info metadata Bug: 9213377 Change-Id: I71568560fcf18d0e2b408ed1c4d0066647314868
* | | | camera2/3: Warn on missing active array size parametersAlex Ray2013-06-201-0/+2
| | | | | | | | | | | | | | | | Change-Id: I752659e1f0522392b902839cd7f4d997dcd85966
* | | | am d3ac2fc0: am f3e21c30: am 60f3f102: Merge "Prevent AudioCommands being ↵Glenn Kasten2013-06-201-6/+8
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | freed before read" * commit 'd3ac2fc0c5429003f69d161e42bba7e94434ec09': Prevent AudioCommands being freed before read
| * | am f3e21c30: am 60f3f102: Merge "Prevent AudioCommands being freed before read"Glenn Kasten2013-06-201-6/+8
| |\ \ | | | | | | | | | | | | | | | | * commit 'f3e21c301b8fef49eecf9c716373fcbfbaa47670': Prevent AudioCommands being freed before read