OSDN Git Service

android-x86/system-media.git
13 years agoam 3d2470a7: Remove unused Android object type AUDIOTRACK_PUSH
Jean-Michel Trivi [Mon, 27 Sep 2010 17:02:01 +0000 (10:02 -0700)]
am 3d2470a7: Remove unused Android object type AUDIOTRACK_PUSH

Merge commit '3d2470a7f5c936182f1d6179b290814d8a620f9d'

* commit '3d2470a7f5c936182f1d6179b290814d8a620f9d':
  Remove unused Android object type AUDIOTRACK_PUSH

13 years agoRemove unused Android object type AUDIOTRACK_PUSH
Jean-Michel Trivi [Mon, 27 Sep 2010 16:49:47 +0000 (09:49 -0700)]
Remove unused Android object type AUDIOTRACK_PUSH

Change-Id: I1ab5494ae47239eed0b0a18dc817e3b0ead37871

13 years agoam 90370624: Merge "Support content looping for URI and FD data sources." into ginger...
Jean-Michel Trivi [Mon, 27 Sep 2010 16:42:46 +0000 (09:42 -0700)]
am 90370624: Merge "Support content looping for URI and FD data sources." into gingerbread

Merge commit '9037062468ac020b7c64992c6dba4dda066a5454'

* commit '9037062468ac020b7c64992c6dba4dda066a5454':
  Support content looping for URI and FD data sources.

13 years agoMerge "Support content looping for URI and FD data sources." into gingerbread
Jean-Michel Trivi [Mon, 27 Sep 2010 16:37:38 +0000 (09:37 -0700)]
Merge "Support content looping for URI and FD data sources." into gingerbread

13 years agoSupport content looping for URI and FD data sources.
Jean-Michel Trivi [Sun, 26 Sep 2010 20:15:05 +0000 (13:15 -0700)]
Support content looping for URI and FD data sources.

Implement SetLoop() on AudioPlayer with URI and FD
 data sources. Only looping over the whole duration
 of the audio content is supported here.

Change-Id: Ic033f61063e57c3a9f8c51bad15852a42b21ab46

13 years agoam 4a03820f: Restore the 2 unmerged equalizer tests
Glenn Kasten [Sun, 26 Sep 2010 22:17:50 +0000 (15:17 -0700)]
am 4a03820f: Restore the 2 unmerged equalizer tests

Merge commit '4a03820f21ebdcb5fe949b9f88aa710417686d69'

* commit '4a03820f21ebdcb5fe949b9f88aa710417686d69':
  Restore the 2 unmerged equalizer tests

13 years agoRestore the 2 unmerged equalizer tests
Glenn Kasten [Sun, 26 Sep 2010 21:51:17 +0000 (14:51 -0700)]
Restore the 2 unmerged equalizer tests

Change-Id: I667cfdddd34fff7017fedab9ee84e954c1c9f690

13 years agoam d570bd0a: Log which effect initialization function is used.
Jean-Michel Trivi [Sun, 26 Sep 2010 21:37:22 +0000 (14:37 -0700)]
am d570bd0a: Log which effect initialization function is used.

Merge commit 'd570bd0affa00595dc79c0b7fbaf735de4c51407'

* commit 'd570bd0affa00595dc79c0b7fbaf735de4c51407':
  Log which effect initialization function is used.

13 years agoLog which effect initialization function is used.
Jean-Michel Trivi [Sun, 26 Sep 2010 21:20:27 +0000 (14:20 -0700)]
Log which effect initialization function is used.

Change-Id: I7c5c7440e50d65faf3dadf360e7a3a23dc5d7781

13 years agoam 90417a10: Implement buffer cache fill level and status notification.
Jean-Michel Trivi [Sun, 26 Sep 2010 21:16:26 +0000 (14:16 -0700)]
am 90417a10: Implement buffer cache fill level and status notification.

Merge commit '90417a10fd988e37bc4e51b61c2fb8e70301345c'

* commit '90417a10fd988e37bc4e51b61c2fb8e70301345c':
  Implement buffer cache fill level and status notification.

13 years agoam 0cfa1a91: Temporary fix for broken build
Glenn Kasten [Sun, 26 Sep 2010 20:31:42 +0000 (13:31 -0700)]
am 0cfa1a91: Temporary fix for broken build

Merge commit '0cfa1a912815f84c086c285e63cb01a4f0b1f93f'

* commit '0cfa1a912815f84c086c285e63cb01a4f0b1f93f':
  Temporary fix for broken build

13 years agoImplement buffer cache fill level and status notification.
Jean-Michel Trivi [Mon, 20 Sep 2010 23:01:25 +0000 (16:01 -0700)]
Implement buffer cache fill level and status notification.

OpenSL ES requires the notification of buffering status
 changes and caching fill level updates. Fill level
 updates happen only when the level has changed by
 a certain amount.

Change-Id: I8b5e82ac1dfff35d7a27eda0dd1f395311d554f3

13 years agoTemporary fix for broken build
Glenn Kasten [Sun, 26 Sep 2010 19:04:19 +0000 (12:04 -0700)]
Temporary fix for broken build

Change-Id: I1b02cbe6ce22766ccbab4e8bf040418eba69d6fc

13 years agoam bd2fc031: Replace one configuration hack by another
Glenn Kasten [Sun, 26 Sep 2010 18:47:45 +0000 (11:47 -0700)]
am bd2fc031: Replace one configuration hack by another

Merge commit 'bd2fc031926582ee8b0df40673c66dfa4cc45a61'

* commit 'bd2fc031926582ee8b0df40673c66dfa4cc45a61':
  Replace one configuration hack by another

13 years agoReplace one configuration hack by another
Glenn Kasten [Sun, 26 Sep 2010 16:38:26 +0000 (09:38 -0700)]
Replace one configuration hack by another

Previous hack allowed an application to call GetInterface for any
  interface prior to Realize.  The new hack allows an application
  to do so only for interfaces which have a "pre-realize OK"
  relationship to their associated class.  Currently this is
  SL_IID_ANDROIDCONFIGURATION.
Reduce logging in record test.
Allow default tracing level to be set in makefile.
Line length 100.

Change-Id: Id17c55ee7284dca108e0eab379a8f987963fd8c4

13 years agoam e4d6cdb3: Cleanup
Glenn Kasten [Sun, 26 Sep 2010 18:28:36 +0000 (11:28 -0700)]
am e4d6cdb3: Cleanup

Merge commit 'e4d6cdb3bafa5d83aa12686ae9f9a1cfcda0c154'

* commit 'e4d6cdb3bafa5d83aa12686ae9f9a1cfcda0c154':
  Cleanup

13 years agoCleanup
Glenn Kasten [Sat, 25 Sep 2010 00:39:09 +0000 (17:39 -0700)]
Cleanup

Remove obsolete source file interfaces.c.
Fix typo in conditional compile.
Clarify comment.

Change-Id: I46e93c61fc0d192118a0f17b5b735ec2118298df

13 years agoam 48969e39: Fix problems found during testing
Glenn Kasten [Fri, 24 Sep 2010 22:57:57 +0000 (15:57 -0700)]
am 48969e39: Fix problems found during testing

Merge commit '48969e39faa340d20b6bcab7c7e27c711be85654'

* commit '48969e39faa340d20b6bcab7c7e27c711be85654':
  Fix problems found during testing

13 years agoam 3ac54e4d: Fix bug found by BufferQueue automated test
Glenn Kasten [Fri, 24 Sep 2010 22:55:18 +0000 (15:55 -0700)]
am 3ac54e4d: Fix bug found by BufferQueue automated test

Merge commit '3ac54e4d6e699467b608a4f0eda6023d50d3cd61'

* commit '3ac54e4d6e699467b608a4f0eda6023d50d3cd61':
  Fix bug found by BufferQueue automated test

13 years agoam 51cb31b0: As part of API review, disable incomplete profiles
Glenn Kasten [Fri, 24 Sep 2010 22:22:30 +0000 (15:22 -0700)]
am 51cb31b0: As part of API review, disable incomplete profiles

Merge commit '51cb31b09f6af53402b3fbe7e9de29badc1155a2'

* commit '51cb31b09f6af53402b3fbe7e9de29badc1155a2':
  As part of API review, disable incomplete profiles

13 years agoFix problems found during testing
Glenn Kasten [Fri, 24 Sep 2010 21:16:15 +0000 (14:16 -0700)]
Fix problems found during testing

Fix crash in android_audioPlayer_destroy if audio player is only partially
  constructed, e.g. when using a buffer queue source and the buffer count
  is invalid etc.
Add temporary workaround to buffer queue automated test to be quieter if
  hardware volume control is not working.
Make the record test less noisy on console.

Change-Id: Ief255c3f5f3c94c990f589b2373686b2ac526dd3

13 years agoFix bug found by BufferQueue automated test
Glenn Kasten [Thu, 23 Sep 2010 01:55:12 +0000 (18:55 -0700)]
Fix bug found by BufferQueue automated test

Fix bug for destroying partially constructed audio player.
Remove obsolete logging.

Change-Id: Ib186153bf50ed1311c021d53711ec90d000bdee2

13 years agoAs part of API review, disable incomplete profiles
Glenn Kasten [Tue, 21 Sep 2010 21:49:48 +0000 (14:49 -0700)]
As part of API review, disable incomplete profiles

Don't compile dead code relating to unsupported features, but keep profiles for CT.
Move whole file conditionals from the source code to Android.mk,
  by just not compiling the module for unsupported features.
There must an interface initialization hook present to expose an
  interface implicitly or explicitly at object creation time, or
  to dynamically add an interface after the object is created.  As
  a safety check, we also double-check for the initialization hook
  when the application does a GetInterface.

Miscellaneous bug fixes:
 - Fix warning "variable may be used uninitialized in this function".
 - Fix build errors on SDL.
 - Was using the wrong conditional for SDL.
 - Fix typo mInterfaceContinued -> mInterfaceStates2 in AudioRecorder.
 - Fix typo in IEngineCapabilities_init.

Other cleanup:
 - Move ugly SDL-specific stuff out of the portable code.
 - Combine duplicated code in CAudioPlayerDestroy and
   CAudioRecorder_Destroy for freeing buffer queue memory.
 - Add curlies to if and do statements.
 - Line length 100.
 - Decrease engine voices from 32 to 30 (based on max of 32 objects, 1 engine, 1 output mix).
 - Disable IRecord_init log.
 - Add symbolic link for Android configuration header file.
 - Enable trace on Android.
 - sl_int64_t is now unconditionally defined rather than only if
   ANDROID defined, because it is used by OpenSLES_Android.h which
   might be included by SDL also.
 - Removed symlink for Android headers

Change-Id: I1a6389257bca09e3819923129a1193473e16669b

13 years agoam 1a6bb4f8: Android simple buffer queue locator and interface
Glenn Kasten [Wed, 22 Sep 2010 22:05:50 +0000 (15:05 -0700)]
am 1a6bb4f8: Android simple buffer queue locator and interface

Merge commit '1a6bb4f8e738c9387dc9629db294ea5de618a53c'

* commit '1a6bb4f8e738c9387dc9629db294ea5de618a53c':
  Android simple buffer queue locator and interface

13 years agoAndroid simple buffer queue locator and interface
Glenn Kasten [Tue, 21 Sep 2010 23:56:15 +0000 (16:56 -0700)]
Android simple buffer queue locator and interface

Bug fixes:
Fix bug in error handling and recovery for checkDataSource - potential memory leak.
Clean up MPH table; there were some missing and uncommented entries.

Testing:
Add comments about using the END macro to test the MPH table.
Convert feedback test from buffer queue to Android simplified
  buffer queue for rx side only, tx is still 1.0.1 buffer queue.
Add option to sample/intbufq test to use build option to decide
  whether to use 1.0.1 buffer queue or Andorid simple buffer queue.
Convert record test for new APIs.

Miscellaneous:
Update hashgen table and add an install rule.
Add comments.
Add more logging.
Line length 100.
Fix build warning.
Double indent.
Fix SL_DATALOCATOR value for FD.

Change-Id: I35cce8934157fed88251e846b1beb15523b2b1a6

13 years agoam 3060d3cc: Add explicit dependency to utility library.
Glenn Kasten [Wed, 22 Sep 2010 14:42:53 +0000 (07:42 -0700)]
am 3060d3cc: Add explicit dependency to utility library.

Merge commit '3060d3cc0207e3ca1b862742d60ffde68e3db817'

* commit '3060d3cc0207e3ca1b862742d60ffde68e3db817':
  Add explicit dependency to utility library.

13 years agoresolved conflicts for merge of df384abb to master
Glenn Kasten [Wed, 22 Sep 2010 00:33:18 +0000 (17:33 -0700)]
resolved conflicts for merge of df384abb to master

Change-Id: Id98b47d4ccc5f3a30b7f945cdebed6b48eef4936

13 years agoAdd explicit dependency to utility library.
Glenn Kasten [Tue, 21 Sep 2010 23:20:16 +0000 (16:20 -0700)]
Add explicit dependency to utility library.

Change-Id: I3a85b071b355ac9e0c330a71e6457cb01b665af0

13 years agoQuick fix for build break, real fix to follow
Glenn Kasten [Tue, 21 Sep 2010 22:59:30 +0000 (15:59 -0700)]
Quick fix for build break, real fix to follow

Change-Id: Ib8542a689a0287fe19cd74b14eceb6b4a8b6afeb

13 years agoam 03716fc6: Update logging
Glenn Kasten [Tue, 21 Sep 2010 22:35:34 +0000 (15:35 -0700)]
am 03716fc6: Update logging

Merge commit '03716fc64636a68ba59881508e80550b948f0f40'

* commit '03716fc64636a68ba59881508e80550b948f0f40':
  Update logging

13 years agoUpdate logging
Glenn Kasten [Mon, 20 Sep 2010 18:55:34 +0000 (11:55 -0700)]
Update logging

Fix bug in ifdef __cplusplus for OpenSLES_Android.h.
Clean up, simplify, and change level of a few log messages.
Use SL_LOGx macros instead of LOGx in SfPlayer.cpp.
Add comments regarding unsupported runtime log level checks.
Line length 100.

Change-Id: I52441ed6fbe9550248fa1b6944fc8e199f1f2724

13 years agoam a0786c52: Fix bug 3022251
Jean-Michel Trivi [Tue, 21 Sep 2010 21:35:11 +0000 (14:35 -0700)]
am a0786c52: Fix bug 3022251

Merge commit 'a0786c52adce0defd7021d5718809e790493ebc0'

* commit 'a0786c52adce0defd7021d5718809e790493ebc0':
  Fix bug 3022251

13 years agoFix bug 3022251
Jean-Michel Trivi [Tue, 21 Sep 2010 18:32:41 +0000 (11:32 -0700)]
Fix bug 3022251

Remove prefetch status error codes: not officially in OpenSL ES spec.

AndroidEffectCapabilities: no const for effect name

Android file descriptor data source: don't use a value that will
 likely be used by the specification in the future.

Change-Id: I9b4e0d7eb265dc98c76021cddfe5a1f50b5eb6ef

13 years agoam 10f409d1: Merge "Fix bug 3011821 OpenSL ES Volume chain configuration" into ginger...
Jean-Michel Trivi [Mon, 20 Sep 2010 17:41:19 +0000 (10:41 -0700)]
am 10f409d1: Merge "Fix bug 3011821 OpenSL ES Volume chain configuration" into gingerbread

Merge commit '10f409d124265019fd5236de777f3d42b6142643'

* commit '10f409d124265019fd5236de777f3d42b6142643':
  Fix bug 3011821 OpenSL ES Volume chain configuration

13 years agoMerge "Fix bug 3011821 OpenSL ES Volume chain configuration" into gingerbread
Jean-Michel Trivi [Mon, 20 Sep 2010 17:35:03 +0000 (10:35 -0700)]
Merge "Fix bug 3011821 OpenSL ES Volume chain configuration" into gingerbread

13 years agoam 8bab86c5: Merge "Enable semi-standard logging (does not use LOG macros)" into...
Glenn Kasten [Mon, 20 Sep 2010 17:30:13 +0000 (10:30 -0700)]
am 8bab86c5: Merge "Enable semi-standard logging (does not use LOG macros)" into gingerbread

Merge commit '8bab86c56f8e59faaf6616cb5267a76d6e24585f'

* commit '8bab86c56f8e59faaf6616cb5267a76d6e24585f':
  Enable semi-standard logging (does not use LOG macros)

13 years agoam 14b8d168: Fix AudioRecorder initialization error.
Jean-Michel Trivi [Mon, 20 Sep 2010 17:27:39 +0000 (10:27 -0700)]
am 14b8d168: Fix AudioRecorder initialization error.

Merge commit '14b8d1684bd69070f0ce92fccc70771e40b54f94'

* commit '14b8d1684bd69070f0ce92fccc70771e40b54f94':
  Fix AudioRecorder initialization error.

13 years agoFix bug 3011821 OpenSL ES Volume chain configuration
Jean-Michel Trivi [Mon, 20 Sep 2010 00:37:01 +0000 (17:37 -0700)]
Fix bug 3011821 OpenSL ES Volume chain configuration

When setting effect send levels, combine player volume level
 with send level since AudioTrack doesn't have a distinct volume
 and direct level. This fix ensures the send level changes
 according to the player level, without being affected by direct
 level changes.
When setting player volume, update the send level.

Change-Id: I372434267a7107c617a0fdd8c39e92e31e4c339b

13 years agoMerge "Enable semi-standard logging (does not use LOG macros)" into gingerbread
Glenn Kasten [Mon, 20 Sep 2010 16:40:23 +0000 (09:40 -0700)]
Merge "Enable semi-standard logging (does not use LOG macros)" into gingerbread

13 years agoEnable semi-standard logging (does not use LOG macros)
Glenn Kasten [Mon, 20 Sep 2010 16:18:40 +0000 (09:18 -0700)]
Enable semi-standard logging (does not use LOG macros)

This is a workaround for conflict in Stagefright's definition of LOG.

Change-Id: I985e2c08d6e86a1664654a2e8a0b8aea145b32ba

13 years agoFix AudioRecorder initialization error.
Jean-Michel Trivi [Mon, 20 Sep 2010 03:38:56 +0000 (20:38 -0700)]
Fix AudioRecorder initialization error.

CAudioRecorder fields mNumChannels and mSampleRateMilliHz are
 initialized in IEngine.c CreateAudioRecorder(). It is an error
 to reset them in the Create of AudioRecorder.

Change-Id: I61568b225ad1303a3f8b0d846aac8c0b848386f1

13 years agoam 558dc028: Fix bug 3009239
Jean-Michel Trivi [Mon, 20 Sep 2010 03:24:45 +0000 (20:24 -0700)]
am 558dc028: Fix bug 3009239

Merge commit '558dc0284866620866e2628a14a0e7638bf109ea'

* commit '558dc0284866620866e2628a14a0e7638bf109ea':
  Fix bug 3009239

13 years agoFix bug 3009239
Jean-Michel Trivi [Mon, 20 Sep 2010 02:21:36 +0000 (19:21 -0700)]
Fix bug 3009239

Query AudioRecord position for SLRecordItf->GetPosition()

Change-Id: I1a520b281d44105d34c92fd555e71013d5170c76

13 years agoam 4d99e2d4: Change object state test for SLAndroidConfigurationItf.
Jean-Michel Trivi [Sun, 19 Sep 2010 22:20:33 +0000 (15:20 -0700)]
am 4d99e2d4: Change object state test for SLAndroidConfigurationItf.

Merge commit '4d99e2d4836cc470204fb0806b5431e135dad330'

* commit '4d99e2d4836cc470204fb0806b5431e135dad330':
  Change object state test for SLAndroidConfigurationItf.

13 years agoChange object state test for SLAndroidConfigurationItf.
Jean-Michel Trivi [Sun, 19 Sep 2010 22:04:23 +0000 (15:04 -0700)]
Change object state test for SLAndroidConfigurationItf.

Change-Id: Iabd024720f361bcfa50f3a5daa433afa6caa4930

13 years agoam d5c746ba: Remove the SLAndroidStreamTypeItf interface.
Jean-Michel Trivi [Sun, 19 Sep 2010 21:57:27 +0000 (14:57 -0700)]
am d5c746ba: Remove the SLAndroidStreamTypeItf interface.

Merge commit 'd5c746ba436dfc4605672f4a9f8c0628521a9f21'

* commit 'd5c746ba436dfc4605672f4a9f8c0628521a9f21':
  Remove the SLAndroidStreamTypeItf interface.

13 years agoRemove the SLAndroidStreamTypeItf interface.
Jean-Michel Trivi [Fri, 17 Sep 2010 23:03:11 +0000 (16:03 -0700)]
Remove the SLAndroidStreamTypeItf interface.

It is now replaced by SLAndroidConfigurationItf which implements
 the same functionality (and more).

Modified test to demo setting AudioPlayer stream type to use
 SLAndroidConfigurationItf

Modified SLAndroidConfigurationItf to enable passing a
 NULL pointer to value so the value size for the key ca
 be queried.

Fixed type in AudioPlayer and AudioRecorder Android side
 which reported an error if the SetConfig() function was
 called when the object was unrealized (the intent is
 to check that the object is NOT realized because we
 are configuring the resources the object is going to use).

Change-Id: I20f3dba8c63066db94d537109854b4c4139f65b3

13 years agoam 50f2c4a4: Merge "Turn on the opensl samples." into gingerbread
Yu Shan Emily Lau [Sat, 18 Sep 2010 07:15:10 +0000 (00:15 -0700)]
am 50f2c4a4: Merge "Turn on the opensl samples." into gingerbread

Merge commit '50f2c4a4ed85a7309c5b806c900642e8488f653d'

* commit '50f2c4a4ed85a7309c5b806c900642e8488f653d':
  Turn on the opensl samples.

13 years agoam 31df22b1: Improve reliability of Object::Destroy / Create
Glenn Kasten [Sat, 18 Sep 2010 07:15:08 +0000 (00:15 -0700)]
am 31df22b1: Improve reliability of Object::Destroy / Create

Merge commit '31df22b193ea7c7c331d26a27fa6756a89c8ec3c'

* commit '31df22b193ea7c7c331d26a27fa6756a89c8ec3c':
  Improve reliability of Object::Destroy / Create

13 years agoam 4e18ff44: Allow Android stream type to be set by SLAndroidConfigurationItf.
Jean-Michel Trivi [Sat, 18 Sep 2010 06:26:20 +0000 (23:26 -0700)]
am 4e18ff44: Allow Android stream type to be set by SLAndroidConfigurationItf.

Merge commit '4e18ff44c76f52102a6cf7d737a91025ca28feae'

* commit '4e18ff44c76f52102a6cf7d737a91025ca28feae':
  Allow Android stream type to be set by SLAndroidConfigurationItf.

13 years agoMerge "Turn on the opensl samples." into gingerbread
Yu Shan Emily Lau [Sat, 18 Sep 2010 01:00:33 +0000 (18:00 -0700)]
Merge "Turn on the opensl samples." into gingerbread

13 years agoImprove reliability of Object::Destroy / Create
Glenn Kasten [Thu, 16 Sep 2010 22:55:29 +0000 (15:55 -0700)]
Improve reliability of Object::Destroy / Create

Separated object construction from publishing, for better safety
with respect to the sync and debugger thread.  Unpublished objects
exist and have an ID slot reserved, but the ID is not assigned.
Destroy of an unpublished object does the right thing.

Add pre-destroy checks:

 - COutputMix all platforms: add check for players attached to
   output mix.  Object:: Destroy on an output mix that has at least
   one attached player is a no-op, but will log an error.

 - COutputMix for SDL: now asks the mixer callback to unlink output
   mix from engine, and then blocks until SDL mixer callback
   acknowledges the request; this avoids a race condition where the
   SDL thread calls the mixer during destroy.

 - C3DGroup: add check for players in group.
   Object::Destroy on a 3D group that contains at least one player
   is a no-op, but will log an error.

Object::Destroy on an audio player that is part of a 3D group now
removes the player from the 3D group during destroy.

Remove redundant field:

 - CAudioPlayer.mOutputMix duplicated a field in DataSink.DataLocator_OutputMix;
   removed mOutputMix and replaced by function CAudioPlayer_GetOutputMix
   which gets the output mix from the data sink.

Remove dead code:

 - IOutputMixExt_Destroy was obsolete.

Miscellaneous changes not related to destroy:
 - Fixed an ancient bug in the class table for Listener object -
   was using wrong offset for interfaces.
 - Add curly braces around if, else, for bodies
 - Add parentheses around complex conditionals
 - Add some logging
 - Fix indentation.
 - Line length 100

Change-Id: I0035fe356e2a28c1932b5d265f881377aa77dc58

13 years agoTurn on the opensl samples.
Yu Shan Emily Lau [Sat, 18 Sep 2010 00:19:31 +0000 (17:19 -0700)]
Turn on the opensl samples.

Change-Id: I0ca645fe506e8690d960bf113472a400cd422ea3

13 years agoAllow Android stream type to be set by SLAndroidConfigurationItf.
Jean-Michel Trivi [Fri, 17 Sep 2010 21:33:31 +0000 (14:33 -0700)]
Allow Android stream type to be set by SLAndroidConfigurationItf.

Allow Android stream type to be set through the
 SLAndroidConfigurationItf interface, instead of the
 SLAndroidStreamTypeItf interface, which is going away before
 release.
 The stream type is now stored in CAudioPlayer, and used before
 the AudioTrack of the player is instanciated.

AudioRecorder preset and AudioPlayer stream type also implement
 the following behavior: when querying a key with a NULL pointer
 as destination for the value, the value size is updated with
 the actual size used to store the value for the given key.

Change-Id: I652a5b463a220698c53fc1d2b485143b794a1d75

13 years agoam ac5c5fd9: Add example for SLRecordItf callback registration and use.
Jean-Michel Trivi [Fri, 17 Sep 2010 06:23:38 +0000 (23:23 -0700)]
am ac5c5fd9: Add example for SLRecordItf callback registration and use.

Merge commit 'ac5c5fd9e7513c046b792662606445ecdef2989c'

* commit 'ac5c5fd9e7513c046b792662606445ecdef2989c':
  Add example for SLRecordItf callback registration and use.

13 years agoAdd example for SLRecordItf callback registration and use.
Jean-Michel Trivi [Thu, 16 Sep 2010 23:29:12 +0000 (16:29 -0700)]
Add example for SLRecordItf callback registration and use.

Change-Id: Ibcd27f5a49a42ddbcd313b30e7b07b1ce4f13705

13 years agoam 3e94eeea: Merge "Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED...
Jean-Michel Trivi [Fri, 17 Sep 2010 00:01:49 +0000 (17:01 -0700)]
am 3e94eeea: Merge "Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED." into gingerbread

Merge commit '3e94eeeadfa0371449d8bbca7ad46c67742d5c10'

* commit '3e94eeeadfa0371449d8bbca7ad46c67742d5c10':
  Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED.

13 years agoam 26fec8d0: Make hashgen build again, and update the hashtable
Glenn Kasten [Fri, 17 Sep 2010 00:01:38 +0000 (17:01 -0700)]
am 26fec8d0: Make hashgen build again, and update the hashtable

Merge commit '26fec8d02bbcde97ffbdfae58863cdeaae954e7e'

* commit '26fec8d02bbcde97ffbdfae58863cdeaae954e7e':
  Make hashgen build again, and update the hashtable

13 years agoMerge "Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED." into gingerbread
Jean-Michel Trivi [Thu, 16 Sep 2010 23:28:42 +0000 (16:28 -0700)]
Merge "Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED." into gingerbread

13 years agoSignal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED.
Jean-Michel Trivi [Thu, 16 Sep 2010 17:03:00 +0000 (10:03 -0700)]
Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED.

Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED,
 not SL_RECORDEVENT_BUFFER_FULL because this latter is not
 appropriate when recording to a buffer queue, and implies that
 recording stops when it is hit.

Fix locks in IRecord.c: should be exclusive when changing
 record attributes.

Change-Id: I763483a54c92128e3fba9d9c97a091f727f4f7fc

13 years agoMake hashgen build again, and update the hashtable
Glenn Kasten [Thu, 16 Sep 2010 21:33:44 +0000 (14:33 -0700)]
Make hashgen build again, and update the hashtable

Change-Id: Id0e5a25208adb4cef7f1d04fd3cceaff2a7a4554

13 years agoam 91ebb75c: Fix bug 3003630
Jean-Michel Trivi [Thu, 16 Sep 2010 16:43:26 +0000 (09:43 -0700)]
am 91ebb75c: Fix bug 3003630

Merge commit '91ebb75cfa76cc573ced127e59cad7dd950ce08a'

* commit '91ebb75cfa76cc573ced127e59cad7dd950ce08a':
  Fix bug 3003630

13 years agoam d48ef8a6: Store sessionId in AudioPlayer.
Jean-Michel Trivi [Thu, 16 Sep 2010 02:11:00 +0000 (19:11 -0700)]
am d48ef8a6: Store sessionId in AudioPlayer.

Merge commit 'd48ef8a6143d7981a03ba1b18b41bf1be75c0838'

* commit 'd48ef8a6143d7981a03ba1b18b41bf1be75c0838':
  Store sessionId in AudioPlayer.

13 years agoFix bug 3003630
Jean-Michel Trivi [Thu, 16 Sep 2010 01:28:44 +0000 (18:28 -0700)]
Fix bug 3003630

Support record events HEADATMARKER, HEADATNEWPOS, BUFFER_FULL.

In SLPlayItf, remove useless boolean field for marker set and,
 like in SLRecordItf, make ClearMarkerPosition() reset the
 marker to 0.

Change-Id: Iac624d218b79fa7540c371d403de27bc5c291176

13 years agoam 2b10d238: Fix bug where OutputMix is not fully initialized by CreateOutputMix()
Jean-Michel Trivi [Thu, 16 Sep 2010 00:54:19 +0000 (17:54 -0700)]
am 2b10d238: Fix bug where OutputMix is not fully initialized by CreateOutputMix()

Merge commit '2b10d238deaa6df9789c8230fff2453df4a62277'

* commit '2b10d238deaa6df9789c8230fff2453df4a62277':
  Fix bug where OutputMix is not fully initialized by CreateOutputMix()

13 years agoam 88eb1c9e: Fixed C/C++ interworking problem in IAndroidEffect
Eric Laurent [Wed, 15 Sep 2010 23:49:50 +0000 (16:49 -0700)]
am 88eb1c9e: Fixed C/C++ interworking problem in IAndroidEffect

Merge commit '88eb1c9e7a1a86e09fc7c56583414bb974873648'

* commit '88eb1c9e7a1a86e09fc7c56583414bb974873648':
  Fixed C/C++ interworking problem in IAndroidEffect

13 years agoam 81d6dbae: Merge "Add prefetch status error definitions." into gingerbread
Jean-Michel Trivi [Wed, 15 Sep 2010 23:48:32 +0000 (16:48 -0700)]
am 81d6dbae: Merge "Add prefetch status error definitions." into gingerbread

Merge commit '81d6dbae0fa67e80b6aa3b6b886120c3aa4cb045'

* commit '81d6dbae0fa67e80b6aa3b6b886120c3aa4cb045':
  Add prefetch status error definitions.

13 years agoam c998babe: Rename default recording preset to generic.
Jean-Michel Trivi [Wed, 15 Sep 2010 23:48:25 +0000 (16:48 -0700)]
am c998babe: Rename default recording preset to generic.

Merge commit 'c998babeb963f874d4ae02e80d356bc41b80d343'

* commit 'c998babeb963f874d4ae02e80d356bc41b80d343':
  Rename default recording preset to generic.

13 years agoStore sessionId in AudioPlayer.
Jean-Michel Trivi [Wed, 15 Sep 2010 22:55:11 +0000 (15:55 -0700)]
Store sessionId in AudioPlayer.

Store sessionId in AudioPlayer so it can be passed directly to
 resources that need it, and the same session is kept during
 the lifetime of the AudioPlayer object.

Change-Id: I97c46c88cfb9cc7a8147909f379716522c695b9d

13 years agoFix bug where OutputMix is not fully initialized by CreateOutputMix()
Jean-Michel Trivi [Wed, 15 Sep 2010 20:49:21 +0000 (13:49 -0700)]
Fix bug where OutputMix is not fully initialized by CreateOutputMix()

In the implementation of SLEngineItf, CreateOutputMix() didn't call
 android_outputMix_create() which initializes the mEffects pointers.
Added checks on SfPlayer in case an application start calling
 interface functions when Realize() on an AudioPlayer isn't done.

Change-Id: Id3fb9f02b5c29a1d87255e7935542ebcf4b8dd46

13 years agoam de8654b4: Implement SLAndroidConfigurationItf on AudioRecorder.
Jean-Michel Trivi [Wed, 15 Sep 2010 19:19:29 +0000 (12:19 -0700)]
am de8654b4: Implement SLAndroidConfigurationItf on AudioRecorder.

Merge commit 'de8654b40c7701ea213c157448cbb96c29522e39'

* commit 'de8654b40c7701ea213c157448cbb96c29522e39':
  Implement SLAndroidConfigurationItf on AudioRecorder.

13 years agoam 83e00828: Reduce .so size and hide internal global symbols
Glenn Kasten [Wed, 15 Sep 2010 19:17:34 +0000 (12:17 -0700)]
am 83e00828: Reduce .so size and hide internal global symbols

Merge commit '83e00828044c7f9488dc5d863578939937e8a136'

* commit '83e00828044c7f9488dc5d863578939937e8a136':
  Reduce .so size and hide internal global symbols

13 years agoFixed C/C++ interworking problem in IAndroidEffect
Eric Laurent [Wed, 15 Sep 2010 16:39:19 +0000 (09:39 -0700)]
Fixed C/C++ interworking problem in IAndroidEffect

The IAndroidEffect structure contains a KeyedVector object
which constructor was not called when the structure was allocated.

The fix consists in changing the structure member to a pointer
to a KeyedVector and create the object from C++ code when the
object containing the IAndroidInterface is created (AudioPlayer
and OutputMix).

Change-Id: I328b4b61537ddb178b33427c6bad06678a29647a

13 years agoMerge "Add prefetch status error definitions." into gingerbread
Jean-Michel Trivi [Wed, 15 Sep 2010 16:04:14 +0000 (09:04 -0700)]
Merge "Add prefetch status error definitions." into gingerbread

13 years agoRename default recording preset to generic.
Jean-Michel Trivi [Wed, 15 Sep 2010 00:07:32 +0000 (17:07 -0700)]
Rename default recording preset to generic.

Change-Id: I77144ebcc593001ca60b94f0176fc2287e7400fd

13 years agoAdd prefetch status error definitions.
Jean-Michel Trivi [Tue, 14 Sep 2010 23:23:32 +0000 (16:23 -0700)]
Add prefetch status error definitions.

Add prefetch status error definitions as defined in post SL ES 1.0.1.
Add fixmes for Android extension discovery.

Change-Id: I36161013f121b0fb0748311df9e8167e45f88808

13 years agoImplement SLAndroidConfigurationItf on AudioRecorder.
Jean-Michel Trivi [Tue, 14 Sep 2010 01:24:59 +0000 (18:24 -0700)]
Implement SLAndroidConfigurationItf on AudioRecorder.

Enable the use of the configuration interface before the
 AudioRecorder object is realized to set the recording
 preset. Recording presets map to the Android
 AudioRecord input source.

Change-Id: I804095a0b39e4676862f6bc8e7fbaa0ba63b9336

13 years agoam 4f924ff7: Fix some race conditions and deadlocks.
Glenn Kasten [Tue, 14 Sep 2010 00:23:39 +0000 (17:23 -0700)]
am 4f924ff7: Fix some race conditions and deadlocks.

Merge commit '4f924ff768d761f53db6fa2dbfb794ba7a65e776'

* commit '4f924ff768d761f53db6fa2dbfb794ba7a65e776':
  Fix some race conditions and deadlocks.

13 years agoReduce .so size and hide internal global symbols
Glenn Kasten [Mon, 13 Sep 2010 23:57:10 +0000 (16:57 -0700)]
Reduce .so size and hide internal global symbols

Change-Id: I95b63aa1f4da94ad068619ff0944e4ff83fc6fd6

13 years agoFix some race conditions and deadlocks.
Glenn Kasten [Fri, 10 Sep 2010 00:20:13 +0000 (17:20 -0700)]
Fix some race conditions and deadlocks.

Use strong reference counts to fix race conditions in these object dependencies:
 - audio player on 3D Grouping
 - MIDI player (or more specifically, the data sink locator) depends on LED or Vibra device
 - audio player (or more specifically, the data sink locator) depends on output mix
Fix build errors on non-Android platforms.
Fix incorrect result code for EnvironmentalReverb::SetDensity.
Continue work on making Destroy more reliable:
 - Destroy calls a pre-destroy hook, e.g. for Android audio players.
 - Add new internal object state DESTROYING which is set when the pre-destroy hook returns.
 - Abort (called by Destroy) now blocks until all async operations complete or are aborted.
Add curly braces around simple if and for statements.
Add extra parentheses around complex if expression in if statements.
Add more error logging in checkDataLocator.
Add Doxygen comments.
Remove spurious log entry when SL_DATALOCATOR_ANDROIDFD used.
Disable the unused Resume hooks, which are currently unused.
Remove some dead code in audio player create for Android.
Line length 100.
Prepare for fixing race condition in OutputMixExt by
 moving mActiveMask and mTracks from IOutputMix to IOutputMixExt.
Update comments.
Continued work on Destroy reliability:
 Do not poke around in mixer's data structures directly during
  Object::Destroy for an audio player; instead ask the mixer nicely
  and wait for it to do the job.
 Move master copy of computed gains from Track to AudioPlayer, and then
  let the mixer copy the gains locally when it needs them.
Add resume and predestroy hooks everywhere.
Predestroy hook returns a boolean.

13 years agoam c7369d04: Add SLAndroidConfigurationItf, enabled on AudioRecorder.
Jean-Michel Trivi [Sun, 12 Sep 2010 22:22:35 +0000 (15:22 -0700)]
am c7369d04: Add SLAndroidConfigurationItf, enabled on AudioRecorder.

Merge commit 'c7369d04a4b94aca0462d0e0a38c243a80a945a9'

* commit 'c7369d04a4b94aca0462d0e0a38c243a80a945a9':
  Add SLAndroidConfigurationItf, enabled on AudioRecorder.

13 years agoAdd SLAndroidConfigurationItf, enabled on AudioRecorder.
Jean-Michel Trivi [Sun, 12 Sep 2010 21:58:04 +0000 (14:58 -0700)]
Add SLAndroidConfigurationItf, enabled on AudioRecorder.

This adds a generic configuration interface, first enabled on the
 AudioRecorder object. This is intended to be used to configure
 the audio recording source. It is meant to be usable before the
 object is in REALIZED state.

Change-Id: I8f6c1cf8f5be8a8dfb332c4e89d91f45047f48e3

13 years agoam 90a8fd23: Hide media player looper from AudioPlayer.
Jean-Michel Trivi [Sun, 12 Sep 2010 21:00:48 +0000 (14:00 -0700)]
am 90a8fd23: Hide media player looper from AudioPlayer.

Merge commit '90a8fd23a41ae9feb4f59005eb20f300a4339e33'

* commit '90a8fd23a41ae9feb4f59005eb20f300a4339e33':
  Hide media player looper from AudioPlayer.

13 years agoHide media player looper from AudioPlayer.
Jean-Michel Trivi [Sun, 12 Sep 2010 18:06:51 +0000 (11:06 -0700)]
Hide media player looper from AudioPlayer.

The ALooper that takes care of the rendering loop in SfPlayer is
 only used inside SfPlayer. This CL makes SfPlayer manage the
 lifecycle of its rendering looper.

Change-Id: Ia4d5e02ce0a44bcf79021f428b490612a9fead9c

13 years agoam 984c4a1d: Implement the SLAndroidEffectSendItf.
Jean-Michel Trivi [Fri, 10 Sep 2010 22:06:17 +0000 (15:06 -0700)]
am 984c4a1d: Implement the SLAndroidEffectSendItf.

Merge commit '984c4a1d192f83fcd2cf9e333ebe48a32a65b591'

* commit '984c4a1d192f83fcd2cf9e333ebe48a32a65b591':
  Implement the SLAndroidEffectSendItf.

13 years agoImplement the SLAndroidEffectSendItf.
Jean-Michel Trivi [Fri, 10 Sep 2010 17:47:17 +0000 (10:47 -0700)]
Implement the SLAndroidEffectSendItf.

This enables sends from an AudioPlayer to an OutputMix
that's using the generic effect interface (SLAndroidEffectItf).
Since there is a single aux bus, the effect ID is only used
to verify the effect referred to in the send is actually
attached to the OutputMix. Also there is a single send
level value and enable flag for the interface, even though
the interface definition supports discerning between multiple
effects (so it scales on platform with multiple aux buses).

Dry (direct) level is now stored in the AudioPlayer,
as it is shared between SLEffectSendItf and
SLAndroidEffectSendItf.

Change-Id: I3dd34c4c045d8ac2961a325e10b181a789bf4913

13 years agoam d6c7ad3c: Definition of SLAndroidEffectSendItf
Jean-Michel Trivi [Thu, 9 Sep 2010 21:22:58 +0000 (14:22 -0700)]
am d6c7ad3c: Definition of SLAndroidEffectSendItf

Merge commit 'd6c7ad3c4d3b3882d051239f9e5df78750d57ba2'

* commit 'd6c7ad3c4d3b3882d051239f9e5df78750d57ba2':
  Definition of SLAndroidEffectSendItf

13 years agoam 4ad709bd: Fix aux reverb issues:
Jean-Michel Trivi [Thu, 9 Sep 2010 21:21:49 +0000 (14:21 -0700)]
am 4ad709bd: Fix aux reverb issues:

Merge commit '4ad709bd796914d15a32a35da92b5f39047f5a02'

* commit '4ad709bd796914d15a32a35da92b5f39047f5a02':
  Fix aux reverb issues:

13 years agoam c098881f: Fixed the make file which it can build all the sub-dir. Remove the sampl...
Yu Shan Emily Lau [Thu, 9 Sep 2010 21:21:39 +0000 (14:21 -0700)]
am c098881f: Fixed the make file which it can build all the sub-dir. Remove the samples temporary until it\'s fixed.

Merge commit 'c098881f535d11d1a936cd70a061e60bdbd6928f'

* commit 'c098881f535d11d1a936cd70a061e60bdbd6928f':
  Fixed the make file which it can build all the sub-dir.

13 years agoDefinition of SLAndroidEffectSendItf
Jean-Michel Trivi [Thu, 9 Sep 2010 18:26:22 +0000 (11:26 -0700)]
Definition of SLAndroidEffectSendItf

Define the SLAndroidEffectSendItf interface which mirors the
SLEffectSendItf interface, but uses an SLInterfaceID parameter
to identify the effect the AudioPlayer is sending to.

Change-Id: Iec0ddf315a6974fafedecd566bd01c7231183312

13 years agoFix aux reverb issues:
Jean-Michel Trivi [Thu, 9 Sep 2010 00:56:50 +0000 (17:56 -0700)]
Fix aux reverb issues:

- when creating an effect, only pass the effect type to the
 AudioEffect framework so it selects whether to use an insert
 or aux effect based on the session.
- SL ES aux reverb effects don't have an explicit SetEnabled()
 function, so enable the effect upon creation, or based on the
preset for the preset reverb effect.

Add a test for SLEffectSend.

Change-Id: I683331cac19cf1fb9628d636569ab3d342c02820

13 years agoFixed the make file which it can build all the sub-dir.
Yu Shan Emily Lau [Wed, 8 Sep 2010 22:59:03 +0000 (15:59 -0700)]
Fixed the make file which it can build all the sub-dir.
Remove the samples temporary until it's fixed.

Change-Id: I6dd9b15a16c3dcc22ecee1fd1acecaebbd59262f

13 years agoam 6dbf6148: Fix automated tests testPlayAbsPath and testPlayfilePath
Jean-Michel Trivi [Wed, 8 Sep 2010 18:53:29 +0000 (11:53 -0700)]
am 6dbf6148: Fix automated tests testPlayAbsPath and testPlayfilePath

Merge commit '6dbf61484bdd03448395214c2a19e10b3238ac7d'

* commit '6dbf61484bdd03448395214c2a19e10b3238ac7d':
  Fix automated tests testPlayAbsPath and testPlayfilePath

13 years agoFix automated tests testPlayAbsPath and testPlayfilePath
Jean-Michel Trivi [Wed, 8 Sep 2010 18:18:30 +0000 (11:18 -0700)]
Fix automated tests testPlayAbsPath and testPlayfilePath

Do not rewind when reaching the end of the stream.

Change-Id: I98fa7cebc2b2d8fa8d10d371cfb78f24fb1ab277

13 years agoam 5c906e11: Support SLAndroidEffectItf on the OutputMix object.
Jean-Michel Trivi [Wed, 8 Sep 2010 17:38:26 +0000 (10:38 -0700)]
am 5c906e11: Support SLAndroidEffectItf on the OutputMix object.

Merge commit '5c906e11f2749e438fdc6a4433c3bfd9db235356'

* commit '5c906e11f2749e438fdc6a4433c3bfd9db235356':
  Support SLAndroidEffectItf on the OutputMix object.

13 years agoam dffefbd7: Finish implementing the SLEnvironmentalReverbItf interface.
Jean-Michel Trivi [Wed, 8 Sep 2010 17:38:24 +0000 (10:38 -0700)]
am dffefbd7: Finish implementing the SLEnvironmentalReverbItf interface.

Merge commit 'dffefbd7b3b885526df4e9df09b0e089ed422027'

* commit 'dffefbd7b3b885526df4e9df09b0e089ed422027':
  Finish implementing the SLEnvironmentalReverbItf interface.

13 years agoSupport SLAndroidEffectItf on the OutputMix object.
Jean-Michel Trivi [Wed, 8 Sep 2010 17:06:49 +0000 (10:06 -0700)]
Support SLAndroidEffectItf on the OutputMix object.

Change-Id: I098dc047ce91848781c9ba18beec5a33abd50e68

13 years agoam 32cc84f2: Cleanup SLAndroidEffectCapabilitiesItf example.
Jean-Michel Trivi [Wed, 8 Sep 2010 01:51:48 +0000 (18:51 -0700)]
am 32cc84f2: Cleanup SLAndroidEffectCapabilitiesItf example.

Merge commit '32cc84f276828480783e4866e383e58326ab207b'

* commit '32cc84f276828480783e4866e383e58326ab207b':
  Cleanup SLAndroidEffectCapabilitiesItf example.

13 years agoam 990f7545: Fix bug 2947094
Jean-Michel Trivi [Wed, 8 Sep 2010 01:51:44 +0000 (18:51 -0700)]
am 990f7545: Fix bug 2947094

Merge commit '990f7545b17358f184872b1762d77ca88232b5c5'

* commit '990f7545b17358f184872b1762d77ca88232b5c5':
  Fix bug 2947094

13 years agoFinish implementing the SLEnvironmentalReverbItf interface.
Jean-Michel Trivi [Wed, 8 Sep 2010 01:03:26 +0000 (18:03 -0700)]
Finish implementing the SLEnvironmentalReverbItf interface.

Change-Id: I02bbc6a08607c328253257cbdb6a45b675b9d3ff