History log of /system/media/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a8eea50f80327f15cb04bbdfee2d1cfcc4c3ce4a 07-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
28cd368665e7e5576102edfa8fa67ec09a6d3c69 06-Dec-2011 Eddy Talvala <etalvala@google.com> Merge "CTS-like Test for Face Effects recording support" into ics-mr1
b7b605ff5b4682bc650461c2b987aa031a1071ca 06-Dec-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr0-release

Change-Id: I5f6ea1b12b77924424ff87495db2b2a262f8f3f4
496a743a14eed55feb734d715f68fb8d5d8a0e27 17-Nov-2011 Eino-Ville Talvala <etalvala@google.com> DO NOT MERGE: Fix ordering of SurfaceTexture startup in SurfaceTextureSource.

Minimal cherry-pick from MR1.

An asynchronous SurfaceTexture only sends out a frame available
callback the first time a new buffer comes in; if a onFrameAvailable-
listener is not registered at this point, the callback never happens
even when new frames come in.

SurfaceTextureSource was calling its onSurfaceTextureSourceReady-
listener with a newly created SurfaceTexture before hooking up the
SurfaceTexture's onFrameAvailable-listener. This opened a window of
time for the onSurfaceTextureSourceReady-listener to set up the
provider end of the SurfaceTexture, and for the provider to get
buffers into the SurfaceTexture queue before the
onFrameAvailable-listener was registered.

And as a result, no new frame callback ever fired, and
SurfaceTextureSource eventually times out, or goes into permanent
sleep.

This change simply makes sure the onFrameAvailable-listener is
registered before the onSurfaceTextureSourceReady callback is fired.

Bug: 5614661
Change-Id: I8d6a72444ffc36b5c48952d0b1edd530ecb76478
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
7f9d25cc887d9a4d32b6680395628c18bf949ae7 28-Nov-2011 Pannag Sanketi <psanketi@google.com> CTS-like Test for Face Effects recording support

Vendors can run this test for checking if the device supports the
effects recording, which needs them to support a particular EGL
extension. That cannot be part of the actual cts test for now since that
part of the filterfw is not part of the public api.

Related bug: 5584686
Change-Id: Ica444e54d1e6fb79721b401b67518f182e8616a6
ca/samples/Android.mk
ca/samples/CameraEffectsRecordingSample/Android.mk
ca/samples/CameraEffectsRecordingSample/AndroidManifest.xml
ca/samples/CameraEffectsRecordingSample/java/android/media/filterfw/samples/CameraEffectsRecordingSample.java
ca/samples/CameraEffectsRecordingSample/res/drawable/android.jpg
ca/samples/CameraEffectsRecordingSample/res/layout/main.xml
ca/samples/CameraEffectsRecordingSample/res/raw/cameraeffectsrecordingsample.graph
ca/samples/CameraEffectsRecordingSample/res/values/strings.xml
ca/tests/Android.mk
ca/tests/AndroidManifest.xml
ca/tests/src/android/camera/mediaeffects/tests/functional/EffectsVideoCapture.java
6b77115da5de1e6d82a1e96e30ffdb3f1a90a54d 30-Nov-2011 Eino-Ville Talvala <etalvala@google.com> am 3e843769: DO NOT MERGE: Fix ordering of SurfaceTexture startup in SurfaceTextureSource.

* commit '3e843769e46d3d53aa2565bf80af1e800a3bbf1e':
DO NOT MERGE: Fix ordering of SurfaceTexture startup in SurfaceTextureSource.
3e843769e46d3d53aa2565bf80af1e800a3bbf1e 17-Nov-2011 Eino-Ville Talvala <etalvala@google.com> DO NOT MERGE: Fix ordering of SurfaceTexture startup in SurfaceTextureSource.

Minimal cherry-pick from MR1.

An asynchronous SurfaceTexture only sends out a frame available
callback the first time a new buffer comes in; if a onFrameAvailable-
listener is not registered at this point, the callback never happens
even when new frames come in.

SurfaceTextureSource was calling its onSurfaceTextureSourceReady-
listener with a newly created SurfaceTexture before hooking up the
SurfaceTexture's onFrameAvailable-listener. This opened a window of
time for the onSurfaceTextureSourceReady-listener to set up the
provider end of the SurfaceTexture, and for the provider to get
buffers into the SurfaceTexture queue before the
onFrameAvailable-listener was registered.

And as a result, no new frame callback ever fired, and
SurfaceTextureSource eventually times out, or goes into permanent
sleep.

This change simply makes sure the onFrameAvailable-listener is
registered before the onSurfaceTextureSourceReady callback is fired.

Bug: 5614661
Change-Id: I8d6a72444ffc36b5c48952d0b1edd530ecb76478
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
ff809b27c1b58319cbec764a728ec050ca6132f9 30-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
30f49ce0c8f9ee464e87552a6fb4fb3d6b09959c 30-Nov-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5622637 missing XA_PLAYEVENT_HEADATPOS" into ics-mr1
2917f475d6f2058ed177ee2a51fdf7069645ba3e 29-Nov-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 5553055 support video only format change in MP2TS

Allow command data when enqueueing a format change command.
Support format change where the application signals that the
change is for the video stream only. Consider any other change
or format change command with invalid data as a full format
change.

Change-Id: I6c684eab36a51dded7e3d7e72b8effe13dac6cc8
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_defs.h
ilhelm/src/itf/IAndroidBufferQueue.c
7898a5c5f283c9487da48ef92f623c149d8a7a72 29-Nov-2011 Andreas Huber <andih@google.com> Reflect (internal) API changes made to the IStreamSource interface.

Change-Id: I5cde6bc0d4bd9c62b4851d7e6375cd9216c7c062
related-to-bug: 5553055
ilhelm/src/android/android_StreamPlayer.cpp
40cf471fa7b87f020a5f7a10a019dee9bb29be71 29-Nov-2011 Glenn Kasten <gkasten@google.com> Bug 5622637 missing XA_PLAYEVENT_HEADATPOS

Fix problem with a missing XA_PLAYEVENT_HEADATPOS after seek backwards,
due to a race condition between getPosition and onSeekComplete.

Change-Id: I408c8675df8a9b3cbd2874435fbeccdca355bc46
ilhelm/src/android/android_GenericPlayer.cpp
9f7f53f94e94194677056dfc45a302aa7bf27849 22-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
b47a61dddc87d4ccc2cfc1031991172a043b906a 17-Nov-2011 Eino-Ville Talvala <etalvala@google.com> Fix ordering of SurfaceTexture startup in SurfaceTextureSource.

An asynchronous SurfaceTexture only sends out a frame available
callback the first time a new buffer comes in; if a onFrameAvailable-
listener is not registered at this point, the callback never happens
even when new frames come in.

SurfaceTextureSource was calling its
onSurfaceTextureSourceReady-listener with a newly created
SurfaceTexture before hooking up the SurfaceTexture's
onFrameAvailable-listener. This opened a window of time for the
onSurfaceTextureSourceReady-listener to set up the provider end of the
SurfaceTexture, and for the provider to get buffers into the
SurfaceTexture queue before the onFrameAvailable-listener was
registered.

And as a result, no new frame callback ever fired, and
SurfaceTextureSource eventually times out, or goes into permanent
sleep.

This change simply makes sure the onFrameAvailable-listener is
registered before the onSurfaceTextureSourceReady callback is fired.

Bug: 5614661
Change-Id: I8d6a72444ffc36b5c48952d0b1edd530ecb76478
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
7843192af4fa511543a0e2c051823055b5e51d86 15-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
e75ba3eff247622fdf36974d2216dcaff269ea5c 14-Nov-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5201321 recover from mediaserver crash" into ics-mr1
3ea57f5bc01ba708cb11b67e09e37accee587451 13-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
760eb949cf0abe299e6c6710cda5c52364945ae0 09-Nov-2011 Pannag Sanketi <psanketi@google.com> Fixing mirrored background video in camera effects

The MediaSource is set to rotate so that it adjusts to the
rotation of the device, and displays upright. The backdropper does not
have to do any rotation except for the mirroring in case of front
camera.
Bug: 5490654
Change-Id: I36124c7ca7cce73b24683277370227abab97d55b
ca/filterpacks/videoproc/java/BackDropperFilter.java
ca/filterpacks/videosrc/java/MediaSource.java
42d2daefb2508a4f8f05ce8fe4c6b7da9f3d896d 10-Nov-2011 Glenn Kasten <gkasten@google.com> Bug 5201321 recover from mediaserver crash

Add a media player death notifier to recover from media server crashes.
Downgrade some logs.
Destructors should be protected.

Change-Id: I7774733bcb12fc7fbfe237bdbeffca1adde46e78
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
4e8b9ab9806c6162ab0eac08be12da2136993aec 10-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
e07464884a4bcb4d1548e7408015364dc037bdc1 09-Nov-2011 Eddy Talvala <etalvala@google.com> Merge "Bug 5353078: Reduce foreground holes in Backdropper." into ics-mr1
df79efe57a72a21aec241e499b9d0d6939aed06f 04-Nov-2011 Rodrigo Carceroni <carceroni@google.com> Bug 5353078: Reduce foreground holes in Backdropper.

Change-Id: I77b84e4c345bad237af13b82989f2f8119770bd3
ca/filterpacks/videoproc/java/BackDropperFilter.java
54f56e9b12586935dd056b896a94ea85ae04755c 09-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
5696c8a7a0e2fde4b051230544a58db853d3551f 09-Nov-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Bug 5585323 Authorize audio decode for system" into ics-mr1
b921740510e15a4e403e2819f1a8f0a9a6c03da9 09-Nov-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5578928 Fix race in stop for destroy" into ics-mr1
1696f8ee5a4eca5e6182e5549495d9417c16e5f0 09-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
e8c04ee9ea63b90667aaf5be6fbb3475ecd93520 09-Nov-2011 Pannag Sanketi <psanketi@google.com> Merge "Fixing the mirroring in MediaSource Filter" into ics-mr1
53573cd771f2c731d1e7f1fad4df9beba09d237d 09-Nov-2011 Pannag Sanketi <psanketi@google.com> Fixing the mirroring in MediaSource Filter

MediaSource Filter was outputing mirrored video.
Bug:5585630

Change-Id: If87ee799c0fccff783d3db7cf04080160a5a5ac4
ca/filterpacks/videosrc/java/MediaSource.java
94d351603f83fdaa0c2bb5df7911c3e61fab01e2 08-Nov-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 5585323 Authorize audio decode for system

Authorize the use of specific audio codecs for audio decoding
by the system, which guarantees audio is decoded for playback,
when the appropriate system permission is used.

Change-Id: I0633b04b4d0aebe89804ef48752bf05d72abc56d
ilhelm/src/android/android_AudioSfDecoder.cpp
e87e28c32f35ed40a12b18ef51cc6af0f44ec270 08-Nov-2011 Andreas Huber <andih@google.com> Merge "Remove MediaPlayer::setVideoSurface legacy." into ics-mr1
93a7499626601967b4b46ac7bc00c0c90719ad36 07-Nov-2011 Glenn Kasten <gkasten@google.com> Bug 5578928 Fix race in stop for destroy

Change-Id: Ic5c84406bffa372a2fd3e92ad1aca1f6f5185026
ilhelm/src/android/android_StreamPlayer.cpp
973b77cd3b8b8397ce61580c175f7784b1344fea 02-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
762f10659c2ac6fb66afd09be5bddd7ffebbf9df 01-Nov-2011 Jean-Michel Trivi <jmtrivi@google.com> am c157a9c2: Bug 5544082 Filter out unsupported codecs in OpenSL ES

* commit 'c157a9c259474d4e1736c4f9ccccad10b5000734':
Bug 5544082 Filter out unsupported codecs in OpenSL ES
c157a9c259474d4e1736c4f9ccccad10b5000734 01-Nov-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 5544082 Filter out unsupported codecs in OpenSL ES

When decoding compressed audio data, disregard tracks
encoded with unsupported codecs.

Change-Id: If0535013990923c6859829106ccf9e92e5856f90
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
8d7bd3c0c920ba70cbf3cc762411902c94c35253 26-Oct-2011 Andreas Huber <andih@google.com> Remove MediaPlayer::setVideoSurface legacy.

Change-Id: I95aa181f39b375087b30ac65fea37589108c9f16
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
3d1454e31c4dba76420180a8486d4b8fb8151023 30-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
13ffc7f7c69e2fabf1ef70ebb2ea81489be9bd74 28-Oct-2011 Glenn Kasten <gkasten@google.com> am d0b07222: Merge "Bug 5526807 inform client of errors after prepare" into ics-mr0

* commit 'd0b0722276aea9a06a118a64abfc8b3e9498e931':
Bug 5526807 inform client of errors after prepare
d0b0722276aea9a06a118a64abfc8b3e9498e931 28-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5526807 inform client of errors after prepare" into ics-mr0
21b2f0ce677aa42c34df65995eefb30e20f2c3aa 27-Oct-2011 Glenn Kasten <gkasten@google.com> am d7762ba2: Bug 5526272 ignore player events during destroy

* commit 'd7762ba20bc7d13e1af73539d7a2a75183e2960b':
Bug 5526272 ignore player events during destroy
31cc0d9597a502a2c81ff318556adde92d50590a 27-Oct-2011 Glenn Kasten <gkasten@google.com> Bug 5526807 inform client of errors after prepare

Change-Id: Ic5c88f8e1c8e7d6226a7a71a2a89a70f0fa876f8
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_defs.h
d7762ba20bc7d13e1af73539d7a2a75183e2960b 27-Oct-2011 Glenn Kasten <gkasten@google.com> Bug 5526272 ignore player events during destroy

Change-Id: I45c67660c7cbfabcf66b0ffffbaedf56c17453d7
ilhelm/src/android/MediaPlayer_to_android.cpp
a3be3c851c5b931e5202c63e92d3945135d2fc42 26-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
9a371a201366ff0c0c132a31029a6c2357400b3e 25-Oct-2011 Ed Heyl <ed@google.com> Merge remote branch 'goog/ics-mr0' into ics-mr1
ba6d04f523bf6c3c2d4ed6975109e72f328889b8 24-Oct-2011 Glenn Kasten <gkasten@google.com> Bug 5505856 remove incorrect setDataSource(NULL)

Change-Id: Id23cbc43b56c014f5931cd1e941c12a773dba2b5
ilhelm/src/android/android_GenericMediaPlayer.cpp
0c7fbe98212604bc12f1630caddda689c77a65e2 23-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
48188464995a57c381f52f270d818496c8879092 21-Oct-2011 Eino-Ville Talvala <etalvala@google.com> am f52b953c: Fix NPE in AsyncRunner when runner is stopped immediately after start.

* commit 'f52b953c0acb730289c6f5a664ec5624d6ba5d36':
Fix NPE in AsyncRunner when runner is stopped immediately after start.
f52b953c0acb730289c6f5a664ec5624d6ba5d36 21-Oct-2011 Eino-Ville Talvala <etalvala@google.com> Fix NPE in AsyncRunner when runner is stopped immediately after start.

If the AsyncTask is cancelled immediately after being started, the
background worker function may never be called, and variables it
initializes may not be set.

As used in Camera, this could lead to a crash if the right sequence
of start/stop actions is taken.

Bug: 5493458
Change-Id: Idee9c3de1cf1dc999acc57c6aefcae4797582bdb
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
61ce39dbe914c529f9b4d4edce1b25861db55636 20-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
ecbde824f51a664df3a2d7977c468f77a5ecc6d3 20-Oct-2011 Pannag Sanketi <psanketi@google.com> am 0ea5e57c: Support for max duration recording with effects

* commit '0ea5e57c6cc314a5d3a14aa0745c56c2a9101f0f':
Support for max duration recording with effects
0ea5e57c6cc314a5d3a14aa0745c56c2a9101f0f 20-Oct-2011 Pannag Sanketi <psanketi@google.com> Support for max duration recording with effects

Related to Bug: 5472397

Change-Id: I949b3e1a7ac5d9f85f9538289f29cd586a0a9667
ca/filterpacks/videosink/java/MediaEncoderFilter.java
50d6b41e9eb9d7243b101fe58cdb5e90a3ae894d 19-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
34b599654a8d3a459081a61e7896081291c91960 19-Oct-2011 Scott Main <smain@google.com> am bffd2f01: Merge "docs: add package summary for media effects" into ics-mr0

* commit 'bffd2f0106fac140de9b12ee20169de86e33f4e3':
docs: add package summary for media effects
bffd2f0106fac140de9b12ee20169de86e33f4e3 19-Oct-2011 Scott Main <smain@google.com> Merge "docs: add package summary for media effects" into ics-mr0
d1c942c3c4818b3b405867b68f53f68be33af40a 18-Oct-2011 Scott Main <smain@google.com> docs: add package summary for media effects

Change-Id: I6ce4f31bcef947f426a5a2f0c5c409bf2c004797
ca/effect/java/android/media/effect/package.html
3ea956f05aaf95b8568a806713858f0c23d2161a 19-Oct-2011 Pannag Sanketi <psanketi@google.com> am aef7e413: Merge "Add timeLapse support in MediaEncoderFilter" into ics-mr0

* commit 'aef7e41306f276071fae1954c59d93235c47867f':
Add timeLapse support in MediaEncoderFilter
aef7e41306f276071fae1954c59d93235c47867f 19-Oct-2011 Pannag Sanketi <psanketi@google.com> Merge "Add timeLapse support in MediaEncoderFilter" into ics-mr0
c1604923efb199d96ac78f68d5a211edebc404a5 17-Oct-2011 Pannag Sanketi <psanketi@google.com> Add timeLapse support in MediaEncoderFilter

For recording timelapsed videos with effects.
Bug: 5452088

Change-Id: Ia99ca0af96bcd1da8a5f6dd4d2d46dde39ca9660
ca/filterpacks/videosink/java/MediaEncoderFilter.java
0256af3f5f23e1f688a3820a1e3ae8b0dbe7d144 18-Oct-2011 Jamie Gennis <jgennis@google.com> am 543c7826: wilhelm: fix native-media SurfaceTexture test

* commit '543c7826963411caef0c8052bb4866874def7cd7':
wilhelm: fix native-media SurfaceTexture test
17b1408666721b83a987c1dc88e761a722a32016 18-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Simplify the native-media demo."
2b147de69492231c4ecf52f8b4835dc3c672f471 18-Oct-2011 Ming Jia <mjia@google.com> Simplify the native-media demo.

1. Removed the old glsurfaceview.
2. remove physics and accelerometer related codes.
2. remove touch action.
4. Rotate the card a bit to show the tilting effect.

Change-Id: Ib2a7aeeef0b643644b22c285e6a295f5c09d3951
ilhelm/tests/native-media/src/com/example/nativemedia/MyGLSurfaceView.java
502b03836428d7d7b85bb32d727e4e6f1231f945 18-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
891673f650f233f17f60e2c663fa24279b8dc9af 30-Sep-2011 Glenn Kasten <gkasten@google.com> Fix race in getting duration

mDuration is protected by mSettingsLock because it is accessed from both
the ALooper thread and from the application thread, but only one of the
two "set"s was using the lock, and the "get" was not using the lock.

Also added some comments about the lock, and moved lock closer inside { }.

Change-Id: I7c96186f31baaad1b941d934549cb50d4f82d0c8
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
543c7826963411caef0c8052bb4866874def7cd7 18-Oct-2011 Jamie Gennis <jgennis@google.com> wilhelm: fix native-media SurfaceTexture test

This change updates the Java portion of the native-media test to use the
new MediaPlayer#setSurface method rather than the MediaPlayer#setTexture
method, which is no longer present.

Change-Id: I0b89129b65fc3765b343ba5da7672e5d72afe775
ilhelm/tests/native-media/src/com/example/nativemedia/NativeMedia.java
8e99ed0e9a1f42381d18ec4b8b03369317c9ddb8 17-Oct-2011 Pannag Sanketi <psanketi@google.com> am 6b9780ef: Fixing file sizelimit error in video capture intent with effects

* commit '6b9780efb2b34058f24e462ae54e6a5b6df85e46':
Fixing file sizelimit error in video capture intent with effects
831286046b49c31f43dad4a4f29d3e1c1aef10d5 16-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
6b9780efb2b34058f24e462ae54e6a5b6df85e46 14-Oct-2011 Pannag Sanketi <psanketi@google.com> Fixing file sizelimit error in video capture intent with effects

There was an error in video capture intent with effects on
with regards to file sizelimit. This CL fixes that. Now the video gets
recorded without an error. The only remaining issue is that
the max file sizelimit is reached very quickly (~5s) since
effects get recorded at 480p.

Related to bug: 5441217

Change-Id: I045ea1e2b6bb501c0f68954fdb28d135e9a4ed75
ca/filterpacks/videosink/java/MediaEncoderFilter.java
269e1766471074fdd57cc3c75e8cbd84d83ac48a 14-Oct-2011 Glenn Kasten <gkasten@google.com> am fcdc9c4c: Merge "Improved deadlock detection logs." into ics-mr0

* commit 'fcdc9c4cc7da7044f92399b1b5c7a4ddd5fec3b4':
Improved deadlock detection logs.
38097a419d94043528cbcdd6351b0f2424041022 14-Oct-2011 Glenn Kasten <gkasten@google.com> am 70db434d: Merge "Bug 5267571 disable callbacks earlier" into ics-mr0

* commit '70db434d0dc2a58656e792ac8cdcd9a09ee5f17a':
Bug 5267571 disable callbacks earlier
fcdc9c4cc7da7044f92399b1b5c7a4ddd5fec3b4 14-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Improved deadlock detection logs." into ics-mr0
70db434d0dc2a58656e792ac8cdcd9a09ee5f17a 14-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5267571 disable callbacks earlier" into ics-mr0
382fe21c4973371794de22644a856d81e6c8804b 14-Oct-2011 Rodrigo Carceroni <carceroni@google.com> am 4aad9a24: Bug 5383077: Add callback to finalize media when recording of video with effects is done.

* commit '4aad9a241281b973b05c14eb48752d3afafec4ce':
Bug 5383077: Add callback to finalize media when recording of video with effects is done.
4aad9a241281b973b05c14eb48752d3afafec4ce 14-Oct-2011 Rodrigo Carceroni <carceroni@google.com> Bug 5383077: Add callback to finalize media when recording of video with effects is done.

Change-Id: Ib767195e0089abd03e3b34f95f40499ee3226a48
ca/filterpacks/videosink/java/MediaEncoderFilter.java
b1570c2a9046f18a75f17691ea4308d5f67a2936 14-Oct-2011 Glenn Kasten <gkasten@google.com> Bug 5267571 disable callbacks earlier

Change-Id: I0da3b85dcce93a8a250b8b225a998b80d92f436b
ilhelm/src/android/MediaPlayer_to_android.cpp
5c10cfed74c38c619d6f1d7a1e8d3430aa04a14c 14-Oct-2011 Pannag Sanketi <psanketi@google.com> am 7177efa8: Merge "Fixing crash in video capture intent with effects on" into ics-mr0

* commit '7177efa8da13a1b0d4c8939cd110897bcaee8bb9':
Fixing crash in video capture intent with effects on
7177efa8da13a1b0d4c8939cd110897bcaee8bb9 14-Oct-2011 Pannag Sanketi <psanketi@google.com> Merge "Fixing crash in video capture intent with effects on" into ics-mr0
9c1a1a6e811ad60ddbb21111b2441409cfce3cdd 14-Oct-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fix color transforms in BackDropperFilter."
e60b806043134ed920a8c70431c305552d4d6a8b 14-Oct-2011 Pannag Sanketi <psanketi@google.com> Fixing crash in video capture intent with effects on

The video capture intent sends an uri and not a filename. Adding
support in the MediaencoderFilter for uri. The filter
passes that on to the MediaRecorder.

Related to bug: 5441217

Change-Id: I95a12e94e3705c00c3bbc0d375eba7844dd300b5
ca/filterpacks/videosink/java/MediaEncoderFilter.java
aefa01ffef673923c3c75c6b0592cdbc67b35c34 13-Oct-2011 Pannag Sanketi <psanketi@google.com> am d115b191: Merge "Fixing a bug in gl_env release surface" into ics-mr0

* commit 'd115b1919a31b086f2e60a1136ee5d4de7357cea':
Fixing a bug in gl_env release surface
d115b1919a31b086f2e60a1136ee5d4de7357cea 13-Oct-2011 Pannag Sanketi <psanketi@google.com> Merge "Fixing a bug in gl_env release surface" into ics-mr0
29064f6928048043f5f97884c6afa36f3586d0dd 13-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Fix bugs in get decoder/encoder counts"
a877595a6abdb4ecbafd878dcb8afce42cc53770 13-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
af791a44e6701ffbfcdb94950637bc24ead50098 13-Oct-2011 Pannag Sanketi <psanketi@google.com> Fixing a bug in gl_env release surface

While recording in camera with the effects on, there was a bug in releasing
a surface. The possible memory corruption was due to erasing
the surface-window pair in the map before destroying the surface and its associated
window handle.
Also, fixed a bit of nomenclature in the related functions.

Related to bug: 5373197

Change-Id: Ie861e5ce87cde8909c5680897cdfddafeba5e507
ca/filterfw/native/core/gl_env.cpp
818c695da429f1b2a14fc792cc6d45e0229f363a 29-Jul-2011 Glenn Kasten <gkasten@google.com> Improved deadlock detection logs.

This should make it easier to debug the "object was locked by" logs.

Display tid and pthread_t of both the lock owner and the caller in the
"object was locked by" warning log about potential deadlocks.
This makes it easier to figure out what's going on with ps -t
which only shows the tid not the pthread_t.

Reduce false positives by using a generation counter to look for forward
progress, at the risk of increasing the chance of more false negatives.

Use lock with timeout to reduce chance of missing an "unlocked" window.

Change-Id: I15e158a20d7076624188110842a01c1bf2c5c8ae
ilhelm/src/Android.mk
ilhelm/src/itf/IObject.c
ilhelm/src/itfstruct.h
ilhelm/src/locks.c
1da70bb97b174a2a280d9719152e2005eaed4d75 12-Oct-2011 Pannag Sanketi <psanketi@google.com> am d3832235: Support for MediaRecorder stop exception in Camera

* commit 'd383223561fe30ed667a347f87c442d4f21bff64':
Support for MediaRecorder stop exception in Camera
d383223561fe30ed667a347f87c442d4f21bff64 11-Oct-2011 Pannag Sanketi <psanketi@google.com> Support for MediaRecorder stop exception in Camera

When the user of camera app presses "start" and "stop" very quickly with
the effects on, the MediaRecorder stop throws an exception since no
frames could be recorded before the user pressed stop. The
filterframework needs to take care of this issue separately as compared
to other RunTimeExceptions.

Related to bugs 5443546 and 5373197

Change-Id: I227fd1a81cbf9e48032e100111a896ffb691bf0c
ca/filterpacks/videosink/java/MediaEncoderFilter.java
ca/filterpacks/videosink/java/MediaRecorderStopException.java
710051e2a1578c103840c4eeb3c21b9bb6db9e1b 12-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Final revisions for NDK API level 14"
b241186796be5284d05093716adb8c11b7b2b18e 12-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
f27193aa454ffd61812c002f297f5da45582d130 12-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Error logging in AAC"
9116594fc4998d6ddb8a1e510434e77aa59efba3 11-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
3c66dd34dee031388a9e7129ed7a012c200ceaa8 11-Oct-2011 Eino-Ville Talvala <etalvala@google.com> Fix color transforms in BackDropperFilter.

The color transforms in BackDropperFilter were assuming alpha = 1,
which is not guaranteed. Now properly disregards input alpha.

Change-Id: I00a57e181bedb9e08da9ba0fe2e021a4d04a3de2
ca/filterpacks/videoproc/java/BackDropperFilter.java
810d56b4cf6c5893b48e7d56166bb18635052dec 11-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Multithread safety and code reduction"
e851581e7a62192f69626b9a0d2e5380a4d3979c 30-Sep-2011 Glenn Kasten <gkasten@google.com> Multithread safety and code reduction

Remove unsafe GenericPlayer::getSampleRate(). getSampleRate() was not
thread-safe as it accessed a member variable updated in the looper thread
without a lock. If getSampleRate() is ever needed again, the sample rate
is available in the mPcmFormatValues array, which does have a lock.

Replace member variables mChannelMask, mChannelCount, and mSampleRateHz
by local variables for locality and performance.

Change-Id: Ibf92ed090430153d748ded4d0b835e429df47eea
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
e0b064d0e915d7fe74a12950aab9bdf70bcab9e1 11-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Khronos bug 8080 GetMarkerPosition"
adf3525f038c77f6a122b4e88762bde9cc0a48bb 18-Sep-2011 Glenn Kasten <gkasten@google.com> Final revisions for NDK API level 14

Rename ANDROID_MIME_MP2TS to XA_ANDROID_MIME_MP2TS and
ANDROID_MIME_AACADTS to SL_ANDROID_MIME_AACADTS and make public.
ANDROID_MIME_AACADTS_ANDROID_FRAMEWORK remains private.

Change-Id: Ie2cda273b6adb2db453aad188b28e64147f9e6b0
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_defs.h
ilhelm/src/itf/IEngine.c
ilhelm/tests/examples/slesTestDecodeAac.cpp
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/sandbox/xaplay.c
1fee010d186474f0ffbd954fbdbfe7ff873e4746 11-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5293383 ~StreamSourceAppProxy wasn't reached"
1c62e4dd91438066f0c7f6b8aca92f88a4d1b4d4 10-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "EnvironmentalReverb::SetDensity copy/paste"
9eef4623bb7656a13e76a441284b59b1f1d93639 10-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "AudioPlayer kEventPrepared"
5b19f23d405cac44e5ed2a3a67ff78aba3d330d1 10-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Khronos CT PresetReverb::GetPreset"
3adea07faf6124cfbc68d2db80e05f4cced9dfa9 12-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5293383 ~StreamSourceAppProxy wasn't reached

Fix bug where StreamSourceAppProxy destructor wasn't reached,
which caused all sorts of other problems later on. To see this,
enable the logs StreamSourceAppProxy::~StreamSourceAppProxy and
StreamPlayer::~StreamPlayer. You'll see that StreamPlayer was destroyed,
but not StreamSourceAppProxy.

As StreamSourceAppProxy is child of StreamPlayer, make the reference
from StreamSourceAppProxy to StreamPlayer a weak reference in case
StreamSourceAppProxy's lifetime exceeds StreamPlayer. It is not supposed
to any more with this fix, but the wp<> provides extra safety.

StreamPlayer preDestroy no longer bypasses the preDestroy in
GenericMediaPlayer.

Do a full disconnect in GenericMediaPlayer::preDestroy.

Push decremented reference counts for strong pointer through binder
to workaround binder's "optimization".

Extra error-checking in setListener and setBuffers to verify
that mediaserver is calling them correctly.

Use mutex mLock consistently in StreamSourceAppProxy.

Add an explicit StreamSourceAppProxy::disconnect to break
a circular reference, and call it in StreamPlayer destructor.

Make methods private: receivedCmd_l and receivedBuffer_l.

Add explicit clear during preDestroy to give up references earlier.

Warning: setDataSource(NULL) is not supported by NuPlayer yet,
this depends on another change in frameworks/base, so it is
commented out for now.

Rename mPlayerPrepared to mPreparedPlayer to avoid confusion with the
enum mPlayerPrepared.

Change-Id: Ie5f554c206027d22204eb86edd15489c6281b512
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
81f22c2d75b58f5d8d59caa5be2806250004e931 10-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Fix typos in usage: requires local filename"
6520a621d06aa52bd04ce2cfbd78ffb94e03af9a 10-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5406664 workaround GetPosition for decode"
456ab720f41efee12ca572475fbe3ade530b5aa0 04-Oct-2011 Glenn Kasten <gkasten@google.com> Bug 5406664 workaround GetPosition for decode

Change-Id: I6158108a8ca192f704558caca2006bf704c80d6e
ilhelm/src/android/android_AudioSfDecoder.cpp
9c1cbbf91e6b8e324ed46eb70cb0f29d0c272dac 30-Sep-2011 Glenn Kasten <gkasten@google.com> Khronos bug 8080 GetMarkerPosition

Play::GetMarkerPosition returns SL_RESULT_PRECONDITIONS_VIOLATED
if no marker is set. Play::SetMarkerPosition returns
SL_RESULT_PARAMETER_INVALID is parameter is SL_TIME_UNKNOWN. Similar
changes for Record, and also bring in all the recent changes from Play.
Add missing curly brackets.

Change-Id: Ibcfdcab5d4342815fe8d0fb1174053e1599aaf5d
ilhelm/src/itf/IPlay.c
ilhelm/src/itf/IRecord.c
59771c11b3de934e86b410c17a11e5a7bd998810 10-Oct-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix bug 5374629 Can't create AudioPlayer playing from MP2TS ABQ"
cd8656c85980f7e239e725028d9c0f2045f3aba7 10-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Don't update prepare state more than once"
9df673c935527569f68441bf6fd729dae790a9cd 10-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Reduce log spam from callback protectors"
2d0a5d63293fc7b0ff767a66f3f8b553c8400476 03-Oct-2011 Glenn Kasten <gkasten@google.com> Error logging in AAC

Change-Id: Ie0b620871543b18e58964a42842d1bb9f193c235
ilhelm/src/android/util/AacAdtsExtractor.cpp
bdb486497dde0bbe4a3d585848b33002eb765b40 09-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
cc36ab3da42f333bb583a68dbe270dc356709b37 28-Sep-2011 Glenn Kasten <gkasten@google.com> Fix bugs in get decoder/encoder counts

Khronos CT found this problem for
AudioDecoderCapabilities::GetAudioDecoders and
AudioEncoderCapabilities::GetAudioEncoders. These APIs are not currently
supported, but are faked out to allow the CT to proceed to other tests.

Change-Id: I5e73324c51ea37e76f621c161393df700b6155c4
ilhelm/src/itf/IAudioDecoderCapabilities.c
ilhelm/src/itf/IAudioEncoderCapabilities.c
f280d9aebcc747d7bce039a6afc6bf83cd37986d 06-Oct-2011 Glenn Kasten <gkasten@google.com> EnvironmentalReverb::SetDensity copy/paste

There was a missing assignment to the density field

Change-Id: I0dc3332da04b0d3f569625781258df560a89f3b9
ilhelm/src/itf/IEnvironmentalReverb.c
ec949789d991f3213142df7431b29107efd1a51c 06-Oct-2011 Glenn Kasten <gkasten@google.com> Khronos CT PresetReverb::GetPreset

OpenSL ES 1.0.1 spec and conformance test do not permit result to
be SL_RESULT_CONTROL_LOST. They say that even if control is lost,
PresetReverb::GetPreset should return the last known preset value.

Change-Id: I11fa6434d35b8e32c660f13f6d96c1db5193bedf
ilhelm/src/itf/IPresetReverb.c
adc33dd1afa5ba1facb43986e652ac772bbef8e3 30-Sep-2011 Glenn Kasten <gkasten@google.com> AudioPlayer kEventPrepared

Combine execution paths for successful and unsucccessful paths of
android::GenericPlayer::kEventPrepared: for AudioPlayer to make it easier
to see the similarities and differences (and make some other changes soon).

Remove old asserts.

Change-Id: I59304d368a9b7611f2a16c1c687cf8d827526b58
ilhelm/src/android/AudioPlayer_to_android.cpp
a45b41fd064f9dba57a65fdd6fa1362134ca5263 03-Oct-2011 Glenn Kasten <gkasten@google.com> Fix typos in usage: requires local filename

Change-Id: I6061757f3919718fc2b4da9392e37ed2c795f8b5
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
767ede10386a0f8528b2b294b2f821e9f7ef5d7d 05-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
2102fe47f517fa51e742d816ad0fc5cff65d3e41 05-Oct-2011 Eino-Ville Talvala <etalvala@google.com> Add input region support to MediaEncoderFilter.

This allows the recording to use a different crop/flip/rotate of the
input video than the rest of the pipeline. Placed directly into the
filter for efficiency.

Bug: 5408479
Change-Id: Iac7fcba79a5c0e059f0add4d9e37815d27c1c973
ca/filterpacks/videosink/java/MediaEncoderFilter.java
5094d062ec703d4108649070f8a20aa874911cf2 04-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5385386 missing HEADATNEWPOS"
11d3e9199f87138cd5cd2c52942451b20a41f253 04-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5161265 Error recovery getting video codecs"
2e03a8f02c98ef9cbbc7d770a488a14454228d6f 04-Oct-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Updates to frame transform handling in several source filters."
60c8e3fa891c4f82dcb62e8c830c064493491c8f 04-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
5a7123b8f2a7c726ff5d5ef89952b213a4da8411 04-Oct-2011 Glenn Kasten <gkasten@google.com> Don't update prepare state more than once

If a MEDIA_ERROR event is received during preparation, it indicates
that prepare has completed unsuccessfully. However, MEDIA_ERROR can
also legitimately be sent after successful prepare. In that case, don't
update the prepare state.

Similarly, in the unlikely case that MEDIA_PREPARED is received after
prepare has already completed successfully or unsuccessfully, ignore it.
This probably indicates a buggy mediaserver, but we wouldn't want that
to take down the client also.

Change-Id: I2a92e98d13b70d1aa5ff6f440ad528f6896a2ead
ilhelm/src/android/android_GenericMediaPlayer.cpp
663647fe159e279bd7e781360cb85d9b8dda12ca 04-Oct-2011 Glenn Kasten <gkasten@google.com> Reduce log spam from callback protectors

Change-Id: I83f40370bf86878e6d8dcabfff3847cab2cbbd6c
ilhelm/src/android/CallbackProtector.cpp
855b25acc20d38dfb98eff8bf73fbc441e174a92 01-Oct-2011 Eino-Ville Talvala <etalvala@google.com> Updates to frame transform handling in several source filters.

- Affects Camera, Media, and SurfaceTextureSource
- Pre-transform source rectangle instead of doing a fragment shader
texture coordinate multiply for each pixel. Bug: 5318657
- Add output orientation port to MediaSource. Bug: 5355973

Change-Id: I446a1f0afd64f06638d17010d81c7fc838612feb
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/jni/jni_shader_program.cpp
ca/filterfw/jni/jni_shader_program.h
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
288f1f2289bdb86b47d13ac430acd4829fbaf9bf 03-Oct-2011 Ruei-sung Lin <rslin@google.com> Merge "make BlendFilter use alpha. Part of the fix to:"
c80c7521d8f883b47a9234b9de7bd1feea54bcba 03-Oct-2011 Ruei-sung Lin <rslin@google.com> make BlendFilter use alpha.
Part of the fix to:

bug: 5404277

Change-Id: Ie08f769e4b75770948b1d49a435caa8045b05df6
ca/filterpacks/imageproc/java/BlendFilter.java
d180a25fa09e100acb0ffea5a1adbd0c10aa50cd 03-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Update the URI slow-down (playback rate) test"
4f2e8a8babc794323835c5002fe437eca9b77bb0 03-Oct-2011 Marius Renn <renn@google.com> Merge "Additional fixes for bug 5357970: Handle exceptions in async runner."
55e684e7e175739605112574d14de1e77f5172d5 03-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5399251 notify on AAC decode prepare success"
f1179906d48a87377d76f4504575719006ff7101 03-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
6e4a403130d31d2ec2804ff1572140690276c496 01-Oct-2011 Glenn Kasten <gkasten@google.com> Merge "Remove dead code"
3e538958b8146611e71fcde4839ccdf35af27ab7 01-Oct-2011 Glenn Kasten <gkasten@google.com> Bug 5399251 notify on AAC decode prepare success

Change-Id: I35715be7812c6fe671f74afb7a92ebe60b4a6710
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
c458b387de35a33eb64c216711da6267dbe2b1a8 30-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 5374629 Can't create AudioPlayer playing from MP2TS ABQ

An AudioPlayer playing audio coming from MP2TS data stored in an
AndroidBufferQueue couldn't be created and realized anymore due
to:
- a regression that prevented an OutputMix to be used as the
sink of an AudioPlayer that had an ABQ as a data source
- a missing update when the Realize() method became fully
locked on the object, android_audioPlayer_realize() was
still trying to lock the already locked AudioPlayer.
Both issues are covered by a CTS test.

Also verify the SLSeekItf is not required when using an ABQ
source.

Change-Id: Ibb1b753dcce59b7cf23ba118e287349e00e7fff4
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/data.c
e640d043fca55e6f8d2e6879406ffd7894bd633b 30-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5334969 MediaPlayerNotificationClient safety"
b0865831ca1d779902e876e15e36f4402b607c5e 30-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5161265 Error recovery getting video codecs

Retry if mediaserver happens to be down when asking for OMX codecs.
Use IMediaDeathNotifier::getMediaPlayerService which tries a few times.

Change-Id: Ibeb69c82303f35fbc9e5948997f568e816721328
ilhelm/src/android/VideoCodec_to_android.cpp
29c0e5eb471b5d3f519887da6ee067da6f2fcd33 28-Sep-2011 Glenn Kasten <gkasten@google.com> Remove dead code

Change-Id: Ic68d4d7b942ef99120ad30ee3ef7ce48ff1d697a
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/BufferQueueSource.cpp
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_AudioToCbRenderer.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
22c4f2714b5a419ba350ba733a78d17e09fbd2c3 29-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5385386 missing HEADATNEWPOS

Workaround for mediaserver bug where it does not send MEDIA_SEEK_COMPLETE
to the MediaPlayerNotifier after a discontinuity is processed.

Instead, we simulate a seek complete event in this case.
A short delay is applied to compensate for shared memory latency.

A longer-term fix will be to have mediaserver send the event.

Change-Id: Id0d01b842a145fa5762d44f03144741152f7b03f
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
3892c334500c632ea7fa9b2fe332a89ccf3e4107 29-Sep-2011 Marius Renn <renn@google.com> Additional fixes for bug 5357970: Handle exceptions in async runner.

The AsyncRunner now attempts to deactivate the GL context when an error
occurs.

Also, a minor patch to error reporting that has been causing some
confusion lately.

Change-Id: I1e18b5611cf5c048ef83a4659be221e02accd69f
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/native/core/native_program.cpp
9ef7b6d32defc780f12d40741c3cd71d3458ca57 29-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
0c7b2300b24cf3f2ee89b3320c8ccd483279bd54 14-Sep-2011 Eino-Ville Talvala <etalvala@google.com> Relax format checking in BackDropperFilter.

This format check should restrict to GPUs, but to allow source filters with
initially unspecified targets to connect to the filter, relax the check to
be any target.

Bug: 5299669
Change-Id: I1a54be793c68ac81dd36b111daf8d463c7d1e486
ca/filterpacks/videoproc/java/BackDropperFilter.java
5120f09a47360dda4913139836c10cc5d57b0b8b 03-Aug-2011 Glenn Kasten <gkasten@google.com> Update the URI slow-down (playback rate) test

Use prefetch status callback to detect bad URI and signal to main thread.
Check return value of GetFillLevel and GetPrefetchStatus.
Display rate capabilities in a nicely formatted way.
Fix compile warnings.

Change-Id: I3f96ceb72a7a17ffe3dbcdcbda7053b3e736eb12
ilhelm/tests/mimeUri/slesTestSlowDownUri.cpp
33d29e35679e01dae32b8d33e14c88df6c4384c7 28-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
563ba31c5b77092d3d2672a3ee89f1eaeed1aeb5 17-Sep-2011 Glenn Kasten <gkasten@google.com> Remove dead code

AudioPlayback_Parameters fields trackcb and trackcbUser
audioTrack_callBack_uri
android_Player_androidBufferQueue_registerCallback_l
GenericPlayer field mLooperPriority
StreamPlayer::registerQueueCallback
CAudioPlayer::mpLock
AudioSfDecoder::startPrefetch_async
IAndroidBufferQueue does not support AudioRecorder object
android/BufferQueueSource.h #include

Change-Id: I9d7cef243167e10279df452e7c62e66d8f5fe3b6
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/BufferQueueSource.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/classes.h
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IEngine.c
a7ef6e27f13a727c6c7a771dbb86a4e472e3da20 27-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Use prefetch for error handling in mutesolo test"
a221690f0421b8782fe2070536ad129f32782bcf 27-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "AAC decoder test"
342a97ea313edccccda34dc5e5ec0aacfbc1ff62 13-Jun-2011 Glenn Kasten <gkasten@google.com> Use prefetch for error handling in mutesolo test

Change-Id: I526da804bd7f47b124d0aff3a47b1888fde3642f
ilhelm/tests/listening/slesTest_playMuteSolo.cpp
e2aad1807d1e2ae120cddcb490ae5f1b8ae34006 02-Sep-2011 Glenn Kasten <gkasten@google.com> AAC decoder test

Record and display statistics on AAC frame sizes.
Record and display the number of buffer queue completions.
Make it optional whether to create a .raw file with PCM data.
Enable and display play events: HEADATMARKER and HEADATNEWPOS.
Add option to pause in middle of decoding.

Change-Id: Iaaa37337260cd061a13f942f6b5c07d7611b13a7
ilhelm/tests/examples/Android.mk
ilhelm/tests/examples/slesTestDecodeAac.cpp
9e9460e472dc13616b1fee9831a80a8242708f45 27-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Check result of GetFillLevel and GetPrefetchStatus"
da12bc842ea05fb2511b180011c5dfe5caad844c 27-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Return after prefetch error in get position test"
e1cf1882e86ce5da8e648be74043269f9ffad125 27-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Decode to buffer queue test updates"
75a0ad4057d114e12c1ba99c647a073adb12f264 27-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
1443f1bfeb77260e18b72f5c37427d84b39a26ac 26-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5365486 GetVideoDecoderCapabilities"
4d09a0398246d352006db429fca6ea0d3cc17d65 21-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5369977 check required interface compatibility

Use required not exposed in checkSourceSinkVsInterfacesCompatibility.

Change-Id: Ib71826b989ddef2e87dd60bec0306ca2a4021fe3
ilhelm/src/data.c
ilhelm/src/data.h
ilhelm/src/entry.c
ilhelm/src/itf/IEngine.c
ilhelm/src/sles.c
ilhelm/src/sles_allinclusive.h
413d6c9346bc277fc64c31cf5411416db3a0548c 25-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
29938d3faad1af483dc040ad1a776ec03bc41f0d 22-Aug-2011 Glenn Kasten <gkasten@google.com> Check result of GetFillLevel and GetPrefetchStatus

Change-Id: I07e962526215cbfe6ecf39bd8d0029e2b345bef3
ilhelm/tests/mimeUri/slesTestPlayUri.cpp
0e24408bb4fadda368412d16e9e865afa46f8a87 29-Jul-2011 Glenn Kasten <gkasten@google.com> Return after prefetch error in get position test

Change-Id: I7de1ddd05e4d2115dc54215d62f8af76f6c352ff
ilhelm/tests/mimeUri/slesTestGetPositionUri.cpp
951a2638a61a0da9524166f3f8c2c8d681f969b5 03-Sep-2011 Glenn Kasten <gkasten@google.com> Decode to buffer queue test updates

Decrease frequency of decoder PCM buffer queue callback;
only display a line every 1000 PCM buffers.
Check result code returned by GetFillLevel and GetPrefetchStatus.
Share common call to GetPosition in DecProgressCallback for all HEAD* events.
Print error messages to stderr.

Change-Id: I088f7792c80693aa7742bfad36df1fada02fe1a4
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
31d28405cb4429674bf5eb3a617dbb0db3e3daf7 24-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5365486 GetVideoDecoderCapabilities

If OMX IL implementation reports a codec with 0 profile/level
combinations, it should not be an error for the application to query
the number of profile/level combinations.

Change-Id: I6838ba1168da70a5c5e7d5a2832ec3ee1ee9aef3
ilhelm/src/android/VideoCodec_to_android.cpp
ilhelm/src/itf/IVideoDecoderCapabilities.cpp
ilhelm/tests/examples/xaVideoDecoderCapabilities.cpp
1d1aa2c347e534c8be9b7f2e127c7c5ae370638d 23-Sep-2011 Marius Renn <renn@google.com> Merge "Fix for 5357970: Handle exceptions in AsyncRunner."
8703ed0d5207cddb1966328380922f6e8876695a 22-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5267593 Workaround for crash at Destroy

Call IMediaPlayer->stop() from ALooper thread for now, as NuPlayerDriver
does not currently support multi-threaded clients. This fix should be
reverted after NuPlayerDriver is multi-thread safe.

Change-Id: I94dc91bdcc9f840f50c3ed831aa6e15e09a0f96e
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
7e655f98439d8a7a11fb35b6b332acd6eb73ad6c 23-Sep-2011 Ruei-sung Lin <rslin@google.com> Merge "parameter change according to api"
288bd9250220ca969c704f1a99e98837334dc671 22-Sep-2011 Marius Renn <renn@google.com> Fix for 5357970: Handle exceptions in AsyncRunner.

The AsyncRunner now stores exceptions that occurred during runtime, and
passes them back as part of the result. Applications can choose to throw
this exception or deal otherwise.

This affects all applications using AsyncRunners.

Change-Id: I2685e4cfc56d7984425a3c3a8a3ac8cfe83bc8d2
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
e19da6d96d20b46447c74106c811bf6fa0c8981a 22-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Use async notify everywhere"
66f4a601d1f00916605335c020f36425a64d7859 22-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
d94917b4c773773430b2c4e0bc3ad48162d8a8f7 15-Sep-2011 Ruei-sung Lin <rslin@google.com> parameter change according to api

Change-Id: I189cca762b80ba45b5322121b57e8c13b82a4811
ca/filterpacks/imageproc/java/VignetteFilter.java
819ab3a683b0a94471fcb32b4cf9977d8a5086e8 12-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5090073 Callback protectors

Add callback protector for decode to PCM usage cases.
Move callback protection up earlier for URI decode use case only.

Other:
Remove redundant mCallbackProtector field.
Optimization: on exit from callback protector, only broadcast if !mSafeToEnterCb,
that is if destroy has requested callback protectors to finish up.
More callback protector logging.
Add callback protector requestCbExit() [no wait], not yet used.

Unrelated:
3rd parameter of adecoder_writeToBufferQueue is always CAudioPlayer * instead of void *.

Change-Id: I57a46acf0e5ecb213540b13ca08098177ad7ad6e
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/CallbackProtector.cpp
ilhelm/src/android/CallbackProtector.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_AudioToCbRenderer.h
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_defs.h
e7e4c146b2104cbe8611d2fc2e1fbb865aba3130 21-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Set mAndroidObjState to ANDROID_READY once"
b2b9cf1d86650d7d930b56dea2982a3c18905275 19-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
1da7526fa87c8a1ddce7fa920c03ff4bf3741212 18-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Fix typo"
7230cc02e6407bfc955f3ad8c9f106327c9ab36e 18-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Move macro definition to more appropriate place"
9f3f6ea7577846dbb9924b58104a4130e7e96c5a 18-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
51627b879ac8c1ef34028801d9d6b697f362c405 16-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5334969 MediaPlayerNotificationClient safety

Fixed race due to missing mutex around 2 updates to mPlayerPrepared.

MediaPlayerNotificationClient had a raw reference to GenericMediaPlayer;
if for some reason the binder thread out-lived the GenericMediaPlayer,
then it might reference a destroyed object. Made it a weak reference,
and issue warning if the GenericMediaPlayer has been destroyed.
This has similar effect as a callback protector.

Minor related:
- mHasVideo is read without mutex, safe since never changed but make it const
- GenericMediaPlayer's reference to MediaPlayerNotificationClient is now const also

Change-Id: I67b50e861a055c73fd490fb537a3d6d23d25c3d2
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
d097fa5798ab0d16265612036400f06928d1b414 17-Sep-2011 Glenn Kasten <gkasten@google.com> Use async notify everywhere

We use asynchronous notify in all places except PLAYEREVENT_PREPARED.
Since there doesn't seem to be a clear reason why this should be
different, make it be the same.

Change-Id: I0a83d4ac7a7e8e16e3404a25f081176701de01ae
ilhelm/src/android/android_GenericPlayer.cpp
df6bf85dae919953cbf350257a36b11d3ea3a9fe 17-Sep-2011 Glenn Kasten <gkasten@google.com> Set mAndroidObjState to ANDROID_READY once

The mAndroidObjState field should only be set to ANDROID_READY once,
after prepare completes either successfully or unsuccessfully.
Remove a couple of redundant assignments.

Change-Id: I4b73bc94aea4f8d4afc1111d7fcdccce4bf8a92d
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
11ee8f21b7b76010885b69a0262d545d5e1f3a68 16-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5263052 play events for decoder use case"
becfe88080f47bce3206836abf738ffddeb5cc47 15-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5263052 play events for decoder use case

This version should be more resilient to decode time vs. real time.

Miscellaneous:
- comment about GetPosition accuracy
- remove unused AudioSfDecoder::onRender implementation

Change-Id: I16a7726e0b1459ed1421fe50cb4d683d5c3bdd6b
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
31927908c08b31c755acebccdef25d53a50083f6 12-Sep-2011 Glenn Kasten <gkasten@google.com> Fix typo

Change-Id: I673830007c2533110006e88b2c344bca3adaf448
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
03201d85351a107e59cf61b321a530351790e06c 26-Aug-2011 Glenn Kasten <gkasten@google.com> Move macro definition to more appropriate place

When sles_allinclusive.h was split up into separate files, this hunk
ended up in the wrong file. sles_allinclusive.h still needs some more
re-factoring, but that's a separate issue.

Change-Id: Iafa92c6b4d22f79b080db6ddf9078acc4296dd7b
ilhelm/src/sles_allinclusive.h
ilhelm/src/trace.h
cfd493280336a20721701debe060ee9a5f62c228 15-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
205d1f646ea40979850dce724259ca4bff4c9d51 15-Sep-2011 Pannag Sanketi <psanketi@google.com> Fix in MFF performance measurement

Change-Id: I7d2949132f8103ffef514e1510d113b56919cbf3
ca/filterpacks/performance/java/Throughput.java
ca/filterpacks/text/java/StringLogger.java
ebdfce054988de002387c0bcedde7fda8a4f0eb0 15-Sep-2011 Marius Renn <renn@google.com> Clean-up and documentation of Photo Editor filters (bug 5287103).

- Documentation for Photo Editor effects added.
- Default parameter values added to underlying filters.
- Minor clean-up of Photo Editor filter code.

Change-Id: Ibaa3a106155bf52a1848b62f067f94731cdc6d86
ca/effect/java/android/media/effect/EffectFactory.java
ca/effect/java/android/media/effect/SingleFilterEffect.java
ca/effect/java/android/media/effect/effects/BitmapOverlayEffect.java
ca/effect/java/android/media/effect/effects/DoodleEffect.java
ca/filterpacks/imageproc/java/BitmapOverlayFilter.java
ca/filterpacks/imageproc/java/BlackWhiteFilter.java
ca/filterpacks/imageproc/java/ColorTemperatureFilter.java
ca/filterpacks/imageproc/java/DoodleFilter.java
ca/filterpacks/imageproc/java/DuotoneFilter.java
ca/filterpacks/imageproc/java/FillLightFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/FixedRotationFilter.java
ca/filterpacks/imageproc/java/FlipFilter.java
ca/filterpacks/imageproc/java/GrainFilter.java
ca/filterpacks/imageproc/java/RotateFilter.java
ca/filterpacks/imageproc/java/SaturateFilter.java
ca/filterpacks/imageproc/java/SharpenFilter.java
ca/filterpacks/imageproc/java/StraightenFilter.java
ca/filterpacks/imageproc/java/TintFilter.java
ca/filterpacks/imageproc/java/VignetteFilter.java
24c45a0e174ecabd93515c982e4d1c804b1c49d7 15-Sep-2011 Marius Renn <renn@google.com> Merge "Rename of DoodleEffect as part of cleanup (Bug 5287103)."
8f310822ddf1205ef990d21c012eaa9530148942 14-Sep-2011 Marius Renn <renn@google.com> Rename of DoodleEffect as part of cleanup (Bug 5287103).

The DoodleEffect semantics have been considerably simplified so that the
name no longer fits the effect outcome. Renamed to BitmapOverlayEffect
(EFFECT_BITMAPOVERLAY).

This is the necessary change to the constant in the EffectFactory.

Change-Id: I071a77b0cb2a2f3de549c2bd1bff40c5f29a4848
ca/effect/java/android/media/effect/EffectFactory.java
70d7365d52aedb864b4aa9620e62acd151d5eb64 13-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
5f542f6e29f76ccc34d3072c13638e84d7b88496 09-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5287555 create StreamSourceAppProxy once

Create StreamSourceAppProxy once in the StreamPlayer constructor,
rather than dynamically in StreamPlayer::registerQueueCallback.
As StreamPlayer::registerQueueCallback can be called multiple times
(or even not at all), this guarantees we always have only one
StreamSourceAppProxy that never changes.

Also fix bug where we weren't using a stream protector for AudioPlayer
with MPEG-2 TS AndroidBufferQueue data source (we weren't calling
setCallbackProtector on it).

This has some unexpected side benefits of simplifying the code:
- remove unused parameters and member variables
- mAppProxyLock not needed since the callback protector is created early
- remove GenericPlayer::setCallbackProtector
- inline android_StreamPlayer_realize_l for the use case
AUDIOPLAYER_FROM_TS_ANDROIDBUFFERQUEUE to be like MediaPlayer

Change-Id: I090c11cde9474285185481192dba2b5c01338a50
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
4adad8df3942f28f1cd36bb22ad7b28b5f28e351 12-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5287473 realize locks"
8c8e5c208d7ef5699410e025778ca8eb7537248d 11-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
3f031aeec70082817e78f478af796e8f5f3d4390 10-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5287473 realize locks

Realize had inconsistent and partial locking.
Now realize runs completely locked by default.

Change-Id: If453cfc0ac874f32cf5a1fcfe7795d24bd2a48d4
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/itf/IObject.c
ilhelm/src/sles_allinclusive.h
f419fe271ff98424c9f0ddef13f436d4fb1ba538 10-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 5236913 Update sample app for PLAYEVENT_HEADATEND with MP2TS

Update the sample application to receive the PLAYEVENT_HEADATEND
event after EOS has been processed.
Remove dead code in the corresponding implementation (in class
StreamPlayer).

Change-Id: Ibe484a8c0e9605c05cd47b154d6c0aff1e70d49e
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/tests/native-media/jni/native-media-jni.c
e5c2733e99086fb726db9c1cf6cb3f04ae08defb 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 5236913 Callback for MP2TS when EOS was processed

When the buffer containing the EOS item in the Android Buffer Queue
gets processed, make sure the application callback gets called.

Change-Id: I7476a908419ec99c52c3d3f3938de3f86ab926c6
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/tests/native-media/jni/native-media-jni.c
7f4c012589a6c1932dd8ab7a6072f2b655e52dd3 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix bug 5236913 EOS causes HEADATEND event in play callback"
88b406fa924f9b38d18a569b20534ff7f933e247 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Bug 5236913 Callback for AAC decode when EOS was processed"
00f9affdc5694ad9e15a9415e6f3bd23b487e704 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 5236913 EOS causes HEADATEND event in play callback

In AAC decode through an Android Buffer Queue, after receiving
an EOS command, prevent reading from the queue by returning
a size of 0, which causes the decoder to signal an end of
stream. This will cause the SL_PLAYEVENT_HEADATEND to be
fired (from the same thread that sends the decoded data)
if the event was part of the play event mask, and a callback
had been registered.

Change-Id: I435e8a66dbe9bc37f24c9e1f1c13f0dbd670b395
ilhelm/src/android/BufferQueueSource.cpp
ilhelm/src/android/BufferQueueSource.h
ilhelm/src/android/util/AacAdtsExtractor.cpp
ilhelm/tests/examples/slesTestDecodeAac.cpp
8c136f7b63eebc4452f27806f67f39563286a46b 09-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Optimize Backdropper mask generation"
936657ef22cb86b3efe51a6593ecd3bed80af445 09-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Optimize Backdropper mask generation

Change-Id: I701e27928b9c729aeaee7eb83b0b6d99773f7acf
ca/filterpacks/videoproc/java/BackDropperFilter.java
a857cc4dbbdf59904b2a4faf7e9b9b7fbd1754d4 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Bug 5280072 decode AAC ADTS fails for CRC content"
c5f48c752a3f7bc5e4279365550625586cffb455 09-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5280072 decode AAC ADTS fails for CRC content

Also copy in the length check from Stagefright.

Change-Id: I6758dbe370dd3a7178061183bbb83d289e5c00c5
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
ilhelm/src/android/util/AacAdtsExtractor.cpp
596e46b516ea435e6dfdd68e43d82592edb0b390 09-Sep-2011 Pannag Sanketi <psanketi@google.com> Merge "Fixing disconnect issue within MFF encoding"
7b4f9451a023b364432bfaa580e992d84a9a82f6 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 5236913 Callback for AAC decode when EOS was processed

When the buffer containing the EOS item in the Android Buffer Queue
gets processed, make sure the application callback gets called.

Change-Id: I0c8dfb61404ea33322a5755afa7c44213e53ce02
ilhelm/src/android/BufferQueueSource.cpp
ilhelm/tests/examples/slesTestDecodeAac.cpp
470dfeec8a0fbae2a0e8f6021660ef66135b22ce 08-Sep-2011 Pannag Sanketi <psanketi@google.com> Fixing disconnect issue within MFF encoding

1. No explicit calling of "disconnect" on the native window corresponding
to the SurfaceMediaSource. It is not done through the GL Calls. Thus,
removed the disconnect function altogether.

2. The activateSurfaceId(int) call from the Java layer now calls activate()
explicitly in the jni along side swithToSurfaceId(int) and does not
depend on the context to be current.

3. unregistering the surface correspoding to the SurfaceMediaSource
from the Java layer is enough to call disconnect.

Change-Id: Ibdd268b559a69b4de7620474017114ff6e74f237
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/jni/jni_gl_environment.cpp
ca/filterfw/jni/jni_gl_environment.h
ca/filterpacks/videosink/java/MediaEncoderFilter.java
bfa78f8b2ddc4052b3084529aa2d9f8dc1e58767 08-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
d3dcf2a2fbe32041eb77c4d5fe660f52e3cc79cb 07-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Adjust backdropper acceptance thresholds to make foreground borders tighter."
81207e5196ff2a18609ca71bbb574ad1394c352b 07-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
88546a115a4568f70fb5a1dd8768cbe14e21c0d8 07-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Adjust backdropper acceptance thresholds to make foreground borders tighter.

Change-Id: Ie47cc87a0682e78e48412d3b97cb2c20bd28e6a9
ca/filterpacks/videoproc/java/BackDropperFilter.java
1cfcfd55f22577bbc70cddb6137c286b8d3c8491 07-Sep-2011 Eino-Ville Talvala <etalvala@google.com> Bugfixes in MediaSource SurfaceTexture management.

Regressions from fix to Bug: 5117570

Change-Id: Ic21dc37d2f99e167fad613ae7565d7b7aeba07e1
ca/filterpacks/videosrc/java/MediaSource.java
850612c6f3778ddbeb8a17d231e8e3fc82db7280 07-Sep-2011 Marius Renn <renn@google.com> Merge "Fix bug 5150875: Remove handling of possibly leaking frames."
579e294e197aa1803ba219e8bd0b465d93edab07 07-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix 5249076 Don't let the shared memory buffer drain"
c1e8c412b55b43695d527607036fd47016610f21 07-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5262776 reliability of play event callbacks"
4c0257927c2812404f6f85f60f09e97da54c1e12 07-Sep-2011 Marius Renn <renn@google.com> Fix bug 5150875: Remove handling of possibly leaking frames.

This removes the logging and releasing of possibly leaking frames. As
this may be triggered by false positives, this code should be removed.

Change-Id: I33084662f64b4a7f6173324f59caab4f0fb75388
ca/filterfw/java/android/filterfw/core/Frame.java
320e3f8feca85d6658bd238a9931458fb809d4f6 02-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix 5249076 Don't let the shared memory buffer drain

Whenever pushing data to the shared memory from the
AndroidBufferQueue, post a message to do the same operation
again if there is still room in the shared memory. This
ensures the consumption of data will keep the
shared memory buffer full, not the notification of space
available in shared memory, which may happen while the
Android Buffer Queue is empty (after a clear() for
instance).

Change-Id: I397d70ebb927fa6a1d0fb97321a70db0440b96fe
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
332b3a2a95b76ea90ce23be0b48403a9dd88c1b3 03-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5262776 reliability of play event callbacks

This makes HEADMOVING and HEADATMARKER work more reliably, especially
at the beginning of track and under heavy load. Previously if an event
update was missed because update period is too small or mediaserver/client
is too busy to keep up with notifications, then subsequent events
were lost. This happened more than you might expect; the first event
was often lost and things just got worse from there.

Cleanup in AudioSfDecoder:
- Call up to superclass (GenericPlayer) onSeek and onLoop
to make future maintenance easier.
- Delete dead code in onMessageReceived.
- Logic depends on mLastDecodedPositionUs not being ANDROID_UNKNOWN_TIME
- Simplify getPositionUsec

Add more logging in GenericPlayer::updateOneShot.

Change-Id: Iacddafeb3a20b25bee6da602f6a783201d80be10
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_GenericPlayer.cpp
22aa5a56dcdfb4c2521f4064e98111d3a739782f 01-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5244675 PCM sample rate metadata units

The current metadata key macro name ANDROID_KEY_INDEX_PCMFORMAT_SAMPLESPERSEC
is confusing. This change renames it to ANDROID_KEY_INDEX_PCMFORMAT_SAMPLERATE,
and documents that it is in Hz rather than milliHz. The key string is
renamed from AndroidPcmFormatSamplesPerSec to AndroidPcmFormatSampleRate.

Details:

OpenSL ES 1.0.1 PCM struct SLDataFormat_PCM field samplesPerSec
[sic] is in milliHz. OpenSL ES 1.1 preserves that struct, but adds
struct SLDataFormat_PCM with field sampleRate also in milliHz. If the
ANDROID_KEY_INDEX_PCMFORMAT_* metadata keys were intended to exactly
model the OpenSL ES PCM data format struct, the metadata sample rate
would also be in milliHz units. However, the rest of Android operates
in Hz so we use Hz here also.

Backwards compatibility for the name should not be an issue,
as the initial beta developer has not yet started using this metadata.

Related change: delete a duplicate header file.

Change-Id: Ib8f620dfe7a328f621ddbb19f55e5691eb22d7b5
ilhelm/include/SLES/OpenSLES_AndroidMetadata.h
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
ilhelm/src/android/OpenSLES_AndroidMetadata.h
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/tests/examples/slesTestDecodeAac.cpp
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
ca536885e0461fade436ebd26d009e104d907d24 06-Sep-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Replace pBuffer with a SurfaceTexture as default dummy surface."
aae596d15186de172632499692d44bc5436108f7 06-Sep-2011 Eino-Ville Talvala <etalvala@google.com> Several SurfaceTexture usage fixes.

- Let SurfaceTextureSource timeouts result in filter closure, not abort.
This simplifies shutting down a filter graph in a multithreaded
scenario considerably.
- Add release() calls to SurfaceTextures when used in the client sense.

Bug: 5117570
Bug: 4510826

Change-Id: I2640a4cc93acce778c34a1101e132e139995c798
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
20e19cc04f20e2946323c8c22575ff1036209eb0 06-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Backdropper: no-brainer optimizations"
f4cbd27390c92dc282c0ffb9675dd3762b4d6889 06-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Allocate correct frame sizes within back dropper."
3ab52632502ef5551b00d77996108f2d0e3a659a 05-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
646df447efbf3ca8f867bfe3a03ad2092343695e 05-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Backdropper: no-brainer optimizations

Change-Id: Ib874e1c7e4bbbfa38367e2513008d880e0ad4dbd
ca/filterpacks/videoproc/java/BackDropperFilter.java
73dcf8db091d6574b7c1e43146e932c1defd9fd5 03-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
161ff3e9d34b44c73dccfdd93516400630e4ca8f 03-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Allocate correct frame sizes within back dropper.

Change-Id: I9e32edc4f7a1c138cf2c86e6f1dbfb8de78630b8
ca/filterpacks/videoproc/java/BackDropperFilter.java
f5953c3280898f8e7d196006f99ec97926336559 02-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5244675 default channel mask based on count"
dd15e1879e8cdc17c24204493f688cb85c7d965f 02-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "MediaPlayer GetPosition returns 0 before prefetch"
ff01e346bc5b8fb5cb1dd9a9192d980842a2e14d 01-Sep-2011 Dave Burke <daveburke@google.com> Require INTERNET permission for network-based content.
Bug #1870981

Change-Id: Ia7b9b75feb5b43fe9358bbbca6b619112984246c
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
37e40657e2948a4e6788946aad536d0747c89aef 02-Sep-2011 Eino-Ville Talvala <etalvala@google.com> Replace pBuffer with a SurfaceTexture as default dummy surface.

PBuffers may not support needed recording extensions, so the
dummy used to create a GL context needs to be replaced.

Bug: 4510826

Change-Id: I25f7ec8a8e24ff9feb3d6f5a5a998c6a56018a98
ca/filterfw/native/core/gl_env.cpp
ca/filterfw/native/core/gl_env.h
9923b038db25831fdb481e73e90374f57fd4c871 31-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5244675 default channel mask based on count

Change-Id: Ica0b1bd5a23d9bbc318003509e2463a588d9bd39
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_sles_conversions.h
ilhelm/src/data.c
a85e093f0f4ea22bd9033cde641e7cd0608ad515 02-Sep-2011 Glenn Kasten <gkasten@google.com> MediaPlayer GetPosition returns 0 before prefetch

This makes MediaPlayer work the same way as AudioPlayer,
to return current position as zero before prefetch started.

Change-Id: I538919d05074002d46c3dc1632caa4d5a85e8fad
ilhelm/src/android/MediaPlayer_to_android.cpp
6e19835ae2d3ffb4ce8d02f9bc61644b6d8dc724 02-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Bug 5249076 When starting to stream, have at least one buffer in shared mem"
739def76bb90e2fa90d64939d302686025ee7fad 02-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Rename Android buffer queue GUID for future sink"
4dcd1be87e4979a4786da8f63f0fb68f945edbae 02-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5244675 handle the switch cases of AAC decode"
99f42974b80c3290f867c53cbb3a94a22d07513f 02-Sep-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5244675 miscellaenous AAC decode test"
c7c027f9ddbe3754388a0aea55c2958ea81e664d 02-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 5249076 When starting to stream, have at least one buffer in shared mem

StreamPlayer is receiving notifications from the MediaPlayer that
a buffer in shared memory is available during playback, which
causes StreamPlayer to consume data from the AndroidBufferQueue.
If the shared memory is drained while the player is paused, there
will be no new notification of a buffer in shared memory being
available to start the cycle of consumption from the Android
buffer queue.
This change causes StreamPlayer to consume from the buffer queue
to fill one buffer in shared memory.
A subsequent change will change the logic to make sure the
consumption from the buffer queue fills as much of the shared
memory as possible.

Change-Id: I886832629dd5ef449719b77899ebdcc7ffc64330
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
5d852987685c2a52f87c82d747bbdcd387233e2e 29-Aug-2011 Glenn Kasten <gkasten@google.com> Check callback result code and warn if non-success

The result code is currently unused, but reserved for future use.
This change will help make sure that developers do the right thing now,
so that they will not be impacted when we begin to act on the result.

Change-Id: I8c712882d41d09506defa77340676079bb34de6c
ilhelm/src/android/BufferQueueSource.cpp
ilhelm/src/android/android_StreamPlayer.cpp
c3d6dd225415ac68b1868575e793eb352c7105e2 29-Aug-2011 Glenn Kasten <gkasten@google.com> Rename Android buffer queue GUID for future sink

This change will make it easier to have Android buffer queue as a sink in
the future. For backwards source code compatibility with beta developers,
retain the old name temporarily. As soon as they have switched to the
new name, we will remove the old name.

Details:
- rename XA_IID_ANDROIDBUFFERQUEUE to XA_IID_ANDROIDBUFFERQUEUESOURCE
- rename SL_IID_ANDROIDBUFFERQUEUE to SL_IID_ANDROIDBUFFERQUEUESOURCE
- rename MPH_ANDROIDBUFFERQUEUE to MPH_ANDROIDBUFFERQUEUESOURCE
- did not rename the data locators and interface struct,
as they can be shared across both source and sink
- did not rename the member field mAndroidBufferQueue in
CAudioPlayer / CMediaPlayer as that would be a huge change;
can do that later if necessary
- the SINK definition will be added later when needed

Change-Id: I36dc01050efb99d4d7802b2ca2b870f4d978ee21
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/MPH.h
ilhelm/src/MPH_to.c
ilhelm/src/OpenSLES_IID.c
ilhelm/src/autogen/IID_to_MPH.c
ilhelm/src/classes.c
ilhelm/src/interfaces.c
ilhelm/src/sl_iid.c
ilhelm/src/sles.c
ilhelm/src/xa_iid.c
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
ilhelm/tests/sandbox/xaplay.c
700b793089e70f37c0692cfffee272b1b8e020f6 01-Sep-2011 Marius Renn <renn@google.com> Merge "Class name cleanup. (1/3)"
34294d068e5560ee29e1e326b7bf49a7068e6cb0 19-Aug-2011 Glenn Kasten <gkasten@google.com> Add rewind (discontinuity) to native-media test

Change-Id: I0f32564d2a2937092436dd48fef877ed55b2d4f3
ilhelm/tests/native-media/jni/Android.mk
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/native-media/src/com/example/nativemedia/NativeMedia.java
5fb5986c9a1f86c839d6aef903e630a6032e082b 31-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5244675 miscellaenous AAC decode test

Fix bug in counting encoded frames.
Test get play position and duration at various points.
Display all PCM metadata (in particular the channel mask).
Add example of expected output.

Change-Id: I0d0a629755a37b71a1540e79ae7a6f1ed7095a24
ilhelm/tests/examples/slesTestDecodeAac.cpp
b8a0c4183e814985367c999e8ba8ed477cf77497 01-Sep-2011 Eric Laurent <elaurent@google.com> Merge "clean up in echo reference code"
597d37202b222eeeba8bfa25c12936d7f7ce442b 01-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
c9d5dff9789312449c936913a577fa799565bf1f 01-Sep-2011 Eric Laurent <elaurent@google.com> clean up in echo reference code

Change-Id: Ie06ed382eee2f1d4d1289d9a49d8a93dcf103e4e
udio_utils/echo_reference.c
bc7aa3dd7a85611390249b8314ceb9fc16c4d89e 01-Sep-2011 Wei Hua <whua@google.com> Merge "Added a FixedRotationFilter."
a0da6fc6f6890e4101fc13113bce83be77f1cbf9 01-Sep-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Make background replacement roughly independent of input size."
979b9d227671081fcc90eb74b6de1b340c7ef781 01-Sep-2011 Wei Hua <whua@google.com> Added a FixedRotationFilter.

bug: 5221073
RotationFilter is used for dealing the 4 orientations of the device.
Fixed ToPackedGrayFilter to correctly resize the image
if aspect ratio needs to be kept.

Change-Id: Idd3c26ae2ec12b64f7d040a301a87c619fe146e3
ca/filterpacks/imageproc/java/FixedRotationFilter.java
ca/filterpacks/imageproc/java/ToPackedGrayFilter.java
ac42e8e50189c9cc6bf4b4d17ab52d014f211988 01-Sep-2011 Ruei-sung Lin <rslin@google.com> Merge "rewrite lomo and documentary filters"
bf4aaebc555cfb1e49ee411e3477203749fe6a11 01-Sep-2011 Marius Renn <renn@google.com> Class name cleanup. (1/3)

Addresses bug 5214502.

Change-Id: I82321ad516b93e98047fce361a97da020b7ac09e
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/JavaFrame.java
ca/filterfw/java/android/filterfw/core/JavaProgram.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/SerializedFrame.java
ca/filterfw/java/android/filterfw/core/SimpleFrame.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/format/ImageFormat.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/numeric/java/SinWaveFilter.java
ca/filterpacks/performance/java/ThroughputFilter.java
ca/filterpacks/text/java/StringLogger.java
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/text/java/ToUpperCase.java
4dd35cea9d286fc5ffcdb87c59707208e09aeb07 30-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5244675 handle the switch cases of AAC decode

Fix handling of AUDIOPLAYER_FROM_ADTS_ABQ_TO_PCM_BUFFERQUEUE decode use case:
- Play::GetPosition: explicitly list decode case and return media
player time; previously returned zero.
- Seek::SetLoop for AudioPlayer or MediaPlayer: return
SL_RESULT_FEATURE_UNSUPPORTED on non-URI data source. This is
correctly passed up to app.

The remaining have no immediate impact, but should make future maintenance easier:
- Play::GetDuration: explicitly list decode case and return unknown time;
no impact as already covered by default.
- Seek::SetPosition: explicitly list decode case and handle as no-op; no
impact as already covered by default.
- Seek::SetPosition for AudioPlayer or MediaPlayer: return
SL_RESULT_FEATURE_UNSUPPORTED with unsupported data source e.g. buffer
queue. No impact as the result is currently ignored, but added a
FIXME to pass this up to app.
- AndroidBufferQueue::Clear: explicitly list decode case as a no-op
other than the partial clear of upper layer queue.
- AndroidBufferQueue::onRefilled: explicitly list decode case as
a no-op, but with a FIXME that this may need more work later.

Change-Id: I53c8a0b736f32cd265ee9c94a70127d4f80869b5
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/handler_bodies.c
ilhelm/src/itf/ISeek.c
ea0b039dce7081d631179860df6fc1495290cf97 01-Sep-2011 Ruei-sung Lin <rslin@google.com> rewrite lomo and documentary filters

Change-Id: Ia88123992c4033d9d68c2e47ba22db4f6c911694
ca/effect/java/android/media/effect/effects/DocumentaryEffect.java
ca/effect/java/android/media/effect/effects/LomoishEffect.java
ca/filterpacks/imageproc/java/AutoFixFilter.java
ca/filterpacks/imageproc/java/DocumentaryFilter.java
ca/filterpacks/imageproc/java/GrainFilter.java
ca/filterpacks/imageproc/java/LomoishFilter.java
ca/filterpacks/imageproc/java/RedEyeFilter.java
ac342a800b112874fb5243179ac23b2640261a51 31-Aug-2011 Rodrigo Carceroni <carceroni@google.com> Make background replacement roughly independent of input size.

Change-Id: I1257718f4ba2ae72add6501d238ec78d0465861b
ca/filterpacks/videoproc/java/BackDropperFilter.java
c08028757ef67542ea7e53d991c74ff3da112f9e 31-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Fix recording resolution mismatch when using CamcorderProfile.

Did not use profile-provided resolution everywhere, resulting in
videos with tiny images in big black boxes.

Bug: 4510826
Change-Id: I845c436de091299fbd8a49eb3b8f70707aadc6f5
ca/filterpacks/videosink/java/MediaEncoderFilter.java
80dc64dcf4ba482ff68cbda1b7078e58bb691df6 31-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Updates to the MediaEncoderFilter."
777c0287f104c7f6750f38974e2a96efabc60662 31-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
0cf1f6df91fa81b2f4be8ba44c762253f8d76c72 31-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5217144 AndroidBufferQueue::Enqueue error chks"
3221278b4b94eafd8a72a0a8d1b2eb5357643672 30-Aug-2011 Jamie Gennis <jgennis@google.com> Merge "MediaSource: switch to MediaPlayer#setSurface"
d1a12715e42d4ba90a530aa650a93c736925d6c9 30-Aug-2011 Wei Hua <whua@google.com> Merge "Add fillblack option"
2084aae302655aab80fa82efb0a60fc78e1108a2 30-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
5dd7e43af732dac09f525d17ec7987decca70454 30-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
7b91f5e4994417f63f2024723d731fdad9f7e112 28-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Updates to the MediaEncoderFilter.

- Support more of the MediaRecorder parameters
- Allow toggling recording on/off during filter graph execution.
- Pass timestamps on correctly

Bug: 4510826

Change-Id: I63c9c5e9554d8e8570f2051f08e81ef753069fa1
ca/filterpacks/videosink/java/MediaEncoderFilter.java
0cc1fd3b5eaf1b87f3a1ef6468f1cd7f8d61a07e 30-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Example of AAC ADTS decoding with OpenSL ES"
1ae8bcdf7dc3df7be3ca14b6f63d0009654fab69 29-Aug-2011 Jamie Gennis <jgennis@google.com> MediaSource: switch to MediaPlayer#setSurface

This change updates MediaSource to use the new MediaPlayer#setSurface method, which
is replacing MediaPlayer#setTexture.

Change-Id: I4e4c5d1c5e481100db9265114bb285b766ae9877
ca/filterpacks/videosrc/java/MediaSource.java
4905bd8538cf4d3dfa53c67fc56ac531f171013c 29-Aug-2011 Ruei-sung Lin <rslin@google.com> Merge "Fix Grain filter and optimize other filters"
0d482cc635760c802ee7d9140a0b91283076f00e 29-Aug-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Fix b/issue?id=4882048"
04b0bc5ab88fc23e857814bbad46b9b1f6a3abac 29-Aug-2011 Ruei-sung Lin <rslin@google.com> Fix Grain filter and optimize other filters

bug: 5127871

Change-Id: I627a840906417891270aa2d93ea966c217d98b3c
ca/filterpacks/imageproc/java/BlackWhiteFilter.java
ca/filterpacks/imageproc/java/CrossProcessFilter.java
ca/filterpacks/imageproc/java/FlipFilter.java
ca/filterpacks/imageproc/java/GrainFilter.java
ca/filterpacks/imageproc/java/PosterizeFilter.java
ca/filterpacks/imageproc/java/RedEyeFilter.java
02b9a8f9d11512ff604ada5b4d76fbb5d06cc488 24-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5217144 AndroidBufferQueue::Enqueue error chks

Add more error checks to Enqueue:
- check for a NULL data pointer with non-zero data size
- check for a NULL item array with non-zero item array size

For the Enqueue item processing:
- examine all items if there is more than one in the array
- check for invalid combinations of items
- check that total length of item array is large enough for each
item's header and any optional data
- check for an EOS with a non-empty item data
- log if an unknown item key is found
- added the EOS item handling code for AAC ADTS
(the underlying implementation is still not yet done).

Fix copy/paste typo in initializeAndroidBufferQueueMembers.

AacBqToPcmCbRenderer::validateBufferStartEndOnFrameBoundaries:
- now returns a more specific result code rather than bool
- readAt return type ssize_t not size_t
- readAt return 0 (EOS) is a LOGV not LOGE.

Fix race in Android buffer queue callback: replaced logic in
BufferQueueSource.cpp by safer code from android_StreamPlayer.cpp

Change-Id: I423ccbd6d76a736a486b49b5dfdb7898b52cdd02
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/include/AacBqToPcmCbRenderer.h
ilhelm/src/android/util/AacAdtsExtractor.cpp
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IEngine.c
bf02afef1224b349d396d34c7a97bc5dd7e97f37 28-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5226085 miscellaneous metadata issues

The metadata keys are now exposed for AAC decode.

The metadata keys are now exposed at Realize. The keys were previously
only available after prefetching was complete. This made it more awkward
for an application to use them.

Fixed race condition in access to metadata values.

Change-Id: I3daed2da61f5ed0add6948f1558963cfe66795fc
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
87cfeac712523d56a15cb268c8e02b53aa648c1c 25-Aug-2011 Jean-Michel Trivi <jmtrivi@google.com> Example of AAC ADTS decoding with OpenSL ES

Put AAC ADTS in an AndroidBufferQueue, retrieve PCM data through
a BufferQueue.

Change-Id: I9718d7a9e030a2c3568de8579f3329b76f63d891
ilhelm/tests/examples/Android.mk
ilhelm/tests/examples/slesTestDecodeAac.cpp
5ef0fb158d9de788fc134339e924e287e5dbabff 27-Aug-2011 Rodrigo Carceroni <carceroni@google.com> Fix b/issue?id=4882048

Change-Id: Ib26f4c9f1c64c70e779ac5533892a91cef23d1fe
ca/filterfw/java/android/filterfw/core/Frame.java
f283a907a88fc348b770186562c7a1046a8b7367 22-Aug-2011 Pannag Sanketi <psanketi@google.com> Recording MFF Frames using MediaEncoder

Changed the GL native and jni to incorporate media encoding
This involves being able to call disconnect on the SurfaceMediaSource
and choosing the right egl config

Related to bug id: 5216763

Change-Id: I048bbbd2b308b6163fd380edd7575e52dee23ccf
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/jni/jni_gl_environment.cpp
ca/filterfw/jni/jni_gl_environment.h
ca/filterfw/native/core/gl_env.cpp
ca/filterpacks/videosink/java/MediaEncoderFilter.java
ae7323722de145e1a7ef5e5ebef0647946e37b16 26-Aug-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Metadata keys for PCM decoding"
1cfe527ff61b629f3a1bf0d5882243ac6780297a 26-Aug-2011 Yifan Peng <yifanp@google.com> Add fillblack option

If quad box is outside of image, it will display black.

Change-Id: I4871e4bf495ec461a0923ea80cafd2566e07caeb
ca/filterpacks/imageproc/java/CropFilter.java
f1dd05c711578c801b2ff055553be83bfe02e491 25-Aug-2011 Marius Renn <renn@google.com> Merge "General code / documentation clean-up."
5a85069a72ef28b81848f6c79b352047e6393c9b 25-Aug-2011 Wei Hua <whua@google.com> Merge "Change the OneShotScheduler to schedule only the source node once."
aaf40ac9627e3dd89601ac31268ab36ec3fe359b 25-Aug-2011 Marius Renn <renn@google.com> General code / documentation clean-up.

- Addresses API council's comments.
- Adds identity effect.
- Other clean-up.

Change-Id: Ib87ea95b8df44eef39be970971f436e46f0ade2d
ca/effect/java/android/media/effect/Effect.java
ca/effect/java/android/media/effect/EffectContext.java
ca/effect/java/android/media/effect/EffectFactory.java
ca/effect/java/android/media/effect/FilterEffect.java
ca/effect/java/android/media/effect/FilterGraphEffect.java
ca/effect/java/android/media/effect/SingleFilterEffect.java
ca/effect/java/android/media/effect/SizeChangeEffect.java
ca/effect/java/android/media/effect/effects/IdentityEffect.java
996606ecb7522e40b9785e50b5dfe55e20870581 25-Aug-2011 Wei Hua <whua@google.com> Change the OneShotScheduler to schedule only the source node once.

Bug: 5214756
Change-Id: Ia14b57b618d875e71d0fd65909eb7aa69b867f95
ca/filterfw/java/android/filterfw/core/OneShotScheduler.java
c2daaf227f6adb59eba9f2e69e660963532634e0 25-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "xaplay command-line mediaplayer for MPEG-2 TS ABQ"
87c7b029262a9a19760f77a46fcae0feabef38e9 25-Aug-2011 Jean-Michel Trivi <jmtrivi@google.com> Metadata keys for PCM decoding

Declare in a public header the metadata keys an application which
decodes audio data would use to figure out the output PCM format.

Make the SL ES Android header also include the configuration and
metadata headers.
Update test apps to reflect this.

Change-Id: I298db4fdb800df2d48047691441aa7489aad4822
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/include/SLES/OpenSLES_AndroidMetadata.h
ilhelm/src/android/android_defs.h
ilhelm/src/sles_allinclusive.h
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
ilhelm/tests/examples/slesTestRecBuffQueue.cpp
ilhelm/tests/mimeUri/slesTestPlayStreamType.cpp
cb9de966a5f0b9773fee2aa7b5142d69d7cf7e37 22-Aug-2011 Glenn Kasten <gkasten@google.com> xaplay command-line mediaplayer for MPEG-2 TS ABQ

Change-Id: Id5ea3f478f45d4fa4b86772593ae831d9eade952
ilhelm/tests/sandbox/Android.mk
ilhelm/tests/sandbox/nativewindow.cpp
ilhelm/tests/sandbox/nativewindow.h
ilhelm/tests/sandbox/xaplay.c
abf6db3696e93960f7bc943e8235ba31f73e5c3f 24-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5193695 Fix crash after MediaPlayer destroyed

The StreamSource callback thread was continuing to run after the
MediaPlayer object was destroyed. Fixed by adding a callback protector
and a pre-destroy hook. GenericMediaPlayer::preDestroy now also
calls MediaPlayer::stop just in case.

Change-Id: I5bd771d4d1936f433d2a8c9959593782c96daed9
Miscellaneous:
- added an explicit destructor on CMediaPlayer::mAVPlayer for consistency
(probably not a bug since there was a clear on it earlier)
- updated comments for CallbackProtector
- made some CallbackProtector fields private since no sub-classes yet
ilhelm/src/android/CallbackProtector.cpp
ilhelm/src/android/CallbackProtector.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/classes.h
ilhelm/src/itf/IEngine.c
ilhelm/src/objects/CMediaPlayer.c
6e532c390d0488747ed71a5b52bda31702e47658 24-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5153313 keep compatibility of local files URI"
22a6651d36c32a9f1bcdadf9390d0ee2c283019c 24-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5105712 synchronous callbacks"
d62f504ebe6a3f9b15c6115f9add1c4fed87d847 11-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5153313 keep compatibility of local files URI

Also fix a bug in decode from fd to PCM buffer queue, where
we were closing the application's fd.

Change-Id: I220cd1c242f2f5e240b4dd1b9e8d79c88878bdcd
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_defs.h
ade212883d03890a97a91ffba5b33c613b6446be 02-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5105712 synchronous callbacks

After GetPosition is made synchronous, it is safer to make client
callbacks synchronous also.

Change-Id: I2688f709ed672aaa62d046d5f95db1b81504c9e3
ilhelm/src/ThreadPool.h
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
41f02152b880f78f26d89b9ee6d796a84b142213 24-Aug-2011 Eric Laurent <elaurent@google.com> Merge "Converted libaudioutils implementation to C."
0c117216e48e2d83e421bf0ad893b6008ee70ca1 24-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "NEW_API: Make rest of the effect names public in EffectFactory."
8411ffe7fc4493cba0bb8fba9a5da1e619e1eb7d 22-Aug-2011 Eino-Ville Talvala <etalvala@google.com> NEW_API: Make rest of the effect names public in EffectFactory.

Bug: 4966161
Change-Id: If194ebb5d1c45e8826a53fe9a83a94a1690cc11d
ca/effect/java/android/media/effect/EffectFactory.java
dc8128317da9417558e669570875f8fd79ad92e3 24-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fix minor logging bug in core Filter code."
1c9923402a3fc26b3bae4f350cf6288dff916365 24-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5198051 MediaPlayer prefetch status interface"
20622f9631ab6741a7610aa9b04b651bfb7f601a 24-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Assertion checks do LOGF not fprintf to stderr"
d0d514c296daba245f4c70871f1a1db39535f87c 24-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Fix minor logging bug in core Filter code.

Change-Id: Ic03692e2456d2ca2615b75c7da4672ae3fed60d9
ca/filterfw/java/android/filterfw/core/Filter.java
92b759ff46bcb54ed9d36adcbc853ab0ac52641a 24-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5198051 MediaPlayer StreamInformation various"
4fd4b713707a677f169607959758963c46efcd19 24-Aug-2011 Wei Hua <whua@google.com> Merge "Add reset function to Native Program."
b879c05aba0ae1ec5c60cdc1e79f4cc344bff59c 24-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5198051 Video sink on MediaPlayer is optional"
d4b28787796d5d8c3e0444693869e12498b29565 24-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5198051 MediaPlayer PLAYEVENT_HEAD* callbacks"
05aade0c0a8f0ca3a20e23dad6d689a2aaed17e9 24-Aug-2011 Glenn Kasten <gkasten@google.com> Assertion checks do LOGF not fprintf to stderr

Also add comments to Android.mk, and add SL_LOGF not yet used.

Change-Id: I1e051c040b667e2e70b6df0c03648c309efef7d6
ilhelm/src/Android.mk
ilhelm/src/assert.c
ilhelm/src/sllog.h
f96666c5c200a02a398b787748ccf60c14dc5b0b 22-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5198051 MediaPlayer prefetch status interface

Change-Id: I426c870f803df0a7052f17be955ba797a814b4cc
ilhelm/src/MPH_to.c
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/autogen/MPH_to_MediaPlayer.h
ilhelm/src/classes.c
ilhelm/src/classes.h
ilhelm/src/sles.c
b3184d71bc6cee9fcbb36343e379143329be00ce 18-Aug-2011 Eric Laurent <elaurent@google.com> Converted libaudioutils implementation to C.

Converted libaudioutils implementation and interfaces from C++ to C
and removed dependencies from frameworks/base classes so that it can
be used by any audio HAL implementation.

Change-Id: I3f7ce541be8495d41864661451540971b067359b
leanSpec.mk
udio_utils/Android.mk
udio_utils/EchoReference.cpp
udio_utils/ReSampler.cpp
udio_utils/echo_reference.c
udio_utils/include/audio_utils/EchoReference.h
udio_utils/include/audio_utils/ReSampler.h
udio_utils/include/audio_utils/echo_reference.h
udio_utils/include/audio_utils/resampler.h
udio_utils/resampler.c
8e3097f890f7cf0051b3e348d22ab29f9036e0da 23-Aug-2011 Wei Hua <whua@google.com> Add reset function to Native Program.

Bug: 5202663
Change-Id: I6d49e7cb765f776e193e8bf1fcde26678438e12e
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/Program.java
ca/filterfw/jni/jni_native_program.cpp
ca/filterfw/jni/jni_native_program.h
ca/filterfw/native/core/native_program.cpp
ca/filterfw/native/core/native_program.h
31e37a4be96d6a782d09321264a9465e4f57a5a6 23-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Several improvements for interacting with Camera app."
8d8dfa61cdb966e5e79e41d2c3577ead41c9dda9 22-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5198051 Video sink on MediaPlayer is optional

Change-Id: I2c78508fa1efac765ff5812c22e3a4c2cfc33b73
ilhelm/src/itf/IEngine.c
183aa1fd76683f3bd7939668c4b02563b5820242 22-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5198051 MediaPlayer PLAYEVENT_HEAD* callbacks

Change-Id: Ibb04fbf727997281bb77fd22c51cd90bd044e505
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/handler_bodies.c
ilhelm/src/handlers.h
c00dcddd88f1a82db34ddc00de40cdb453ba5a66 23-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5198051 MediaPlayer play state PAUSED at end"
a51725b1ff3abcd30c929a014e3961df2c0fb8a4 21-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5198051 MediaPlayer StreamInformation various

Fix uninitialized field frameRate.

QueryMediaContainerInformation returns XA_RESULT_PARAMETER_INVALID if
info is NULL, otherwise it copies the information via the info pointer,
and returns XA_RESULT_SUCCESS.

QueryStreamName returns XA_RESULT_FEATURE_UNSUPPORTED.

Simplify RegisterStreamChangeCallback.

Change-Id: I261ac0c053be0de7bac5fc80661b979f7f9c84b6
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/itf/IStreamInformation.c
d41126f0df0dc8f8e093c9952e549a8acd6092fd 22-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5198051 MediaPlayer support GetDuration

Change-Id: I09d9292685d82b88cddd243e6e7f5410ffaa2248
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/itf/IPlay.c
e5d277a204f901ee147f9d1cf1e5d42005e14ec1 22-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5198051 MediaPlayer play state PAUSED at end

Change-Id: I9160336a9e74b2f2f501cb94d1f24047b2979b76
ilhelm/src/android/MediaPlayer_to_android.cpp
1e30a1948335aab752cf22486a80f6f74f309386 21-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Several improvements for interacting with Camera app.

- Add support for extra library loading in FilterFactory
- Add support for listing custom libraries in graph files
- Add new SurfaceTargetFilter for output to a Surface managed by the app.

Bug: 4510826
Change-Id: Icfd350d8f83627934549c30cdfb52cd1a21d3e72
ca/filterfw/java/android/filterfw/core/FilterFactory.java
ca/filterfw/java/android/filterfw/io/TextGraphReader.java
ca/filterpacks/ui/java/SurfaceTargetFilter.java
aca0e2996eeb6af7105466bb895ab9df494b09f6 22-Aug-2011 Eric Laurent <elaurent@google.com> Merge "Created library for common audio HAL functions."
1c1bd4c2d7c1d94677d41f298fe7f63100fd817b 21-Aug-2011 Ruei-sung Lin <rslin@google.com> Merge "Moving photo editor effects to imageproc"
c8d4b922014b8665e95ce49e2e3410d5dfef485a 21-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "8-bit now works"
52812230976d4f5b521fbffb73879e6f4d78b813 20-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Tune the background replacer filter toward shipping quality."
7e22f2122e6e26945f5022738117d5772e5a82ef 19-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Tune the background replacer filter toward shipping quality.

Works reasonably in talk; issues with dark objects remain.

Bug: 5111139
Change-Id: I32c84d73b8d69c89e1f1d7ae9a5f7738f4025fe3
ca/filterpacks/videoproc/java/BackDropperFilter.java
feab9b6558fd4d08de14a54c30d1ffc46d41be92 19-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5126938 dependency for video sinks"
1af42a8edc6add739d0616fda2bb97d7f89abf02 19-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Test playbq: 8-bit and big-endian byte ordering"
981f1ddd641808739178f1b42cd55acd4f74f85a 12-Aug-2011 Glenn Kasten <gkasten@google.com> 8-bit now works

Change-Id: I70ce7e10f0b465250b9f4d7644d21f5c4b4c99fa
ilhelm/src/android/AudioPlayer_to_android.cpp
2b8985e4568bab4147a3d79b7ca7a936b60e30d4 19-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Use XA instead of SL in type cast"
6570ec1c3edb8071446791001872d8ba87659200 19-Aug-2011 Ruei-sung Lin <rslin@google.com> Moving photo editor effects to imageproc

Change-Id: Idb11915f9e70aa40a228532ed998563227b4c5ff
ca/effect/java/android/media/effect/EffectFactory.java
ca/effect/java/android/media/effect/SizeChangeEffect.java
ca/effect/java/android/media/effect/effects/AutoFixEffect.java
ca/effect/java/android/media/effect/effects/BlackWhiteEffect.java
ca/effect/java/android/media/effect/effects/ColorTemperatureEffect.java
ca/effect/java/android/media/effect/effects/CropEffect.java
ca/effect/java/android/media/effect/effects/CrossProcessEffect.java
ca/effect/java/android/media/effect/effects/DocumentaryEffect.java
ca/effect/java/android/media/effect/effects/DoodleEffect.java
ca/effect/java/android/media/effect/effects/DuotoneEffect.java
ca/effect/java/android/media/effect/effects/FillLightEffect.java
ca/effect/java/android/media/effect/effects/FlipEffect.java
ca/effect/java/android/media/effect/effects/GrainEffect.java
ca/effect/java/android/media/effect/effects/GrayscaleEffect.java
ca/effect/java/android/media/effect/effects/LomoishEffect.java
ca/effect/java/android/media/effect/effects/NegativeEffect.java
ca/effect/java/android/media/effect/effects/PosterizeEffect.java
ca/effect/java/android/media/effect/effects/RedEyeEffect.java
ca/effect/java/android/media/effect/effects/RotateEffect.java
ca/effect/java/android/media/effect/effects/SaturateEffect.java
ca/effect/java/android/media/effect/effects/SepiaEffect.java
ca/effect/java/android/media/effect/effects/SharpenEffect.java
ca/effect/java/android/media/effect/effects/StraightenEffect.java
ca/effect/java/android/media/effect/effects/TintEffect.java
ca/effect/java/android/media/effect/effects/VignetteEffect.java
ca/filterpacks/imageproc/java/AutoFixFilter.java
ca/filterpacks/imageproc/java/BlackWhiteFilter.java
ca/filterpacks/imageproc/java/ColorTemperatureFilter.java
ca/filterpacks/imageproc/java/CropRectFilter.java
ca/filterpacks/imageproc/java/CrossProcessFilter.java
ca/filterpacks/imageproc/java/DoodleFilter.java
ca/filterpacks/imageproc/java/DuotoneFilter.java
ca/filterpacks/imageproc/java/FillLightFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/FlipFilter.java
ca/filterpacks/imageproc/java/GrainFilter.java
ca/filterpacks/imageproc/java/NegativeFilter.java
ca/filterpacks/imageproc/java/PosterizeFilter.java
ca/filterpacks/imageproc/java/RedEyeFilter.java
ca/filterpacks/imageproc/java/RotateFilter.java
ca/filterpacks/imageproc/java/SaturateFilter.java
ca/filterpacks/imageproc/java/SepiaFilter.java
ca/filterpacks/imageproc/java/SharpenFilter.java
ca/filterpacks/imageproc/java/StraightenFilter.java
ca/filterpacks/imageproc/java/TintFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/VignetteFilter.java
e961885d99a7099e38c6e0a2a33608912b8d3353 18-Aug-2011 Glenn Kasten <gkasten@google.com> Use XA instead of SL in type cast

Change-Id: Icc8d678484f454860b32d8823d4a274d3d14d991
ilhelm/include/OMXAL/OpenMAXAL_Android.h
8ecbbee7d44569ea48898a8824b24de7987b9e38 18-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Add backdropper to list of effects, and reformat documentation."
8385fc79255795ab04cbf56339d0a093f7e3d16d 18-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Add backdropper to list of effects, and reformat documentation.

Backdropper is still hidden, until we have the full list of effects.

Bug: 4966161
Change-Id: I95560615eb891c951da676beeb2dc3ac610dc07e
ca/effect/java/android/media/effect/EffectFactory.java
dad0981493d6ed7fc8d356a698f3a1dccedb5cda 18-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5159291 lock safety"
2bd1eb5267f2ccd5629c273ace4cd163d0212e05 18-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5161265 Recover from mediaserver process crash"
fb6a148743c04423f5d7c0af28e3f8ee73a4f767 11-Aug-2011 Glenn Kasten <gkasten@google.com> Test playbq: 8-bit and big-endian byte ordering

Change-Id: Ic34f35226fee07945925cad8cfbc10c756092fee
ilhelm/tests/sandbox/playbq.c
c369e05b3d3e48b54f675434f5ee92efe016a6bc 17-Aug-2011 Eric Laurent <elaurent@google.com> Created library for common audio HAL functions.

libaudioutils groups functions that can be used by any audio HAL
implementation.
Current functions are:
- a resampler based on speex resampler.
- an echo reference module providing resampling, buffering and
time stamp management of PCM data between an output stream and an
input stream for use as echo reference by an AEC module.

This commit is the first step consisting of moving code previously in
crespo audio HAL. This C++ code will the be converted to C and stripped from
dependencies to frameworks/base classes for use by all audio HALs.

Change-Id: Ifa51e0c6358c23122a379d7f5d9ce13a65ff0cf0
udio_utils/Android.mk
udio_utils/EchoReference.cpp
udio_utils/ReSampler.cpp
udio_utils/include/audio_utils/EchoReference.h
udio_utils/include/audio_utils/ReSampler.h
62bdc805920f760f2384ea6feb492efd3bbd828b 17-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Avoid future circular dependency in framework libraries.

Explictly list which framework libraries we depend on, instead of
accepting the default list (which will include this library in the
future).

Bug: 5098987
Change-Id: I781143f535d1e84122de460125915866420e8d07
ca/Android.mk
6efa7b8f636772bc99249bfe94c88ea3930d7f57 16-Aug-2011 Eric Laurent <elaurent@google.com> Merge "Bug 5147281 prefetch status deadlocks"
5a9570bc41725fa4d36472c9a0b2fc8f4306fc6d 15-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Remove dead code from backdropper filter shaders."
0f84833ae8640da787339255360d677b9caeab7e 14-Aug-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "AAC buffer decode to PCM buffer queue"
b9a34f435b43d8f28957d5b6db52a98c6b4b9f77 13-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Remove dead code from backdropper filter shaders.

The code is not approved of by all shader compilers, and is unused
in any case.

Bug: 5111139
Change-Id: I83af451b870d3c2cb1be5c8d0b780e700453e04c
ca/filterpacks/videoproc/java/BackDropperFilter.java
6bd00f9169990c3b9e84b03ef1c5c27ed50a37d1 13-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5161265 Recover from mediaserver process crash

Use the utility method IMediaDeathNotifier::getMediaPlayerService()
to get a reference to media player service. It retries after errors,
and keeps a single global per-process reference to the service rather
than one per object. If we still can't contact the media player service
after retries, handle it like an unsuccessful prepare.

Miscellaneous:
- Remove unused field Parcel metadatafilter

Change-Id: I451a64bd76b4a7f157774abe967448ec081f1014
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
49b757f033c398a9a5917fa9677a7075c4c85d93 12-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5159291 lock safety

Change-Id: I56f5fd038d63d033954d794168df4cbcdade26f3
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IAndroidEffectCapabilities.c
ilhelm/src/itf/IAndroidEffectSend.c
ilhelm/src/itf/IEnvironmentalReverb.c
ilhelm/src/itf/IObject.c
ilhelm/src/itf/IPresetReverb.c
ilhelm/src/itf/IRecord.c
ilhelm/src/itf/IVolume.c
c63c2a7b0e63545b4b7073850e8583fd6010b0ee 11-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5147281 prefetch status deadlocks

Fixed two deadlocks related to AudioTrack prefetch event callbacks:
- if PrefetchStatus interface was initialized on an AudioPlayer,
there was a deadlock at the point where it checked whether to do a callback
- prefetch status callbacks are now called with the object unlocked,
so they are permitted to do APIs on the object

Miscellaneous fixes:
- SMP-safe locks for GetPrefetchStatus, GetFillLevel,
GetCallbackEventsMask, SetFillUpdatePeriod, GetFillUpdatePeriod
- SetCallbackEventsMask error handling for invalid bitmask
- Enqueue sets prefetch fill level to 1000

Change-Id: Ic8b2c440aeb4efa3446a4a73d3422d934ceb0578
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/classes.h
ilhelm/src/itf/IPrefetchStatus.c
ilhelm/src/itfstruct.h
ilhelm/src/locks.c
ilhelm/src/sles_allinclusive.h
333c2341445e9f161ff022a4b7d5f69e9e149b60 27-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> AAC buffer decode to PCM buffer queue

Implement AAC ADTS decode with buffers of compressed data being
passed to the framework through an AndroidBufferQueue, and
decoded PCM buffers being passed to the application through
a BufferQueue (just like existing decode from URI/FD).

Change-Id: Id992a44a5ca7e404088b929f2b0afe9ca1f85223
ilhelm/src/Android.mk
ilhelm/src/android/AacBqToPcmCbRenderer.cpp
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/BufferQueueSource.cpp
ilhelm/src/android/BufferQueueSource.h
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.h
ilhelm/src/android/android_defs.h
ilhelm/src/android/include/AacAdtsExtractor.h
ilhelm/src/android/include/AacBqToPcmCbRenderer.h
ilhelm/src/android/util/AacAdtsExtractor.cpp
ilhelm/src/data.c
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IEngine.c
ilhelm/src/sles_allinclusive.h
75ef8e777f81fc942460e5a8ad8ab0b0151678e5 11-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Add timestamp as a port to GLTextureSource.

Allows filter chains using external texture sources to propagate
timestamps provided by the external source.

Bug: 5149729
Change-Id: Ic365257306636ea1083ad23a811a48a5e872bd5b
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
ddf062ba8054a3b18959b219a66e09621bc86782 10-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fixes to BackDropperEffect."
b2e58d5ce1062f66dffa7f3408528b92526c67ac 10-Aug-2011 Marius Renn <renn@google.com> Merge "Bugfix (5144111): Choose FBO pixel read over texture pixel read."
39671763229bf1140c8e1c1b6cd4c072cbd4eb6c 08-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5126938 dependency for video sinks

Fixing bug 5126938 will involve configuring the video sink in two places:
at the initial data locator when creating the MediaPlayer object, and
then later in the IAndroidConfiguration interface. This CL is preparation
for that.

Details:
- Abstract out common code into android_Player_setNativeWindow.
- Move the code for checking and initializing the video sink from an
#ifdef ANDROID in the CMediaPlayer_Realize portable code to into
platform-specific android_Player_realize.
- Only set one of mSurface or mSurfaceTexture to non-NULL.
- For methods which can't fail, replace the SLresult return value by void.

Change-Id: Iec8fd91e1a6de45eb64241b35e3f7d7faf63d727
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/objects/CMediaPlayer.c
1052373d66a19c7345df5a61c5e06cfb5f661dd2 10-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Fixes to BackDropperEffect.

- Enable auto-wb
- Fixes to graph, filter references

Bug: 5039738
Change-Id: I9fb17659fb706920a4637f921a6e230984aa3051
ca/effect/java/android/media/effect/effects/BackDropperEffect.java
15ebdcc40023b94f8f7184b8c4ea47acc8d207c6 10-Aug-2011 Marius Renn <renn@google.com> Bugfix (5144111): Choose FBO pixel read over texture pixel read.

Change-Id: Ibdae635445551c302d7edb3f6fd77369e43b7293
ca/filterfw/native/core/gl_frame.cpp
fed2651405751315080a9c00ddada6c144e5322e 09-Aug-2011 Ruei-sung Lin <rslin@google.com> Merge "add ImageSlicer and ImageStitcher filters."
9d5b7bcfd81bf1003fa3d1149da795862757a378 09-Aug-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Initialize video decoder capabilities fields even when unknown"
d4e419e9a19b38100d1bcc4a30137c1cc490d5b2 09-Aug-2011 Ruei-sung Lin <rslin@google.com> Merge "add customize option in SurfaceTectureTarget"
1b067ed548f57ee752f9913011db88d18a6eaf87 09-Aug-2011 Jean-Michel Trivi <jmtrivi@google.com> Initialize video decoder capabilities fields even when unknown

We only support the discovery of codecId, profile and level when
using the VideoDecoderCapabilities interface. The other fields
in the XAVideoCodecDescriptor structure need to be initialized
even if they're not filled.

Change-Id: I8833437b3b23748a50076b65baf5b9a250290b86
ilhelm/src/android/VideoCodec_to_android.cpp
2bbe3358c87798018d07937f398301adf77f0be4 09-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5126938 dependency and miscellaneous bug fixes"
6a08aa60efe755829079324d024f5b7471bf46c9 09-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Updates to slesTestRecBuffQueue test app"
59b7b476020513ecd3c497199327c0c79356562f 09-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4603165 playback rate change"
a3138027c47d2d1657166a019d8061b0382663d4 09-Aug-2011 Marius Renn <renn@google.com> Merge "Bug (5106403): Serialize filter input values across threads."
a8a53e37bf7e563aac00d97740a832247a2fe8b9 09-Aug-2011 Marius Renn <renn@google.com> Merge "Bugfix (5088434): Accessing bitmap data on non-RGBA native frames."
36be77183e90482759e5069671e6957752a9d91e 09-Aug-2011 Glenn Kasten <gkasten@google.com> Updates to slesTestRecBuffQueue test app

Allow the preset number to be specified on command line,
or to use default.

Change-Id: Ia4e996f8726a6bd8ca781bba5930b63bcba854bc
ilhelm/tests/examples/slesTestRecBuffQueue.cpp
9c76ec6fe3517f09568b7d611fa37113b5674c0a 09-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Add background replacement Effect."
64c30d7d606057d3fea4484960d0fcd3a431e2ac 09-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Add background replacement filter to mobile filter framework."
a7f84a90a07c1e01e3f92b6e94e28fe7de7960f1 08-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5135150 Fix ifdef C++"
4a0800b10e47d47bb12cf011a50d02cf73b091c2 08-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Add playback rate to buffer queue test player"
4372cae16ec09e83339028b34f4e70cebad5cba2 08-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5126938 dependency and miscellaneous bug fixes

Fixing bug 5126938 will involve adding the IAndroidConfiguration interface
to CMediaPlayer object. In the process of doing this, I found a few
miscellaneous bugs in the error handling for IAndroidConfiguration. This
CL fixes those bugs, and prepares for adding the interface CMediaPlayer
by making it easier to support new objects with the interface.

Details:

- Generic error handling:
Move some error checks from the object-specific code into the generic
IAndroidConfiguration.c.
Fix bug in SetConfiguration and GetConfiguration where we were not
checking configKey for NULL
Return SL_RESULT_FEATURE_UNSUPPORTED instead of
SL_RESULT_PARAMETER_INVALID if IAConfig interface is exposed on
an object which doesn't really support it (this could if the classes.c
interfaces table was updated before the cases were updated).
Compare with IMuteSolo for non-AudioPlayer.

- Object-specific error handling:
Fix bug where we weren't returning the actual value size in
audioPlayer_getConfig when pValueSize was non-NULL and pConfigValue
was NULL.
Return result SL_RESULT_BUFFER_INSUFFICIENT instead of
SL_RESULT_PARAMETER_INVALID when output buffer is specified
as non-NULL but available space is too small. Compare with
IAudioIODeviceCapabilities.
Return result SL_RESULT_SUCCESS instead of SL_RESULT_PARAMETER_INVALID
when output buffer is specified as NULL; this is intended to allow
the application to discover the required space. Compare with
IAudioIODeviceCapabilities.

- Use 'switch' instead of 'if' for checking object types, to improve
readability when adding more object types

Change-Id: I8b2cdd506a36bfa9b1326a8a9966a6633bbbba6d
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/itf/IAndroidConfiguration.c
4b7b01a551bba90b886bc1200feffa5682f2911b 08-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Miscellaneous loop test improvements"
5c35d1d2508f6ca40c0614e2882d8bf5d0cc026c 08-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5135150 Fix ifdef C++

Change-Id: Ic28452ce6b0c717722098699092f1797424a6d9b
ilhelm/include/SLES/OpenSLES_AndroidConfiguration.h
dfc3110139e5aa8205e5736c93c3d2bcc077f71b 02-Aug-2011 Glenn Kasten <gkasten@google.com> Miscellaneous loop test improvements

Enable HEADATEND event to see whether looping causes that event.
Recover from prefetch errors using the new approach of condition signal rather than polling.
Check result returned by GetFillLevel.

Other changes:
- Make assert work.
- Pass NULL as 3rd parameter to RegisterCallback when context is not needed.
- Use CheckErr instead of assert when checking result codes.
- Add comments.

Change-Id: I972b9eca9836e62141b6a078345f091e60689321
ilhelm/tests/mimeUri/Android.mk
ilhelm/tests/mimeUri/slesTestLoopUri.cpp
c02fc25bdea4b7ecf780a342b3a5c1235629ae62 03-Aug-2011 Glenn Kasten <gkasten@google.com> Add playback rate to buffer queue test player

Change-Id: I831290c1d70bbd66031f609a63549801b7c7f57b
ilhelm/tests/sandbox/playbq.c
b8d1481ebc1276f6f9104b5ffd702903ac70e932 04-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Add background replacement Effect.

Bug: 5061093
Change-Id: I8db69381627c89eb9851a3383e3715ce8ee934df
ca/effect/java/android/media/effect/effects/BackDropperEffect.java
a355ce91ba49c0b5470714696d4f21ced1386690 04-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Add background replacement filter to mobile filter framework.

Bug: 5098987
Change-Id: I242d2a13403b3d1ace74b8b41bd23734ce0333e2
ca/Docs.mk
ca/filterpacks/videoproc/java/BackDropperFilter.java
83aa27354ea9f1ced622a63b202f694f10aa2298 05-Aug-2011 Eddy Talvala <etalvala@google.com> Merge "Revert "Add background replacement Effect.""
961ea2e73bd879e7d33b779bad0659b00d4cf071 05-Aug-2011 Eddy Talvala <etalvala@google.com> Merge "Revert "Add background replacement filter to mobile filter framework.""
1bdd39ec7c1c4a63315a1eb205442932ce76d137 05-Aug-2011 Eddy Talvala <etalvala@google.com> Revert "Add background replacement Effect."

This reverts commit 3aeb06f571d69db6e7dcdca85f328b022c041f90
ca/effect/java/android/media/effect/effects/BackDropperEffect.java
010f6c64a1d0ab7724d520322e0ff07e6560c00e 05-Aug-2011 Eddy Talvala <etalvala@google.com> Revert "Add background replacement filter to mobile filter framework."

This reverts commit b07371016b15886136e88f1ec62d53daa3c5053f
ca/Docs.mk
ca/filterpacks/videoproc/java/BackDropperFilter.java
696522c62fcfeb9722975ea55b3beb049a6041fa 05-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Add background replacement Effect."
da709ef7cb3f3c7632cf448e2006186f5c521807 05-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Add background replacement filter to mobile filter framework."
8c2aa18530c67c95852f98e291ee9167bc680de8 05-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5903270 play interface, events, markers, etc."
3aeb06f571d69db6e7dcdca85f328b022c041f90 04-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Add background replacement Effect.

Bug: 5061093
Change-Id: Icdcf7597c9ce2ee9e6443d3b9eeaf9c99b57c809
ca/effect/java/android/media/effect/effects/BackDropperEffect.java
f012bde9b35420b205556232d0fa94d25d0bf0e8 05-Aug-2011 Marius Renn <renn@google.com> Bugfix (5088434): Accessing bitmap data on non-RGBA native frames.

Change-Id: I8db22b6d78c5350815c043acbc55e578bee1a8a0
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/jni/jni_native_frame.cpp
ca/filterfw/jni/jni_native_frame.h
3c3ee350947dddfbb067b9252901e511e8171f24 04-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Fix race in reverb test"
a6665d635953176e94797e9d203efa9df6dfe3ff 04-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5110581 SL_PLAYEVENT_HEADATEND while looping"
b07371016b15886136e88f1ec62d53daa3c5053f 04-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Add background replacement filter to mobile filter framework.

Bug: 5098987
Change-Id: Ib96da73756b736f2960b39cdc47673b52134e881
ca/Docs.mk
ca/filterpacks/videoproc/java/BackDropperFilter.java
31b842fa58d602d38cdf2937efc4b47603bbb71e 04-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 4603165 playback rate change

Non-trivial implementation is only for AudioTrack with rate range 500
to 2000 per mille and property SL_RATEPROP_NOPITCHCORAUDIO; for Android
MediaPlayer the rate range is 1000 to 1000 per mille.

Details:
- no multi-range
- fix SMP races in GetRate, SetPropertyConstraints, GetProperties
- SetRate only updates mRate if successful
- Rate_SetPropertyConstraints only updates mProperties if successful
- return SL_RESULT_FEATURE_UNSUPPORTED for non-AudioPlayers
which have this interface (currently only MidiPlayer)
- for Android, atomically set playback rate and constraints
and simplify to use hard-coded constraints rather than querying
- per the spec, SetPropertyConstraints now returns
SL_RESULT_PARAMETER_INVALID if the constraints are out of range,
or SL_RESULT_FEATURE_UNSUPPORTED if the constraints are in range but
not supported by this implementation

Change-Id: I051ff92b20f3845ffa12bccec778937d42823e5d
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/itf/IPlaybackRate.c
ilhelm/src/itfstruct.h
a81ac67d31590942f5a3a8233cf9759c20a494dc 29-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5903270 play interface, events, markers, etc.

As the media framework does not directly support marker and periodic
callbacks, we use a retriggerable one-shot timer at application level
to emulate this. This has the advantage of being faster, but is also
less accurate than if it were in the framework.

Details:
- Get position is now synchronous and (mostly) lock-free
- Fix regression in SL_PLAYEVENT_HEADATMARKER and SL_PLAYEVENTHEADATNEWPOS
- Fix SMP races in GetPlayState, GetCallbackEventsMask, GetMarkerPosition,
GetPositionUpdatePeriod
- AudioSfDecoder was not updating mPositionMsec when getPositionUsec failed
- Updating attributes is relatively expensive, so only do it when a significant change
in SetMarkerPosition, ClearMarkerPosition, SetPositionUpdatePeriod
- Error on unknown message type in onMessageReceived
- Delete an obsolete FIXME
- "Clearing" a marker is now equivalent to disabling the marker event,
and the default marker position is cleared.
- use Android time units and types (int32_t, ANDROID_UNKNOWN_TIME, etc.) where appropriate
instead of SLmillisecond and SL_TIME_UNKNOWN

Change-Id: Ib78bafa20d883b8d927364769663837389b6ea1d
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/attr.h
ilhelm/src/handler_bodies.c
ilhelm/src/itf/IPlay.c
eacfad0aa3a11e15be0f70bd2bfccfb3be05164e 04-Aug-2011 Ruei-sung Lin <rslin@google.com> add ImageSlicer and ImageStitcher filters.

Change-Id: Id47e121aa783d02ef7f63b6b1c8d724fa4e2d57b
ca/filterpacks/imageproc/java/ImageSlicer.java
ca/filterpacks/imageproc/java/ImageStitcher.java
9547a45bfc9bbe96dcea4cc38cb93437b4c77a10 04-Aug-2011 Marius Renn <renn@google.com> Merge "Fix for 5117329: Stored frames which are externally visible check validity."
ff53a18b9fd6ddbae62e780f0ffc3a1891d5eb5b 04-Aug-2011 Marius Renn <renn@google.com> Merge "Fix for 5117999: Make isEffectSupported() a static method."
4c054d6b7de3d1fe83b4f553af52ad55777f17ee 04-Aug-2011 Marius Renn <renn@google.com> Merge "Fix for 5117285: Stream-based filters no longer close streams."
3418d1299ad09e517d34f43eac5a4c334e41ff16 04-Aug-2011 Marius Renn <renn@google.com> Fix for 5117285: Stream-based filters no longer close streams.

Stream-based filters should not close streams, as they do not open them.

Change-Id: I01688fecde4d80e6089fb4c2fd017144dfc88408
ca/filterfw/java/android/filterfw/basefilters/InputStreamSource.java
ca/filterfw/java/android/filterfw/basefilters/OutputStreamTarget.java
427833087f412e3bcbe4e31945ea1461f3c4824a 03-Aug-2011 Ruei-sung Lin <rslin@google.com> add customize option in SurfaceTectureTarget

Change-Id: I297168c0f67928b2180f2d0ce95c2f6d3bbbf107
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/SurfaceTextureTarget.java
1706ce5815379835cd2046e26b764d79b1beacf6 04-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fix structgen script to build Java directory hierarchies."
b2bff053cdfd3247afbf5329581784b06de83f24 04-Aug-2011 Marius Renn <renn@google.com> Fix for 5117999: Make isEffectSupported() a static method.

This is required for applications such as GTalk, which need to verify that
certain effects are available before they setup an EffectContext.

Change-Id: I0f22b2ef378ebf0cb916305bc2a9f6b093b0f715
ca/effect/java/android/media/effect/EffectFactory.java
7eacc1981bcbd53a79721b23a2a9da6fd0c0a1ab 04-Aug-2011 Marius Renn <renn@google.com> Bug (5106403): Serialize filter input values across threads.

Change-Id: I973cfc681f4e9a53fcdee15acf55d1935d9a9676
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/SerializedFrame.java
92568796d043c794553e5bcaa797c906899e71f0 04-Aug-2011 Marius Renn <renn@google.com> Fix for 5117329: Stored frames which are externally visible check validity.

This patch adds callbacks to Frames to let them prepare frames for storage,
and validate them on retrieval.
Also includes some name changes to badly named functions in gl_frame.cpp.

Change-Id: Ie25ef5136a6f583cbb8f70d7c2f1c418b4bceb83
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/FilterContext.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/jni/jni_gl_frame.cpp
ca/filterfw/jni/jni_gl_frame.h
ca/filterfw/native/core/gl_frame.cpp
ca/filterfw/native/core/gl_frame.h
b29516203efdf988c5bca89bfb86b6a09885e1b5 04-Aug-2011 Wei Hua <whua@google.com> Merge "Added FilterGraphEffect."
d38f5b7d032910e36ee459338cf9a73df1a38272 04-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Fix structgen script to build Java directory hierarchies.

Bug: 509898
Change-Id: I27a1ee3dd3f3fcfa82c5f2620e5e30193327105d
ca/structgen.py
afd98e3d612bcaf072c296d4f2b11fd02ed7205e 24-Jul-2011 Glenn Kasten <gkasten@google.com> Fix race in reverb test

Was setting play state to PAUSED before enabling prefetch callbacks

Change-Id: Idc3d19d87799afe7e8314199c1317cf2cea2c449
ilhelm/tests/sandbox/reverb.c
3472098010581e4cbf3f7fadf15f03de75c9a51d 03-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Increase MediaSource's startup timeout."
1e28e9d53566826af54e658a6d72dc2b6cb060f3 03-Aug-2011 Wei Hua <whua@google.com> Added FilterGraphEffect.

Make the texId in GLTextureTarget not final
Bug: 4966161

Change-Id: I0935194c957ef2c490d3661f4247ad1ea23a3512
ca/effect/java/android/media/effect/FilterGraphEffect.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureTarget.java
0b02ad8c6715ac9d8526e4229a6030ef436704bc 03-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5110581 SL_PLAYEVENT_HEADATEND while looping

Change-Id: Ia4d0433b4a6589bfda2f88addbe5b7eb3d0d9789
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.h
c2ab83c3be33a48d47b10c9c141e7ef2180956a5 03-Aug-2011 Marius Renn <renn@google.com> Minor API implementation fixes.

- Documentation fixes.
- Private package lookup fix.
- Exception fix.

Change-Id: Ibae80a0b9c5eacdd95ec4c699e12eaec46b552c1
ca/effect/java/android/media/effect/Effect.java
ca/effect/java/android/media/effect/EffectContext.java
ca/effect/java/android/media/effect/EffectFactory.java
ca/effect/java/android/media/effect/FilterEffect.java
2805fce46e67ab98b17996e42b58e3eaa487e67f 03-Aug-2011 Marius Renn <renn@google.com> Merge "Initial commit of the high-level public MFF effects SDK implementation."
99790fa87b722f941db6e147d7e60046f8c9c289 03-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5109153 Remove log spam"
10fad184fa812a1313d38237eb7972fc4e972866 03-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5108531 Report the correct API level"
776102d45a18a5df53d2ec76c5d93f20b3e99da1 02-Aug-2011 Marius Renn <renn@google.com> Initial commit of the high-level public MFF effects SDK implementation.

Includes fixes required for the Effects API:
- Explicit tear-down of MFF components.
- Better reuse of GL frames with external bindings.
- Fixed memory leaks.

Change-Id: I3a7397be1943361f6a8981cdf8313fd1670b26c8
ca/Docs.mk
ca/effect/java/android/media/effect/Effect.java
ca/effect/java/android/media/effect/EffectContext.java
ca/effect/java/android/media/effect/EffectFactory.java
ca/effect/java/android/media/effect/EffectUpdateListener.java
ca/effect/java/android/media/effect/FilterEffect.java
ca/effect/java/android/media/effect/SingleFilterEffect.java
ca/effect/java/android/media/effect/effects/BrightnessEffect.java
ca/effect/java/android/media/effect/effects/ContrastEffect.java
ca/effect/java/android/media/effect/effects/FisheyeEffect.java
ca/effect/java/android/media/effect/package-info.java
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/FilterContext.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/FrameManager.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/jni/jni_gl_frame.cpp
ca/filterfw/jni/jni_gl_frame.h
ca/filterfw/native/core/gl_frame.cpp
ca/filterfw/native/core/gl_frame.h
ca/filterfw/native/core/shader_program.cpp
fa2124c46e4e6486465f6b85db7e6780eda46c3b 02-Aug-2011 Eino-Ville Talvala <etalvala@google.com> Increase MediaSource's startup timeout.

When streaming network URLs, the initial timeout of 5 seconds is
too short. Increasing to 10 seconds seems sufficient.

Bug: 5110877

Change-Id: I8071a7fee0bf0f5c28faef8fa69ab6790f110267
ca/filterpacks/videosrc/java/MediaSource.java
37b926ac68d4516d07ae485c49057aab5d366340 02-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5080320 MediaPlayer volume"
2b9a1ef8a14251a8cdcdf20d7bd3ae0e4c5faa10 02-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5109153 Remove log spam

Change-Id: I6c0c742bfa3f0078968dc5e2ea3578ad786067c5
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IStreamInformation.c
17fe37dd42cb1bf7f9af53348d56d497512b5342 02-Aug-2011 Glenn Kasten <gkasten@google.com> Bug 5108531 Report the correct API level

Use build macro PLATFORM_SDK_VERSION to automatically update the reported
value, however the test program will still need manual updates.

Change-Id: Iae044605db65021c7d1e9825aab80ab5d6b552a8
ilhelm/src/Android.mk
ilhelm/src/itf/IEngine.c
ilhelm/tests/sandbox/object.c
08a0cff7c9b817037c8f14332f3eccead1fd6f3a 02-Aug-2011 Marius Renn <renn@google.com> Merge "Bugfix (5085850): Added function to allow easy initialization of program host variables."
f9e2eb32d5ac281de8cf7985891123c5ce826de2 02-Aug-2011 Marius Renn <renn@google.com> Merge "Bugfix (5064211): Fix uniform access and lookups to work on non-TEGRA."
37b0904bf374b2259d3bd25a351db97130e17496 01-Aug-2011 Ying Wang <wangying@google.com> Merge "Fix makefile function call syntax"
3f7ca5db73a94285e404e09d377dd5fd6afc7aaf 01-Aug-2011 Marius Renn <renn@google.com> Bugfix (5085850): Added function to allow easy initialization of program host variables.

Change-Id: If7d88a015b75937d5f49cdb51120de5f75ee6d17

Changed 2 filters to use new simplified method.

Note: This requires that other affected filters are updated to make
use of the new functionality.
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/InputPort.java
ca/filterpacks/imageproc/java/ImageCombineFilter.java
ca/filterpacks/imageproc/java/SimpleImageFilter.java
dbdc075e52caead0e08643ddfb68ff2e99d6af21 01-Aug-2011 Marius Renn <renn@google.com> Bugfix (5064211): Fix uniform access and lookups to work on non-TEGRA.

Change-Id: I75f80db09d9836754c7071ed8fd3c88ab317d989
ca/filterfw/native/core/shader_program.cpp
ca/filterfw/native/core/shader_program.h
0afa0fdcde5876941eaefaacc778984ec4efefa0 28-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5080320 MediaPlayer volume

Details:
- re-factor volume-related code yet again
- remove dead variables mAmplFromVolLevel, mAmplFromStereoPos, mDirectLevel
- add placeholders for kEventPrefetchFillLevelUpdate and kEventPrefetchStatusChange

Known issues:
- MPEG-2 TS doesn't yet implement the ability to query channel count, so default to stereo

Change-Id: Ic0f2297b267dc3d380755e8d314e1d5f0f659d7c
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/classes.h
ilhelm/src/handler_bodies.c
ilhelm/src/itf/IEngine.c
3c5b34cdf6baaf08a2a13c7a292b5637ab8db333 30-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5082191 fix slesTest_decodeToBuffQueue assert"
e0ff127e9dc760359bcd5410cc0984a13cccd477 29-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5092976 no spurious callbacks on prefetch fail"
ceb4492110f07e7e9b50c024dee65faa64d1b48f 29-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5081346 fix whole file looping"
36f48302328a040d36012fbc869ca9ee41b232b0 29-Jul-2011 Pannag Sanketi <psanketi@google.com> Merge "Adding MediaEncoderFilter for encoding GLFrames"
277939c4df0abdadfef5ff19b4b33480bd9a0c20 29-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Fix bug in CameraSource resolution selection.

Bug: 5083927

Change-Id: I2ff78b717e8092c14f73fc51bb3802a275d08bbf
ca/filterpacks/videosrc/java/CameraSource.java
5ec63c4998f9b1d8c30363f21cbecc7ffc5d152a 26-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5081346 fix whole file looping

Change-Id: If4e233f9007d7e48225a342a43f06df7f66cdea7
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
f037e5965c0a0e6a918344753dc59bf4e8149d10 29-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5092976 no spurious callbacks on prefetch fail

Change-Id: I754085b4d1e43c4d10bea36e0fb683d8113844e9
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
84a9fb79433ee7c66fe1df7b0a754828ff89aec1 08-Jul-2011 Pannag Sanketi <psanketi@google.com> Adding MediaEncoderFilter for encoding GLFrames

Added MediaEncoderFilter inside MFF which can record GLFrames. It uses
MediaRecorder underneath. GLEnvironment gets a native window handle
using the MediaRecorder object, and creates an EGLSurface using that.
Any frames rendered to that frame are forwarded to the
StageFrightRecorder via the native window handle obtained from
MediaRecorder.

Related to bug id: 4529323

Change-Id: I0322e8dfa29ba47741222fcb8accf18eab7c050b
ca/Docs.mk
ca/filterfw/Android.mk
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/jni/jni_gl_environment.cpp
ca/filterfw/jni/jni_gl_environment.h
ca/filterpacks/videosink/java/MediaEncoderFilter.java
49cfc9858d3a610b52e3e6b2fc1733888f7743f5 27-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5082191 fix slesTest_decodeToBuffQueue assert

Change-Id: I2ec181cc7eba000847bd28e6d04733d3496d74d9
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_defs.h
ilhelm/src/itf/IEngine.c
7e4729ac84d876de3ae439ae9cfef41701d6a2a2 25-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 4599730 fix mute solo, channel count, volume

Change-Id: I1624c744168233c4ef79f2cd3090447b8aa7d53b
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/classes.h
088e17ee0772aa5988212b47d95006bb3d0a97e6 28-Jul-2011 Ying Wang <wangying@google.com> Fix makefile function call syntax

Before this change, the newline character will be carried to the shell
command. So no file name will be returned.

Change-Id: I54ce7da62711bf8e0bd35831e361cbf4eedbcee8
ca/Docs.mk
0381220104d200588cf25dc1bab76a2a204bb38a 28-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Report last decoded position as AudioPlayer position for PCM decode"
b1b210abdf4e97d1efffaecd2e683c6e5f23f1af 27-Jul-2011 Marius Renn <renn@google.com> Merge "Refactoring to fix GL related bugs (Bugs 5031729, 5062397, 5030694)"
7a114799472e645dbd4061ff5bed793fd6d8e84f 27-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Report last decoded position as AudioPlayer position for PCM decode

Change-Id: I1ec413137d549235af4dc66cb033e1cd0bbbad62
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
f5ae8eafa7605c6593f62f873b62cb64a3254db3 27-Jul-2011 Marius Renn <renn@google.com> Refactoring to fix GL related bugs (Bugs 5031729, 5062397, 5030694)

- GL frame must not override default texture parameters
- Detect leaking frames early.
- Do not double deallocate frames.
- Update bytes per sample when resetting format base-type.
- Split GL processing up to allow UI thread to draw.

Change-Id: I512eb0bf19e212243be2da966ed2f9219e22dc3b
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FinalPort.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/JavaFrame.java
ca/filterfw/java/android/filterfw/core/MutableFrameFormat.java
ca/filterfw/java/android/filterfw/core/NativeBuffer.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/ProgramPort.java
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/StreamPort.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/jni/jni_gl_frame.cpp
ca/filterfw/jni/jni_gl_frame.h
ca/filterfw/jni/jni_native_frame.cpp
ca/filterfw/jni/jni_native_frame.h
ca/filterfw/jni/jni_shader_program.cpp
ca/filterfw/jni/jni_shader_program.h
ca/filterfw/jni/jni_vertex_frame.cpp
ca/filterfw/jni/jni_vertex_frame.h
ca/filterfw/native/core/gl_env.h
ca/filterfw/native/core/gl_frame.cpp
ca/filterfw/native/core/gl_frame.h
ca/filterfw/native/core/shader_program.cpp
ca/filterfw/native/core/shader_program.h
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/numeric/java/SinWaveFilter.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/SurfaceTextureTarget.java
ca/structgen.py
e23bf25c468aec0e8a12746c56edcf6a8ff68aed 26-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Concurrency fix to CameraSource.

Don't hold a lock on the whole object while waiting for new frames.
Could have potentially deadlocked the filter if the UI thread
attempted to call get/setCameraParameters while filter was waiting for
a new frame.

Bug-Id: 5075306

Change-Id: I12391ff3247c64a2c6a303bfc9f542e1e80d2c24
ca/filterpacks/videosrc/java/CameraSource.java
67115781a7bd030e6c7f5bb6dc84828b68f10e86 26-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5045590 preset reverb on audio players"
db45295213ff7c306d04f943b6443d7067163c14 26-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fix concurrency bugs in MediaSource"
bce61624a80db2cef964fc512cfd3bac034afefe 25-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 5022500 MP2TS format change support in OpenMAX AL

Define new command that can be queued in AndroidBufferQueue
to signal an MP2TS format change.
This command maps directly to IStreamListener::kKeyFormatChange.

Change-Id: I67908fd9e1a7d994862ea3e41c4c0fb6e36bc804
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_defs.h
ilhelm/src/itf/IAndroidBufferQueue.c
41562990ca46e5d6c4aadde6c2469b8007bb980c 22-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5045590 preset reverb on audio players

Aux effects on MediaPlayer audio players (non-AudioTrack) were broken

Change-Id: I5b97bee08d809b12cb9815d6d277934123780581
ilhelm/src/android/android_Effect.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
90397368b3af2279e6aa739182b4e50b26a90beb 23-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Fix concurrency bugs in MediaSource

Fixes several possible/occasional deadlocks between mediasource,
surfacetexture, and the UI thread.

Change-Id: I62a98f0ed86fd7a6c9d3a5141137fe960d8fa31a
ca/filterpacks/videosrc/java/MediaSource.java
e09e8e0bd0d9e07ff89351a1f1e03f6b00447e7b 24-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5068269 Fix assertion failure after prepare"
f5573d6728fb4e064e3a7a3fdf789fcbf72b35da 24-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "pthread_signal instead of polling prefetch status"
1e2c2ddd5f61f2862a8d4c1e0d506e7192a89f1d 21-Jul-2011 Glenn Kasten <gkasten@google.com> pthread_signal instead of polling prefetch status

Also add looping for short files

Change-Id: Ia115ca5ff388a4824d56fad2ad34881479ab3f0d
ilhelm/tests/sandbox/reverb.c
36584368a1e63f5e3d998c65c96d51f3a443f3a0 23-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Miscellaneous improvements to preset reverb test"
f775524bc529add4ba9509d1a392c9a7dcea8e4e 21-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5068269 Fix assertion failure after prepare

Change-Id: I890a29eeef9021c7432da8a0ccb409846e107097
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_defs.h
0238573dd463e661fff4ec9741d1aafd47180629 22-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Make CameraSource always pick a resolution from the supported list."
f8a9cdaff1d970e1bec7b39fd20d51119500b865 20-Jul-2011 Glenn Kasten <gkasten@google.com> Miscellaneous improvements to preset reverb test

Add option to select URI or fd locator.
Use prefetch status callback to detect bad URI.
Fix bug where it was not playing the last few seconds of file.
Decrease reverb on/off interval from 5 to 3 seconds, for shorter files.
Add looping.

Change-Id: I34a0506742de14adcf996bfc508177b260afded8
ilhelm/tests/examples/slesTestSendToPresetReverb.cpp
9aeeed4a7a5ab115727a0545ea343dcc4f966851 20-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Make CameraSource always pick a resolution from the supported list.

If the requested resolution is not supported, CameraSource will now
pick the closest match that isn't bigger than requested, if possible.

Fixes crashes due to the default 320x240 not being supported
(bug 5064211)

Change-Id: I446990ed9a56a78d3676eb5d41fe9fc91431c5db
ca/filterpacks/videosrc/java/CameraSource.java
430116371a1aa632816a141fae0489235b238c36 22-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fixes to the MediaSource filter."
990fae9062f84ee737b8b379818afc101cb7bb02 22-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5047695 Handle unsuccessful prepare up to app"
a619af077f90fce13832ca4b32cb4e4216d21a3f 22-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Add more verbose logging"
c8afe66093a29852779745ddf7c45dee6f0dc414 22-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Fixes to the MediaSource filter.

- Add volume support, set default volume to 'mute' (bug: 4977691)
- Properly handle non-looping videos (bug: 5060297)
- Make error handling consistent with other filters
- Some logging improvements

Change-Id: I76c156148a18200ff43cae7816d1ffa819f86a23
ca/filterpacks/videosrc/java/MediaSource.java
e1c913c670ee6f38940555b4247bc4a572eaa798 21-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5047695 Handle unsuccessful prepare up to app

Change-Id: I9f1541b37ad5cda21dc49388e42c7fb08b22fc5b
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_defs.h
6e00efb769f780bc46c2ccda92688ba890623fb4 21-Jul-2011 Glenn Kasten <gkasten@google.com> Add more verbose logging

Change-Id: I0cccee0d59fe3eefc6ef94b22bb6100d96bccdff
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
94cda43c47e5ea09b22b1f0bfdbd4d64b1708e05 21-Jul-2011 Wei Hua <whua@google.com> Merge "Move the format checking into process."
262a009cbd3e4eab125246cf70f110ad3cd6c75e 21-Jul-2011 Wei Hua <whua@google.com> Move the format checking into process.

prepare() may not have the complete format.

Change-Id: I2245675df030564e1c652c934cbcdc16c0fc96f2
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/ToRGBAFilter.java
ca/filterpacks/imageproc/java/ToRGBFilter.java
0e45c4233d340119cb97610e38770d67c1707dab 21-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Use prefetch status to recover from URI errors"
7efce4af02de2bf8989f039b1df8e182dc5e93f0 21-Jul-2011 Eric Laurent <elaurent@google.com> Merge "Header file for audio effects config file parser"
06bad57478a090e298570763780950fb24c4ee85 20-Jul-2011 Glenn Kasten <gkasten@google.com> Use prefetch status to recover from URI errors

Change-Id: I1afa4af018c372448a456824c78e3e1ab1c13b42
ilhelm/tests/sandbox/multiplay.c
5c8bf5303ac97b479649c9f8dd216db60f7dbeb6 20-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5047695 missing cases"
12319aa151934ff6006ecd2c4471f23506611796 20-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 5044578 part 2"
fd2bd70fd50a34e67d6e986a97fa3a23b31d30ea 20-Jul-2011 Marius Renn <renn@google.com> Merge "Bugfix: GL texture parameter / mipmap setting issues."
5dc09fe1d61c11a91343237032d65163fe691297 20-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5047695 missing cases

Change-Id: I9ae27ed4e977568a9687b9dd18eb998651569b24
ilhelm/src/android/android_GenericMediaPlayer.cpp
9529367d168ab41803af03402df4e701970604d0 20-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix bug 5049371 Metadata for decode to PCM buffer queue"
3be913792db8996ed698648a6ef95a835f03f8ca 20-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Use the documented header filenames"
cf837561a13511bbc4a9d480b5bae9382dfa0b8d 20-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Fix newline"
6a5cfa46c38d1d054d8ff71bd9c53f69c914e1bd 20-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Re-generate tables and fix includes"
c765a8e3fa7564394100007a9c45ff811b93d840 20-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Reduce logs"
33164fee278e106cc5d0493a1c184f208e9d273f 20-Jul-2011 Marius Renn <renn@google.com> Bugfix: GL texture parameter / mipmap setting issues.

- Texture parameters are now properly reset on frame reuse.
- Generating a mipmap does not alter the MIN_FILTER anymore.

Change-Id: Ie4734d5daf71f448e3cdd907130a05ae8db4bbb2
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/jni/jni_gl_frame.cpp
ca/filterfw/jni/jni_gl_frame.h
ca/filterfw/native/core/gl_frame.cpp
ca/filterfw/native/core/gl_frame.h
347285f59e4aa7a062f67c4ae3a854cbdacb6378 20-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 5049371 Metadata for decode to PCM buffer queue

When decoding a URI or FD with OpenSL ES to a PCM buffer queue,
you cannot rely on the information given by the extractor, or
the OMXCodec before the latter has decoded one buffer.

The fix consists in two parts:
1/ where to retrieve the PCM format from:
the information first retrieved from the extractor if available,
but then overwritten by the OMXCodec values as soon as it
issues INFO_FORMAT_CHANGED
2/ when can the application retrieve the information:
the information is available when the first buffer of decoded
data is returned to the application via the buffer queue
callback. The test app is updated to reflect this, and verify
that the query can safely happen during the callback.

Change-Id: Ic034c7ff9412c94e9df2aaa3c1d61e9d3bf507d9
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
a935c0d2759dc11fc60e56d0b2751e8eaa0fac74 20-Jul-2011 Marius Renn <renn@google.com> Better error checking on GLFrames.

Also includes another bugfix when switching between surfaces.

Change-Id: Ieb1ccc59dd4d1bffb92a766372238799f7ba7cfe
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/jni/jni_gl_environment.cpp
ca/filterfw/jni/jni_gl_environment.h
ca/filterfw/native/core/gl_env.cpp
ca/filterfw/native/core/gl_env.h
e0ad86897844e0bc87e5409bbe3c0079d30f487d 19-Jul-2011 Marius Renn <renn@google.com> Bugfix for GL crashes when switching between surfaces.

Change-Id: Ia8c9b2ae65bb525ec6e2bd19befacf12f1c24d51
ca/filterfw/native/core/gl_env.cpp
ca/filterfw/native/core/gl_env.h
e2cafca8cf49ae3793eb87cf445a835b1b8a221b 19-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5044578 part 2

That last fix introduced a regression; one assert no longer true
found during more testing.

Change-Id: I4c3f8d6f7158fc364473606d1c8f78fe81fbb7e5
ilhelm/src/ThreadPool.c
b2052cfccffa54e3785d289e379041ed2df328a5 19-Jul-2011 Glenn Kasten <gkasten@google.com> Re-generate tables and fix includes

Change-Id: I266810fc1c0c477e997b39478b9e77694f9fc49b
ilhelm/src/autogen/IID_to_MPH.c
ilhelm/src/autogen/MPH_to_Engine.h
ilhelm/tools/hashgen/frag1.c
ilhelm/tools/hashgen/frag2.c
ilhelm/tools/hashgen/part1.c
a6c5e52ded343b557152156c33d33a10d29bf6f1 19-Jul-2011 Glenn Kasten <gkasten@google.com> Use the documented header filenames

Both Khronos and we say to use < > in our docs

Change-Id: Ibf1d2b83036582a605aa6b9043210c89a4eb0e1e
ilhelm/src/OpenSLES_IID.c
ilhelm/src/handlers.c
ilhelm/src/sles_allinclusive.h
ilhelm/src/ut/OpenSLESUT.c
ilhelm/src/ut/slesutResult.c
ilhelm/tests/automated/BufferQueue_test.cpp
ilhelm/tests/examples/Android.mk
ilhelm/tests/examples/slesTestBassBoostPath.cpp
ilhelm/tests/examples/slesTestEffectCapabilities.cpp
ilhelm/tests/examples/slesTestEqFdPath.cpp
ilhelm/tests/examples/slesTestEqOutputPath.cpp
ilhelm/tests/examples/slesTestFeedback.cpp
ilhelm/tests/examples/slesTestPlayFdPath.cpp
ilhelm/tests/examples/slesTestRecBuffQueue.cpp
ilhelm/tests/examples/slesTestSawtoothBufferQueue.cpp
ilhelm/tests/examples/slesTestSendToPresetReverb.cpp
ilhelm/tests/examples/slesTestVirtualizerPath.cpp
ilhelm/tests/examples/xaVideoDecoderCapabilities.cpp
ilhelm/tests/listening/seekTorture.c
ilhelm/tests/listening/slesTest_playMuteSolo.cpp
ilhelm/tests/mimeUri/slesTestGetPositionUri.cpp
ilhelm/tests/mimeUri/slesTestLoopUri.cpp
ilhelm/tests/mimeUri/slesTestManyPlayers.cpp
ilhelm/tests/mimeUri/slesTestPlayStreamType.cpp
ilhelm/tests/mimeUri/slesTestPlayUri.cpp
ilhelm/tests/mimeUri/slesTestPlayUri2.cpp
ilhelm/tests/mimeUri/slesTestSlowDownUri.cpp
ilhelm/tests/mimeUri/slesTest_playStates.cpp
ilhelm/tests/mimeUri_test.cpp
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/sandbox/configbq.c
ilhelm/tests/sandbox/dim.c
ilhelm/tests/sandbox/dual.c
ilhelm/tests/sandbox/engine.c
ilhelm/tests/sandbox/intbufq.c
ilhelm/tests/sandbox/monkey.c
ilhelm/tests/sandbox/multiplay.c
ilhelm/tests/sandbox/multithread.c
ilhelm/tests/sandbox/object.c
ilhelm/tests/sandbox/outputmix.c
ilhelm/tests/sandbox/playbq.c
ilhelm/tests/sandbox/reverb.c
ilhelm/tests/sandbox/srcsink.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
ilhelm/tests/sandbox/urimime.c
ilhelm/tests/sandbox/xa.c
68f47c518f76d9746a0e50a760574a6bfddf2549 19-Jul-2011 Glenn Kasten <gkasten@google.com> Reduce logs

Change-Id: I82c8a66886bd3b853fac88594370545ed23a0400
ilhelm/src/android/VideoCodec_to_android.cpp
ilhelm/src/itf/IVideoDecoderCapabilities.cpp
197ae56e3320896a4cdc879f0b6012463bcbfe9b 19-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 5044578 Fix race in engine destroy on uni

On uniprocessor, the main thread reached Engine::Destroy before the
worker threads had even started, so they did not see the shutdown.

On SMP, the worker threads were started (and blocked), so it was OK.

This new code also has the advantage of shutting down quicker
if there are pending callback requests in the queue.

Change-Id: Iff8cca042ebffe48ce7cc5d798e7b3b9911fb64b
ilhelm/src/ThreadPool.c
33c8006169faa725ef22fd074b8365c63a300d55 19-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Reduce logging"
9db9d7310e1e75e61bc45205ab3bf8b47267981b 19-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Implement XAVideoDecoderCapabilitiesItf"
bbaef0633cc7e9509e462c65d071d76e2857ffe9 19-Jul-2011 Glenn Kasten <gkasten@google.com> Reduce logging

Change-Id: I71c5e016147002fa84a56fc703da52e7b5c8417a
ilhelm/src/android/android_GenericMediaPlayer.cpp
99ed92c633a81aa5da8cb0655bc0f19eac28acc3 19-Jul-2011 Marius Renn <renn@google.com> Merge "SurfaceView fixes and clean-up."
2cb5ea49419533c3c32ca1901600d0655335c333 19-Jul-2011 Eddy Talvala <etalvala@google.com> Merge "Modified how MediaSource filter handles URL and Asset objects."
2edbd39245713e14f4210f5eec3bce989eadc596 18-Jul-2011 Glenn Kasten <gkasten@google.com> Fix newline

Change-Id: Id06193de5ba82bebe36515c0ca18702b3a5c3222
ilhelm/tests/examples/slesTestSendToPresetReverb.cpp
b6ce251c4b009003822ddf0323c11b4a5e74eeb2 13-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Implement XAVideoDecoderCapabilitiesItf

Add support for the OpenMAX AL XAVideoDecoderCapabilitiesItf
engine interface.

Implement the Android support of this interface in
VideoCodec_to_android.*. This functionality relies
on OMXCodec::QueryCodecs() feature, and does only
expose hardware codec capabilities (see full note in
VideoCodec_to_android.h).

Add sample code to list the platform's video decoders
and their profile / level combinations.

Change-Id: Iff6a42542c1db67ca1dcf539449ca96aa5944f6d
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/src/Android.mk
ilhelm/src/MPH_to.c
ilhelm/src/android/VideoCodec_to_android.cpp
ilhelm/src/android/VideoCodec_to_android.h
ilhelm/src/classes.c
ilhelm/src/classes.h
ilhelm/src/devices.c
ilhelm/src/devices.h
ilhelm/src/itf/IVideoDecoderCapabilities.cpp
ilhelm/src/itfstruct.h
ilhelm/src/sles.c
ilhelm/tests/examples/Android.mk
ilhelm/tests/examples/xaVideoDecoderCapabilities.cpp
8bdaff4e029bfac893ea652702e4e685130f28e9 18-Jul-2011 Marius Renn <renn@google.com> SurfaceView fixes and clean-up.

Also adds support for setting program boolean values.

Change-Id: I4c3555656f06b2a64ad87e41c69b9d27d5786e8e
ca/filterfw/java/android/filterfw/core/FilterSurfaceRenderer.java
ca/filterfw/java/android/filterfw/core/FilterSurfaceView.java
ca/filterfw/jni/jni_util.cpp
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/SurfaceTextureTarget.java
bf2a22cbd0653d0c6206a4eb963a67b7b4090a15 18-Jul-2011 Marius Renn <renn@google.com> Merge "Fixes to GL related classes."
2dfe9bbf05b260944ef5fa42aa5dfd2fd312aba1 15-Jul-2011 Christine Chen <christinech@google.com> Modified how MediaSource filter handles URL and Asset objects.

Added new FieldPort to specify the type of objects.
MediaSource now chooses the object to play based on the FieldPort sourceIsUrl.
And it no longer chooses Asset objects over URL when Asset objects are not null.

Change-Id: I3b172e63321b7cabde04185e8f558ad0968c4f8f
ca/filterpacks/videosrc/java/MediaSource.java
511360e61650864ea22a171159efe073c80d0cdb 18-Jul-2011 Marius Renn <renn@google.com> Fixes to GL related classes.

Patch: Java keeps reference to GLEnvironment to make sure it does not
get deallocated before all its objects are deallocated.

Change-Id: Ic3dffb84b2592cafc4df27331f63a44c221b19bd
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/basefilters/RetargetFilter.java
ca/filterfw/java/android/filterfw/core/FilterContext.java
ca/filterfw/java/android/filterfw/core/FilterPort.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/FrameManager.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/InputPort.java
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/StreamPort.java
ca/filterfw/jni/jni_gl_environment.cpp
ca/filterfw/jni/jni_gl_environment.h
ca/filterfw/jni/jni_gl_frame.cpp
ca/filterfw/jni/jni_gl_frame.h
ca/filterfw/jni/jni_shader_program.cpp
ca/filterfw/jni/jni_shader_program.h
ca/filterfw/native/core/gl_env.cpp
ca/filterfw/native/core/gl_env.h
ca/filterfw/native/core/gl_frame.cpp
ca/filterfw/native/core/gl_frame.h
ca/filterfw/native/core/shader_program.cpp
ca/filterfw/native/core/shader_program.h
ca/filterpacks/imageproc/java/AlphaBlendFilter.java
ca/filterpacks/imageproc/java/BlendFilter.java
ca/filterpacks/imageproc/java/BrightnessFilter.java
ca/filterpacks/imageproc/java/ContrastFilter.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/ImageCombineFilter.java
ca/filterpacks/imageproc/java/Invert.java
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/SimpleImageFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/ToPackedGrayFilter.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
ca/filterpacks/videosrc/java/SurfaceTextureTarget.java
8fa5a88bee4e17636f6f3877cc6705a80fbf986f 18-Jul-2011 Wei Hua <whua@google.com> Disable the timing in the filter framework.

Change-Id: Ib509cac0fd371bfa2282c30333a0ac2f9758bdfc
ca/filterfw/java/android/filterfw/core/StopWatchMap.java
2dd3e4127d925ab99d12bd2421c5d831f8a26101 15-Jul-2011 Jean-Baptiste Queru <jbq@google.com> am 91a9a6b1: Merge 94849a18

* commit '91a9a6b1be0a58b3d2d3865001c0f54a4f02b550':
opensles: fix 86 compilation.
91a9a6b1be0a58b3d2d3865001c0f54a4f02b550 15-Jul-2011 Jean-Baptiste Queru <jbq@google.com> Merge 94849a18

Change-Id: Ib547f2729a2f3aab6a595680c8e042aa6a8d1342
48189dec808108f392000edbdc90bbd6b1818671 15-Jul-2011 Marius Renn <renn@google.com> Filter cleanup and inclusion of setting port wait flag.

Change-Id: I7e529d77667662cec07791fe2e2af46458bcd086
ca/filterfw/java/android/filterfw/core/Filter.java
4b7aa0db47d885d6cb8948442916a560f5e5162a 13-Jul-2011 Marius Renn <renn@google.com> Bugfix for setting null input values on filters.

Also added fix to free up Bitmaps in BitmapSource.

Change-Id: I32a9bf81a2acf2a2b3824b7d30ed37cfffa7d886
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/ProgramPort.java
ca/filterfw/java/android/filterfw/format/ObjectFormat.java
ca/filterpacks/imageproc/java/BitmapSource.java
ba00c6867bf4d22c6672401da46f5be19bd32569 15-Jul-2011 Wei Hua <whua@google.com> Merge "Graph and NativeProgram tearDown."
78aeeeeb47be2e03594492d66677da67e5b19378 14-Jul-2011 Andreas Huber <andih@google.com> Merge "NuHTTPDataSource.h is no more, get rid of this (redundant) include"
94849a185b6b5608681b604bbe112acfb5aa4443 14-Jul-2011 David 'Digit' Turner <digit@google.com> am 0dc351be: merge intel x86 patches into gingerbread branch

* commit '0dc351beb3357f71ef4a04c088eb69c38dd98d8d':
opensles: fix 86 compilation.
c64256d3d005329f36ea0d618ec5b5a6c8bab7d1 14-Jul-2011 Wei Hua <whua@google.com> Graph and NativeProgram tearDown.

Change-Id: Ieb3023fa76c60c506064435858fa052523674cea
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
2ef6234c708ff743e091c4572496aab996dfe416 13-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Move SurfaceTextureTarget to the correct package.

Change-Id: I85f1c5338fe57c4bfc66a513175f37358f70c04f
ca/filterpacks/videosrc/java/SurfaceTextureTarget.java
8dd704358d808382465666354fc891af59b21e18 08-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Add timestamp support to various filters in the mobile filter framework.

Change-Id: I433e61ef86f41234443fa9f5b71dd60b9cb5542b
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterpacks/imageproc/java/BitmapSource.java
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
ca/filterpacks/videosrc/java/SurfaceTextureTarget.java
5b9eb6d686c439545dafcc8e25e9e3747281c3de 07-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Add timestamp support into core mobile filter framework.

Timestamps are positive longs representing nanoseconds from some
starting point, the exact definition of which depends on the frame
source filter.

The base filter class will fill in a timestamp on all output frames
based on the first pulled input frame's timestamp, if the filter
process() method doesn't set the output frame's timestamp itself.

Programs should get timestamps passed to them using setHostValue().

Change-Id: I89f73903f7c36fd8e01d5d1a8c49c53063f216bb
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/jni/jni_gl_environment.cpp
ca/filterfw/jni/jni_gl_environment.h
ca/filterfw/native/core/gl_env.cpp
ca/filterfw/native/core/gl_env.h
5ffe429fadec328c645c8721ca35b52ed7a2d10d 14-Jul-2011 Andreas Huber <andih@google.com> NuHTTPDataSource.h is no more, get rid of this (redundant) include

Change-Id: I893738d1aa1e91300c966a5ac3a7cc3ce1202152
ilhelm/src/android/android_AudioSfDecoder.h
d6dc06b2ba19d351114be579d4f9312ea51e8c19 07-Jul-2011 Eric Laurent <elaurent@google.com> Header file for audio effects config file parser

Added header file with definitions for parsing audio effects
configuration file (audio_effects.conf).

Change-Id: Id0b29102020cdf6c228bdabc0088d1111f296760
udio_effects/include/audio_effects/audio_effects_conf.h
ba2ecfe39ee1aed20db9424d8e5727f41c6c2d57 13-Jul-2011 Marius Renn <renn@google.com> Revert change for NativeFrame setInts / getInts. Some programs depend on the original behavior.

Change-Id: Idb9de98876e63b74be919281e5a2a1c93d25c531
ca/filterfw/jni/jni_gl_frame.cpp
6ef0cd56bf3cf15616b117e0063ded8c5fbc6e30 13-Jul-2011 Marius Renn <renn@google.com> Merge "Many bugfixes and enhancements."
17f21194438a267bb3d0677a413a025f9e1c5070 13-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Async callback queue updates, applied to XAStreamInformationItf"
b1af3dc1062b74d5b47d9c81a037d99ed1dc5ef8 12-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Async callback queue updates, applied to XAStreamInformationItf

Updated the asynchronous callback queue system to support 'piipp'
callback signatures.

Applied this update to make the StreamInformation property change
event notification asynchronous.

Made the XA_PLAYEVENT_HEADATEND also use the callback queue.

Change-Id: I6fd8dee5eefa1d09006661f69de302a8b7fff0f5
ilhelm/src/ThreadPool.c
ilhelm/src/ThreadPool.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/sles_allinclusive.h
85ea818ac1e0f14ef81962bba97149e66092ac44 12-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fix AsyncRunner setGraph to use correct running test."
489c240d3ae33e83dc62ea6f3cc864e47c0e2e3b 12-Jul-2011 Marius Renn <renn@google.com> Many bugfixes and enhancements.

- FieldPort bugfixes when connecting to other filters.
- Added two new filterpacks: numeric and performance.
- Added new type-checking modes.
- CachedFrameManager now drops oldest frames first.
- RoundRobinScheduler is now default scheduler.
- Added method to flush all frames from a graph.
- FrameFormat fixes.
- Filter fixes and optimizations.

Change-Id: I8b671e5e65129af7b6a4226bd9dee2f48a6fcb52
ca/Docs.mk
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/FilterPort.java
ca/filterfw/java/android/filterfw/core/FinalPort.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/FrameManager.java
ca/filterfw/java/android/filterfw/core/InputPort.java
ca/filterfw/java/android/filterfw/core/OutputPort.java
ca/filterfw/java/android/filterfw/core/ProgramPort.java
ca/filterfw/java/android/filterfw/core/RoundRobinScheduler.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/StreamPort.java
ca/filterfw/java/android/filterfw/format/ObjectFormat.java
ca/filterfw/native/core/gl_frame.cpp
ca/filterpacks/imageproc/java/BitmapSource.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/native/brightness.c
ca/filterpacks/numeric/java/SinWaveFilter.java
ca/filterpacks/numeric/java/package-info.java
ca/filterpacks/performance/java/Throughput.java
ca/filterpacks/performance/java/ThroughputFilter.java
ca/filterpacks/performance/java/package-info.java
e90027ae6eac36ed58b94b5592e3c42727439751 12-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Remove the simulator target from all makefiles. Bug: 5010576"
8f9ec84a94348fa864a0e109b31ae23bf3462309 12-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Fix AsyncRunner setGraph to use correct running test.

Change-Id: I90658616f238d22b2f262ba15d1fb68336715917
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
121c031b0087ac91d10d445f668c03093b729795 12-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Changes to filter framework callback handling."
a1fdaf1cf9d18610465afbc87f0359ab2f696994 12-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Implement XAPlayItf::GetPosition on MediaPlayer"
c6941c3f417cc80983f2a4d84688bf3a15af0ac0 12-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Implement XAPlayItf::GetPosition on MediaPlayer

The play interface was only in place for routing calls to an
AudioPlayer in OpenSL ES, not in OpenMAX AL for a MediaPlayer.

Change-Id: Icf514be428396264252874faf1060c76ddee9545
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/itf/IPlay.c
ec1d28f22a795b67c4649c656d0fafdf2dac4485 12-Jul-2011 Jeff Brown <jeffbrown@google.com> Remove the simulator target from all makefiles.
Bug: 5010576

Change-Id: I59e3c37c05c1114648172d9aba7abf035986bede
ca/filterfw/native/libfilterfw.mk
ilhelm/src/Android.mk
ilhelm/src/itf/IAndroidEffect.cpp
ilhelm/tests/Android.mk
ilhelm/tests/automated/Android.mk
2226f1cb514e571a1fec4604bd6338bab7a0686e 11-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Changes to filter framework callback handling.

- Rework CallbackFilter to be able to call to UI thread directly.
- Remove UI passthrough behavior in AsyncRunner in light of the above.
- In AsyncRunner, make sure graph done callback can restart the graph.

Change-Id: I04b7655a98974292f6d640530296e0c7569ba050
ca/filterfw/java/android/filterfw/basefilters/CallbackFilter.java
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
7f6ec8dc85ac638e248dc5c463820966247e4fd5 12-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Defer SL_PLAYEVENT_HEADATEND to avoid deadlock"
8932cdb70f022d0c7845628cac9c36192ee8c234 12-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "ThreadPool callbacks provide more parameters"
38602f33e90460cb0611e3ab4d663fe54a54312a 12-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Add --always-on option for effects tests"
4d64e7d0abff40010796dbf199f6bc935690afa1 05-Jul-2011 Eric Laurent <elaurent@google.com> Added audio pre processing headers

Added headers for AGC, AEC and NS audio pre processing APIs.

Change-Id: Ie0053e2e6276b0d97dc76450bfef62b6eff8f3dd
udio_effects/include/audio_effects/effect_aec.h
udio_effects/include/audio_effects/effect_agc.h
udio_effects/include/audio_effects/effect_ns.h
e3f866849da11bb2da4c9f4fa88afcb9addd47be 10-Jul-2011 Glenn Kasten <gkasten@google.com> Defer SL_PLAYEVENT_HEADATEND to avoid deadlock

This is a first example, and if it works well then will
be implemented for other appropriate callbacks also.

Change-Id: Ieeab6b3498c74305e19a9d9c8ff497eff22243aa
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/sles_allinclusive.h
7fa30890cbbda9b685fbe9bbd58b8b30c6492211 10-Jul-2011 Glenn Kasten <gkasten@google.com> ThreadPool callbacks provide more parameters

Now allows up to two void * and two int parameters.

This will be needed by deferred application-level callbacks

Change-Id: Ie388169439b2e3ab95d053007bcdc674b875fa67
ilhelm/src/ThreadPool.c
ilhelm/src/ThreadPool.h
ilhelm/src/itf/IDynamicInterfaceManagement.c
ilhelm/src/itf/IObject.c
5bed00f16d39274473b90da20a1d0017a0626ab1 10-Jul-2011 Marius Renn <renn@google.com> Merge "Moving Contexts out of Filters and other bugfixes."
717f29ce3d99a1da47af61ef70488f5e7098c7c3 10-Jul-2011 Glenn Kasten <gkasten@google.com> Add --always-on option for effects tests

This will be used for CPU load measurements.
Also fix bug in duration calculation for reverb test.

Change-Id: Ia2f91fa7c3e564047378341d31e3f4bfcace5f98
ilhelm/tests/examples/slesTestEqFdPath.cpp
ilhelm/tests/examples/slesTestEqOutputPath.cpp
ilhelm/tests/examples/slesTestSendToPresetReverb.cpp
ilhelm/tests/examples/slesTestVirtualizerPath.cpp
1516360c74ab239a22082cf6aee7ab22325c70ab 10-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Enable ThreadPool for Android"
08852bb61e548795f405dd6419d371c1b4aef947 10-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Add --always-on option for bass boost test"
808668c7e5702b198ea82c8232792d5e35f92476 10-Jul-2011 Glenn Kasten <gkasten@google.com> Add --always-on option for bass boost test

This will be used for CPU load measurements

Change-Id: Ib8b15bd31d8fa5672ec69c6d2595e4590a700d53
ilhelm/tests/examples/slesTestBassBoostPath.cpp
408866d51e0b0e04b831639c6dcee75ae4aa1eb1 10-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Implement GetPosition for players playing from a URI/FD"
0122b8c2be10bfc2704c5c9b5642381cca2d574d 10-Jul-2011 Glenn Kasten <gkasten@google.com> Enable ThreadPool for Android

Change-Id: I7a836dbbd671ecd8ce363c48940b84a0a6c18dca
ilhelm/src/ThreadPool.h
1b3d049fdaa0dfb601e5b7f482e04e84d38d2f93 08-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Implement GetPosition for players playing from a URI/FD

AudioPlayer (OpenSL ES) and MediaPlayer (OpenMAX AL) that play
media from a URI or FD are implemented on top of an Android
MediaPlayer. This CL implements requesting the current position
from the underlying MediaPlayer object inside the event loop.
At this stage, GetPosition cannot be called from inside a
callback as the callback is made on the same thread that will
process the asynchronous part of the GetPosition implementation.
Add test app for GetPosition.

Change-Id: Ife768bc40e37fc60cc19f6ba84bbe6cb06cc6590
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.h
ilhelm/tests/mimeUri/Android.mk
ilhelm/tests/mimeUri/slesTestGetPositionUri.cpp
0dc351beb3357f71ef4a04c088eb69c38dd98d8d 08-Jul-2011 David 'Digit' Turner <digit@google.com> merge intel x86 patches into gingerbread branch
6f111cbb725eaf5720962f8b45bfcb9908a183b8 08-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Make it build again on non-Android"
262184714f14ddbff3b8d418091c687416d2a14a 08-Jul-2011 Marius Renn <renn@google.com> Moving Contexts out of Filters and other bugfixes.

Change-Id: I14ba6c5e9702d8a5629db1119fefbd7a83254d51
ca/filterfw/java/android/filterfw/basefilters/FileReadFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileWriteFilter.java
ca/filterfw/java/android/filterfw/basefilters/FrameSource.java
ca/filterfw/java/android/filterfw/basefilters/InputStreamSource.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/basefilters/OutputStreamTarget.java
ca/filterfw/java/android/filterfw/basefilters/StaticFrameFilter.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/jni/jni_gl_frame.cpp
ca/filterpacks/imageproc/java/BitmapSource.java
ca/filterpacks/imageproc/java/ImageDecoder.java
ca/filterpacks/imageproc/java/ImageEncoder.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ddc7df3da61550059753f36705ece59e0641efbf 08-Jul-2011 Ruei-sung Lin <rslin@google.com> Merge "optimize FisheyeFilter"
58087c95bb4c517df75ed3151da0ffe74cbd12c9 08-Jul-2011 Ruei-sung Lin <rslin@google.com> optimize FisheyeFilter

Change-Id: I4c0a81d1097324789443982e0783d850bb27e1b6

Conflicts:

mca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
49ed5d000dcde57d7c35e5a9c1164374a55e1f29 08-Jul-2011 Eric Laurent <elaurent@google.com> Merge "Moved and renamed effect API header files"
96309256bf532b3ce5ad706d7eb60b1dd70bf4b3 17-Jun-2011 Eric Laurent <elaurent@google.com> Moved and renamed effect API header files

Moved specific effect header files to
system/media/audio_effects/include/audio_effects and renamed
to lower case (effect_xxx.h).

Change-Id: I8e8f6e3851f12ae8bb380fa714abe26da06d3b58
udio_effects/include/audio_effects/effect_bassboost.h
udio_effects/include/audio_effects/effect_environmentalreverb.h
udio_effects/include/audio_effects/effect_equalizer.h
udio_effects/include/audio_effects/effect_presetreverb.h
udio_effects/include/audio_effects/effect_virtualizer.h
udio_effects/include/audio_effects/effect_visualizer.h
ilhelm/src/Android.mk
ilhelm/src/android/android_Effect.cpp
ilhelm/src/itf/IBassBoost.c
ilhelm/src/itf/IEnvironmentalReverb.c
ilhelm/src/itf/IEqualizer.c
ilhelm/src/itf/IVirtualizer.c
156db48484793c2ce24f9ccd3cefe6e5f9f0b3fe 07-Jul-2011 Glenn Kasten <gkasten@google.com> Make it build again on non-Android

Fix warning about unused variable.
Remove spurious include.
Fix warning about printf format type mismatch.

Change-Id: Ibeeb33a55175e0ec1e5210211d8844df0bbe3bca
ilhelm/src/desktop/SndFile.c
ilhelm/src/itf/IEngine.c
ilhelm/src/objects/CMediaPlayer.c
bd9361b6b13674ebac5401156c19f3eca38fc27e 08-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Rename ANDROID_UNKNOWN_* to UNKNOWN_*"
448ff92dcdd039bec1b7df40636a1f7de8ae9cbf 07-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Fix NPE when pDataLocator->mURI.URI is NULL"
463a7641944e4a3613f5d76aa8450070ef56b9ff 07-Jul-2011 Glenn Kasten <gkasten@google.com> Rename ANDROID_UNKNOWN_* to UNKNOWN_*

Change-Id: I0d92b7d943690d9af7e08c400471f8b474728bff
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/classes.h
ilhelm/src/desktop/SndFile.c
ilhelm/src/itf/IEngine.c
ilhelm/src/sles_allinclusive.h
de1b24ce6a70e0f4bb37c02daa2934f161e8fb54 07-Jul-2011 Glenn Kasten <gkasten@google.com> Fix NPE when pDataLocator->mURI.URI is NULL

Don't call strlen on a NULL pointer

Change-Id: I632e71287695dc2762e56c1379be4108014107e2
ilhelm/src/data.c
270ae8bb603f427ce606d0e8acc87315261ef9e9 07-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Rename all C++ source files to conform with typical Android style.

Change-Id: Ie0dabd8e0fb06183edfaecda09617b24c4663975
ca/filterfw/jni/Android.mk
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.cpp
ca/filterfw/jni/jni_gl_frame.cc
ca/filterfw/jni/jni_gl_frame.cpp
ca/filterfw/jni/jni_init.cc
ca/filterfw/jni/jni_init.cpp
ca/filterfw/jni/jni_native_buffer.cc
ca/filterfw/jni/jni_native_buffer.cpp
ca/filterfw/jni/jni_native_frame.cc
ca/filterfw/jni/jni_native_frame.cpp
ca/filterfw/jni/jni_native_program.cc
ca/filterfw/jni/jni_native_program.cpp
ca/filterfw/jni/jni_shader_program.cc
ca/filterfw/jni/jni_shader_program.cpp
ca/filterfw/jni/jni_util.cc
ca/filterfw/jni/jni_util.cpp
ca/filterfw/jni/jni_vertex_frame.cc
ca/filterfw/jni/jni_vertex_frame.cpp
ca/filterfw/native/Android.mk
ca/filterfw/native/core/geometry.cc
ca/filterfw/native/core/geometry.cpp
ca/filterfw/native/core/gl_env.cc
ca/filterfw/native/core/gl_env.cpp
ca/filterfw/native/core/gl_frame.cc
ca/filterfw/native/core/gl_frame.cpp
ca/filterfw/native/core/native_frame.cc
ca/filterfw/native/core/native_frame.cpp
ca/filterfw/native/core/native_program.cc
ca/filterfw/native/core/native_program.cpp
ca/filterfw/native/core/shader_program.cc
ca/filterfw/native/core/shader_program.cpp
ca/filterfw/native/core/statistics.cc
ca/filterfw/native/core/statistics.cpp
ca/filterfw/native/core/time_util.cc
ca/filterfw/native/core/time_util.cpp
ca/filterfw/native/core/value.cc
ca/filterfw/native/core/value.cpp
ca/filterfw/native/core/vertex_frame.cc
ca/filterfw/native/core/vertex_frame.cpp
e5dd7efd53c27e3a19ba62bc804bee095f0d33fe 07-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Fixes to Scheduler behavior in the mobile filter framework."
56d72f3683268937c92786b35532729e1e54cf80 07-Jul-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix metadata value size check

A bug was introduced during the review of the SLMetadataExtractionItf
interface implementation where the value size was improperly
compared against the size given by the application.

Change-Id: Iae1359e84a410e3fec53bd65e0fba9cc97fce08a
ilhelm/src/android/android_AudioSfDecoder.cpp
b62d20a86e86379bb7d5c92e49d75c2e00057517 06-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Fixes to Scheduler behavior in the mobile filter framework.

- Move reset() out of base Scheduler constructor
- Add reset() to start of run
- Add reset() to close()
- Move pre-run checks around to have null checks before use
- Add better exception throwing from invoking Scheduler constructor

Change-Id: I673b2cd9fcfa7b4ad70b3296692731ac79bda55f
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/OneShotScheduler.java
ca/filterfw/java/android/filterfw/core/Scheduler.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
17b672fd95a037fefb3e06c2f214551a45a15954 01-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Add a SurfaceTextureTarget filter.

The SurfaceTextureTarget filter sends output into a SurfaceTexture
object passed into it.

Change-Id: Id3c7d779ff2015e1a813b825a2e68b4e3200a438
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.h
ca/filterpacks/videosrc/java/SurfaceTextureTarget.java
a718cb84695939684101ceb70b05b4da1f96c63b 04-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Several small mobile filter framework bugfixes/improvements.

- Add close() to GraphRunner to allow filters to be closed after running, since
not all runs will result in filters being closed automatically.

- Fix to FrameFormat compatability checks

- Fix to SimpleImageFilter when no program parameters exist

- Add default value to ToGrayFilter output channel count.

Change-Id: Id63623a100aef68148d2a74e7043fac8fb716565
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterpacks/imageproc/java/ImageCombineFilter.java
ca/filterpacks/imageproc/java/SimpleImageFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
b9f2b241a07c9b35a14d220cc88f2f25109657f8 06-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4980997 Fix the AudioTrack start deadlock"
f9ffc783f43d3092223a1827fec1b95490e3d743 04-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Add Filter.isAvailable() to test if a given filter is visible to the app.

Change-Id: I7ebf2dbe92916ba035f1c49480e3d635f4d3262d
ca/filterfw/java/android/filterfw/core/Filter.java
23d176951b080cc4a2828cb754c8141647ca6a62 03-Jul-2011 Eddy Talvala <etalvala@google.com> Merge "SyncRunner now respects the state of the GLEnvironment."
4ece4463c0a3a0e3cc834c216c8a5c7be508fc3e 03-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Bug fix to OneShotRunner, logging improvements."
0c60e0ab6013df46586bcb6c26f48a850f4c7115 02-Jul-2011 Eino-Ville Talvala <etalvala@google.com> Bug fix to OneShotRunner, logging improvements.

Change-Id: Ifcbd4fa0147fdc82bb887525fa1d5ccc8d803550
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterFactory.java
ca/filterfw/java/android/filterfw/core/LogMCA.java
ca/filterfw/java/android/filterfw/core/OneShotScheduler.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
3fe79927824090988e0123781bec44f8a31779f8 02-Jul-2011 Marius Renn <renn@google.com> SyncRunner now respects the state of the GLEnvironment.

Change-Id: If07a0385ed573143bd0946453b7a9a3f881d967c
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.h
9ae30619df971c801dc780ef8b4457633400bcb3 02-Jul-2011 Marius Renn <renn@google.com> Merge "Bugfixes to image filters."
16c2d40d344a19b7d85777b5c71c1102db48769e 02-Jul-2011 Marius Renn <renn@google.com> Bugfixes to image filters.

Change-Id: I03e124132bdbfbf5aac0ad527c6d9e89fb6130e3
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/ImageCombineFilter.java
ca/filterpacks/imageproc/java/SimpleImageFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
d5567345ad06b847be5a2322f988442b0519ffe1 30-Jun-2011 Glenn Kasten <gkasten@google.com> Bug 4980997 Fix the AudioTrack start deadlock

Details:
- Added AudioTrackProxy, a RefBase proxy for AudioTrack
- Call AudioTrack::start() after unlock

Change-Id: Ib1a05ee57f78432eb4c9d3a5bd68dd31a78d6e3e
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/AudioTrackProxy.h
ilhelm/src/android/android_Effect.cpp
ilhelm/src/classes.h
ilhelm/src/desktop/SndFile.c
ilhelm/src/itf/IAndroidEffect.cpp
ilhelm/src/itf/IEngine.c
ilhelm/src/locks.c
230c8ee14475b32658ff631f98ae105ba943c18f 20-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Change filter factory function to use the context class loader.

Java code in the framework libraries uses the bootstrap class loader
by default. This prevents loading classes that are private to an
application, such as private filters.

The context class loader makes it possible to load all classes visible
to the application.

Change-Id: Idb30895ae2ce6ac01cf190afba4465c2ac17eaee
ca/filterfw/java/android/filterfw/core/FilterFactory.java
9b393be2b4b7e70abe38237ba3eda3dc009d6230 20-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Rework mobile filter framework build rules to support docs/API inclusion.

- Merge all Java compilation (core + filterpacks) into a single
target.

- Add Docs.mk to specify the Java source for both building and docs.

- Remove package check in FilterFactory for now due to VM bug,
classloader issues.

- Minor cosmetic fix to MediaSource

Change-Id: I250f679854bdd7d7e0090f2bd1661dd3e9a88f5d
leanSpec.mk
ca/Android.mk
ca/Docs.mk
ca/filterfw/Android.mk
ca/filterfw/java/Android.mk
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/core/FilterFactory.java
ca/filterpacks/imageproc/Android.mk
ca/filterpacks/text/Android.mk
ca/filterpacks/ui/Android.mk
ca/filterpacks/videosrc/Android.mk
ca/filterpacks/videosrc/java/MediaSource.java
e972a60eb84a6a298b833ff77f01070a341b2e79 01-Jul-2011 Marius Renn <renn@google.com> Merge "Add repeatFrame option to GLTextureSource."
b0fb3f2ceafd8de47fdbc197616af80d12feebab 01-Jul-2011 Marius Renn <renn@google.com> Merge "Minor refactoring to GraphRunners, so that graphs can be partially run."
6fec370b158f3933d519b3a7f9fd0678707329ed 01-Jul-2011 Wei Hua <whua@google.com> Merge "Added One shot scheduler."
2f4eda1352e5f23bc7d9e5f945c80e5c8a3acaaf 01-Jul-2011 Wei Hua <whua@google.com> Added One shot scheduler.

Change-Id: Ic3ff6f70f55a1ad4f4baf3a45cd1e8f4e494a561
ca/filterfw/java/android/filterfw/core/OneShotScheduler.java
ca/filterfw/java/android/filterfw/core/RoundRobinScheduler.java
e58b9737656fb5d0c7b9dbefc333499c8878077d 01-Jul-2011 Marius Renn <renn@google.com> Add repeatFrame option to GLTextureSource.

Change-Id: I02c6dbd0056976bcddc88632615f7dad0e330f99
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
41ce6c2402fd9a4eed0236e22dced9d5ef761f4a 01-Jul-2011 Marius Renn <renn@google.com> Minor refactoring to GraphRunners, so that graphs can be partially run.

Change-Id: Ife07d451bee5238774a16c763c02ada7f949de6d
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
e9cce07cffbaf34f5493a9c94ea3556e5b8ed300 01-Jul-2011 Marius Renn <renn@google.com> Merge "FrameFormat Clean-up."
e4c7423f1bbcb79ba9317f09d0da7038ea6bb0b5 30-Jun-2011 Marius Renn <renn@google.com> FrameFormat Clean-up.

Change-Id: Ie993ea45a0d4647c58182a69360a11aa1f545e4c
ca/filterfw/java/android/filterfw/basefilters/FileReadFilter.java
ca/filterfw/java/android/filterfw/format/PrimitiveFormat.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
47a6896582866f0ed834c87b95e9a40ed164baac 30-Jun-2011 Wei Hua <whua@google.com> Add Keep Aspect Ratio Option for the resizing.

Change-Id: I05b22375476f03c28d494f4a0f1f9f70b721535c
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/ToPackedGrayFilter.java
23588e06579c73cde88d2187dbbb27b5aa3707e2 30-Jun-2011 Marius Renn <renn@google.com> Merge "Removed dependencies of native filter program implementations on MFF headers."
986cf5834e7e4e07a5733b6d6d8cf31f2a7bf548 30-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix issues in GenericPlayer destruction"
1209c173a13a62d0f7d9f1d605e3665a5818fa90 28-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix issues in GenericPlayer destruction

Added a preDestroy() mechanism for the subclasses of
GenericPlayer.
Added a lock around the update and use of the callback
GenericPlayer is using for notifications to the
OpenSL ES framework. This prevents notifications after
the GenericPlayer is flagged for destruction.
Added a lock to protect the update of the audio source
running state, so it doesn't get used after the
AudioSfDecoder is flagged for destruction.
Before stopping the audio source of an AudioSfDecoder
object, release the code buffer if necessary, to
ensure proper teardown of the audio source (OMXCodec)

Change-Id: I6cf08d169a6da622552dda5101dbc61e663ce6aa
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
cfda0a38d6f394724e0cbd831ec9bc71d951fc74 30-Jun-2011 Marius Renn <renn@google.com> Removed dependencies of native filter program implementations on MFF headers.

Fixed bug in GL activation handling.

Change-Id: I47e3e31f3cbc1b5cf53d55361b21e4b34d7b9727
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FrameManager.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/JavaFrame.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/java/android/filterfw/format/ObjectFormat.java
ca/filterfw/jni/jni_native_buffer.cc
ca/filterfw/jni/jni_native_buffer.h
ca/filterfw/jni/jni_native_frame.cc
ca/filterfw/jni/jni_native_program.cc
ca/filterfw/jni/jni_native_program.h
ca/filterfw/jni/jni_shader_program.h
ca/filterfw/jni/jni_util.h
ca/filterfw/native/Android.mk
ca/filterfw/native/core/native_program.cc
ca/filterfw/native/core/native_program.h
ca/filterfw/native/core/shader_program.h
ca/filterfw/native/core/value.cc
ca/filterfw/native/core/value.h
ca/filterfw/native/filter/native_buffer.h
ca/filterfw/native/filter/src/data_buffer.cc
ca/filterfw/native/filter/src/data_buffer.h
ca/filterfw/native/filter/src/native_buffer.cc
ca/filterfw/native/filter/src/value.cc
ca/filterfw/native/filter/value.h
ca/filterfw/native/filterfw_ndk.mk
ca/filterpacks/imageproc/Android.mk
ca/filterpacks/imageproc/native/brightness.c
ca/filterpacks/imageproc/native/contrast.c
ca/filterpacks/imageproc/native/invert.c
ca/filterpacks/imageproc/native/to_rgba.c
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/text/java/ToUpperCase.java
ca/filterpacks/videosrc/java/CameraSource.java
ca/structgen.py
702baa0c3964dd87e3dbcd5543f6b0c001a0df56 30-Jun-2011 Wei Hua <whua@google.com> Merge "Fixed the problem of binding texture without a texture created."
fb7c020acdd0fb38c9d2b6750d904b64cc78458d 30-Jun-2011 Wei Hua <whua@google.com> Fixed the problem of binding texture without a texture created.

Change-Id: I4693ad85258f4df4948b90dd272153c191c44693
ca/filterfw/native/core/gl_frame.cc
d8c101550ed4a1829aff07164da0d65615c4a88c 29-Jun-2011 Glenn Kasten <gkasten@google.com> Merge "Call AudioTrack start, stop, and pause when needed"
0145858a05d704e194ef3f7ac96d7804f08a362f 29-Jun-2011 Glenn Kasten <gkasten@google.com> Call AudioTrack start, stop, and pause when needed

These AudioTrack operations are relatively expensive Binder calls (and
will soon be even more expensive to fix a deadlock at AudioTrack::start),
and they were being called excessively. Now AudioTrack start, stop,
and pause are only called when there is an actual play state change.

Details:
- distinguish ATTR_TRANSPORT vs. ATTR_PLAY_STATE for audio players
- android_audioPlayer_setPlayState is only called when the play state changes
- handler_AudioPlayer_transport is only called for transport changes other than play state
- android_audioPlayer_setPlayState is always called with mutex locked
- since media player currently only handles play state, handler_MediaPlayer_transport
is still called for both ATTR_TRANSPORT and ATTR_PLAY_STATE
- since the handlers for ATTR_BQ_ENQUEUE and ATTR_ABQ_ENQUEUE are only called if in
state PLAYING, changed an "if" to an "assert"

Change-Id: Iee2968fd98d215885b7105053bb1604f962ea337
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/attr.h
ilhelm/src/handler_bodies.c
ilhelm/src/handlers.c
ilhelm/src/handlers.h
ilhelm/src/itf/IPlay.c
4408719344de617a4b3e29f3631768602a4779e1 29-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Hide all classes in the filter framework and filterpacks from API."
891da96e26e7be09e72c8a1f4600f68317b73aff 29-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix race condition when deleting an AudioPlayer"
1c19b75907edc6cabf2bdfa564e000ab9d84246c 28-Jun-2011 Wei Hua <whua@google.com> Merge "Added Random and RoundRobin Scheduler."
a3bfbe5389c6146abe318a7add3fa688d69bc01b 28-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Hide all classes in the filter framework and filterpacks from API.

Change-Id: Iea3c2e0e3a08c2a0c2ed0b3b2001860c3cd37c01
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/basefilters/CallbackFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileReadFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileWriteFilter.java
ca/filterfw/java/android/filterfw/basefilters/FrameBranch.java
ca/filterfw/java/android/filterfw/basefilters/FrameFetch.java
ca/filterfw/java/android/filterfw/basefilters/FrameStore.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureTarget.java
ca/filterfw/java/android/filterfw/basefilters/NullFilter.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/basefilters/RetargetFilter.java
ca/filterfw/java/android/filterfw/basefilters/StaticFrameFilter.java
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterContext.java
ca/filterfw/java/android/filterfw/core/FilterFactory.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/FilterPort.java
ca/filterfw/java/android/filterfw/core/FilterSurfaceRenderer.java
ca/filterfw/java/android/filterfw/core/FilterSurfaceView.java
ca/filterfw/java/android/filterfw/core/FinalPort.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/FrameManager.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/GenerateFieldPort.java
ca/filterfw/java/android/filterfw/core/GenerateFinalPort.java
ca/filterfw/java/android/filterfw/core/GenerateProgramPort.java
ca/filterfw/java/android/filterfw/core/GenerateProgramPorts.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/InputPort.java
ca/filterfw/java/android/filterfw/core/JavaFrame.java
ca/filterfw/java/android/filterfw/core/JavaProgram.java
ca/filterfw/java/android/filterfw/core/KeyValueMap.java
ca/filterfw/java/android/filterfw/core/LogMCA.java
ca/filterfw/java/android/filterfw/core/MutableFrameFormat.java
ca/filterfw/java/android/filterfw/core/NativeAllocatorTag.java
ca/filterfw/java/android/filterfw/core/NativeBuffer.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/OutputPort.java
ca/filterfw/java/android/filterfw/core/Program.java
ca/filterfw/java/android/filterfw/core/ProgramPort.java
ca/filterfw/java/android/filterfw/core/ProgramVariable.java
ca/filterfw/java/android/filterfw/core/ProtocolException.java
ca/filterfw/java/android/filterfw/core/Scheduler.java
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/SimpleScheduler.java
ca/filterfw/java/android/filterfw/core/StopWatchMap.java
ca/filterfw/java/android/filterfw/core/StreamPort.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/java/android/filterfw/core/package-info.java
ca/filterfw/java/android/filterfw/format/ImageFormat.java
ca/filterfw/java/android/filterfw/format/ObjectFormat.java
ca/filterfw/java/android/filterfw/format/package-info.java
ca/filterfw/java/android/filterfw/geometry/Point.java
ca/filterfw/java/android/filterfw/geometry/Quad.java
ca/filterfw/java/android/filterfw/geometry/Rectangle.java
ca/filterfw/java/android/filterfw/geometry/package-info.java
ca/filterfw/java/android/filterfw/io/GraphIOException.java
ca/filterfw/java/android/filterfw/io/GraphReader.java
ca/filterfw/java/android/filterfw/io/PatternScanner.java
ca/filterfw/java/android/filterfw/io/TextGraphReader.java
ca/filterfw/java/android/filterfw/io/package-info.java
ca/filterpacks/imageproc/java/AlphaBlendFilter.java
ca/filterpacks/imageproc/java/BlendFilter.java
ca/filterpacks/imageproc/java/BrightnessFilter.java
ca/filterpacks/imageproc/java/ContrastFilter.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/ImageCombineFilter.java
ca/filterpacks/imageproc/java/ImageDecoder.java
ca/filterpacks/imageproc/java/ImageEncoder.java
ca/filterpacks/imageproc/java/Invert.java
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/SimpleImageFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/ToPackedGrayFilter.java
ca/filterpacks/imageproc/java/ToRGBAFilter.java
ca/filterpacks/imageproc/java/ToRGBFilter.java
ca/filterpacks/imageproc/java/package-info.java
ca/filterpacks/text/java/StringLogger.java
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/text/java/ToUpperCase.java
ca/filterpacks/text/java/package-info.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/ui/java/package-info.java
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
ca/filterpacks/videosrc/java/package-info.java
e6f6234ed862310617521a9b891c841c7cf21aaa 28-Jun-2011 Wei Hua <whua@google.com> Added Random and RoundRobin Scheduler.

Change-Id: I03300714f66543784f3f8bee40d9865479127b77
ca/filterfw/java/android/filterfw/core/RandomScheduler.java
ca/filterfw/java/android/filterfw/core/RoundRobinScheduler.java
272648a4efd07fc308ec1622b3951537c2f2c63a 28-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix race condition when deleting an AudioPlayer

When deleting an AudioPlayer that is used as a PCM decoder,
there can be callback underway, for instance when trying to
delete a player just as the notification of its preparation
arrives.

The fix consists in:
- flagging all callback with the CallbackProtector
mechanism,
- only entering callback when it is valid to do so
- renaming AudioTrackProtector to CallbackProtector
as this mechanism is not exclusively used for the
AudioTrack callbacks.

Change-Id: I9336a75981de43f71a983c1300f3a0ff314ac1e0
ilhelm/src/Android.mk
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioTrackProtector.cpp
ilhelm/src/android/AudioTrackProtector.h
ilhelm/src/android/CallbackProtector.cpp
ilhelm/src/android/CallbackProtector.h
ilhelm/src/classes.h
ilhelm/src/itf/IEngine.c
035c00d7cbf1310ae5fcce4527718af61e54052a 28-Jun-2011 Marius Renn <renn@google.com> Merge "Renamed port classes to more intuitive names."
c5654a6190356d6058086ac48b7153e9b8e32de1 28-Jun-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4571308 Test video timestamps"
760518cf3f390986328e272aba88da46794361b1 27-Jun-2011 Glenn Kasten <gkasten@google.com> Bug 4571308 Test video timestamps

Change-Id: I4d1fe3b9e090fe014c45432a91ea43360213ee2e
ilhelm/tests/native-media/res/layout/main.xml
ilhelm/tests/native-media/res/values/strings.xml
ilhelm/tests/native-media/src/com/example/nativemedia/MyGLSurfaceView.java
ilhelm/tests/native-media/src/com/example/nativemedia/NativeMedia.java
f24dc0f733da39b32f15177871a79810d52e6212 28-Jun-2011 Marius Renn <renn@google.com> Renamed port classes to more intuitive names.

Ports are used internally only, so this does not change API.

Change-Id: I60a274ddd30bbb1f82d1b12980b6b95a07cb65ce
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/InputPort.java
ca/filterfw/java/android/filterfw/core/OutputPort.java
ca/filterfw/java/android/filterfw/core/SourcePort.java
ca/filterfw/java/android/filterfw/core/StreamPort.java
ca/filterfw/java/android/filterfw/core/TargetPort.java
edfc0941e7a9480d2bbc70e842015e6fa56a2c3f 27-Jun-2011 Eddy Talvala <etalvala@google.com> Original problem fixed.

Revert "Revert "Bugfix for Illegal SurfaceTexture reuse and GLEnvironment exception handling.""

This reverts commit 0a4de9e89040ad82df1e99b8fe2745d34e25826a
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.h
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
0a4de9e89040ad82df1e99b8fe2745d34e25826a 27-Jun-2011 Jean-Baptiste Queru <jbq@google.com> Revert "Bugfix for Illegal SurfaceTexture reuse and GLEnvironment exception handling."

This reverts commit 06b4f19b51c9e2a1efe10cf2ac37c407cddca907.
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.h
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
2ee68a8275051938e947d5c7a9570bcffaca7f71 27-Jun-2011 Marius Renn <renn@google.com> Merge "Bugfix for Illegal SurfaceTexture reuse and GLEnvironment exception handling."
09e4ac963ad5614ef2a61265c1b4f2fdb91e4c55 25-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix NPE in audio decoding"
5afa50bca331f7ac29002f97421abf276919f2d6 25-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix NPE in audio decoding

If the data source wasn't properly initialized, the corresponding
member field should be accessed.

Change-Id: I811827991078db4b8dc4278014f046361f06e1a2
ilhelm/src/android/android_AudioSfDecoder.cpp
06b4f19b51c9e2a1efe10cf2ac37c407cddca907 25-Jun-2011 Marius Renn <renn@google.com> Bugfix for Illegal SurfaceTexture reuse and GLEnvironment exception handling.

Change-Id: I4bb401766778e392800669f717e1344bc8a9c68d
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.h
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
36d5ca4ff1b8ba5c5b9937d46b03a7b41a8a8857 25-Jun-2011 Mike Dodd <mdodd@google.com> Use runtime detection to filter FilterPort logs.

Change-Id: I2ecb848dfe07d1f50b0c663c3dd8a665a7bad275
ca/filterfw/java/android/filterfw/core/FilterPort.java
57774b9e8ea96fa5088e68bac7a21465fa429b15 24-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Switch verbose logging in several places to use runtime detection.

Change-Id: I4abd4a38ee1dddb1aa6a5cd933a087a30bd5be49
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/CameraSource.java
8541cea20c74fdfe35a6c63c09459dd969292b7e 24-Jun-2011 Marius Renn <renn@google.com> Bugfix in opening outputs in Filter.

Change-Id: If8e6aaba27743970dfe8ace55ac1d5ecb2bf6fea
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
76f9fef4322f86842fda773a3753172878e311f7 24-Jun-2011 Marius Renn <renn@google.com> Bugfixes.

Change-Id: I45a596f7c4fb28d6883f398668a4cebeffaf4417
ca/filterfw/java/android/filterfw/basefilters/GLTextureTarget.java
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
99664102e9636f594809f8bd44a743073297cc73 24-Jun-2011 Rodrigo Carceroni <carceroni@google.com> Fix resize bug.

Change-Id: Ib4c2d1df8b4c94d6d39a3d8b6c7db77c010f5f15
ca/filterpacks/imageproc/java/ResizeFilter.java
5f9c5749f5fdeabd6c7d9320b2578fc3921e8f66 23-Jun-2011 Marius Renn <renn@google.com> Merge "Port + Parameter Unification and Type Check Refactoring."
21d0ac7403b836e32e2bdbdc8dc98f42b2dfa4e5 23-Jun-2011 Marius Renn <renn@google.com> Port + Parameter Unification and Type Check Refactoring.

Change-Id: Ie546431039058eb27f185a023ef8b18b533eaa12
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
ca/filterfw/java/android/filterfw/basefilters/CallbackFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileReadFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileWriteFilter.java
ca/filterfw/java/android/filterfw/basefilters/FrameBranch.java
ca/filterfw/java/android/filterfw/basefilters/FrameFetch.java
ca/filterfw/java/android/filterfw/basefilters/FrameStore.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureTarget.java
ca/filterfw/java/android/filterfw/basefilters/NullFilter.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/basefilters/RetargetFilter.java
ca/filterfw/java/android/filterfw/basefilters/StaticFrameFilter.java
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/FieldPort.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterConnection.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/FilterParameter.java
ca/filterfw/java/android/filterfw/core/FilterPort.java
ca/filterfw/java/android/filterfw/core/FilterSurfaceView.java
ca/filterfw/java/android/filterfw/core/FinalPort.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/FrameHandle.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/GenerateFieldPort.java
ca/filterfw/java/android/filterfw/core/GenerateFinalPort.java
ca/filterfw/java/android/filterfw/core/GenerateProgramPort.java
ca/filterfw/java/android/filterfw/core/GenerateProgramPorts.java
ca/filterfw/java/android/filterfw/core/InputPort.java
ca/filterfw/java/android/filterfw/core/JavaFrame.java
ca/filterfw/java/android/filterfw/core/KeyValueMap.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/OutputPort.java
ca/filterfw/java/android/filterfw/core/PortToPortConnection.java
ca/filterfw/java/android/filterfw/core/ProgramParameter.java
ca/filterfw/java/android/filterfw/core/ProgramParameters.java
ca/filterfw/java/android/filterfw/core/ProgramPort.java
ca/filterfw/java/android/filterfw/core/Protocol.java
ca/filterfw/java/android/filterfw/core/SourcePort.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/java/android/filterfw/core/TargetPort.java
ca/filterfw/java/android/filterfw/format/ImageFormat.java
ca/filterfw/java/android/filterfw/format/ObjectFormat.java
ca/filterfw/java/android/filterfw/io/TextGraphReader.java
ca/filterfw/native/core/shader_program.cc
ca/filterpacks/imageproc/java/AlphaBlendFilter.java
ca/filterpacks/imageproc/java/BlendFilter.java
ca/filterpacks/imageproc/java/BrightnessFilter.java
ca/filterpacks/imageproc/java/ContrastFilter.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/ImageCombineFilter.java
ca/filterpacks/imageproc/java/ImageDecoder.java
ca/filterpacks/imageproc/java/ImageEncoder.java
ca/filterpacks/imageproc/java/ImageFilter.java
ca/filterpacks/imageproc/java/Invert.java
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/SimpleImageFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/ToPackedGrayFilter.java
ca/filterpacks/imageproc/java/ToRGBAFilter.java
ca/filterpacks/imageproc/java/ToRGBFilter.java
ca/filterpacks/text/java/StringLogger.java
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/text/java/ToUpperCase.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
ce2330c787ed1756621c854c44138ac6b5b07d2d 23-Jun-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4606138"
c0e5a8d9d7e97742cce4a76d56e52a6ee9ed7bd3 22-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "OpenSL ES: additional features when decoding to PCM"
be91f6328a084475e1cf58b54b8b732e088940b5 16-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenSL ES: additional features when decoding to PCM

Support the following features useful when decoding a compressed
asset to PCM:
- GetDuration in SLPlayItf
- implemented SLMetadataExtractionItf on an AudioPlayer whose
data sink is a buffer queue (i.e. it's a decoder)
- added support for 6 new metadata keys that can be queried
through SLMetadataExtractionItf, which match the fields
of the SLDataFormat_PCM structure.
Updated the decode sample code to use these features: the
slesTestDecodeToBuffQueue app now displays:
- the number of channels
- the channel mask
- the sample size
- the container size
- the sample rate
- the format endianness

Change-Id: I3ca1e29828fd8c16c89da43a28df429c9cdef7af
ilhelm/src/Android.mk
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/OpenSLES_AndroidMetadata.h
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/classes.c
ilhelm/src/itf/IMetadataExtraction.c
ilhelm/src/sles.c
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
19568d126f5b73c4c17337e60d7fe337e7f7c61e 22-Jun-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Add set method to Point class"
911aed7a418560e7ae3f051b4c7e2d6149431b11 22-Jun-2011 Rodrigo Carceroni <carceroni@google.com> Add set method to Point class

Change-Id: I8ca425963ed1eeed22bf570fabfdc236927abd88
ca/filterfw/java/android/filterfw/geometry/Point.java
a8ec5b958b4b51322a106382103e5e029af225bf 20-Jun-2011 Glenn Kasten <gkasten@google.com> Merge "Better defaults and fix warnings"
7ccc9bc7f92277bebc1f13036e91278736d90993 18-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Update CameraSource filter parameter handling."
24455ce2cc781f52c2171d0b388314393d4f7111 17-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Update CameraSource filter parameter handling.

Now allows parameters to be set and read when the filter isn't
actively running.

Change-Id: Id35e0b1b7b89390560a37d89d073693ffdf74c81
ca/filterpacks/videosrc/java/CameraSource.java
e86c3ea218de70d0a3a18ac587a13ffd472cf567 16-Jun-2011 Wei Hua <whua@google.com> Remove mRunners in FilterContext.

Added missing @Override

Change-Id: Ief0b20b63195a1283dc93910c19767e87aea0fe4
ca/filterfw/java/android/filterfw/core/FilterContext.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/KeyValueMap.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
3478d7da05f7e0b1ef1d4e41cfd6db226eaa34a5 16-Jun-2011 Eric Laurent <elaurent@google.com> Merge "Revert "voice processing""
ee9a56f41ddc6874ec7977993717d7e6cde72b00 16-Jun-2011 Eric Laurent <elaurent@google.com> Revert "voice processing"

This reverts commit 7585d227843769079ee2afb385607b3e23ac1e07
ilhelm/src/android/android_Effect.cpp
ilhelm/src/itf/IBassBoost.c
ilhelm/src/itf/IEnvironmentalReverb.c
ilhelm/src/itf/IEqualizer.c
ilhelm/src/itf/IVirtualizer.c
75bd7d15c4c2339b492d7d2dcc1694d728c3d5fa 16-Jun-2011 Thomas Le Guevel <thomaslg@google.com> Merge "voice processing"
d03650400f18a551b7dc7c90d9762adc00c46387 16-Jun-2011 David 'Digit' Turner <digit@google.com> opensles: fix 86 compilation.

The libopensles Android.mk lists several C++ source files with
a .c extension. It also uses the '-x c++' compiler flag to force
their compilation as C++ sources.

For some reason, our x86 toolchain re-enables rtti in this case,
which leads to a library that cannot be linked properly. Fix the
issue by adding -fno-rtti when we're targetting the x86 CPU
architecture.

Change-Id: If00a86f93b492fc7abd97f92b5560138539bf1e0
pensles/libopensles/Android.mk
93627de966373aa07688204b5ed73db99fdad9cf 15-Jun-2011 Wei Hua <whua@google.com> Merge "Added Blending in Shader program."
c1b0f8f593872f8eb33e3a3fe89c0d062796cbcf 15-Jun-2011 Wei Hua <whua@google.com> Added Blending in Shader program.

SetBlendEnabled
SetBlendFunc

Change-Id: Ic30f118bdb7d9789b656c6f5bc7fa5a5eabe3124
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/jni/jni_shader_program.cc
ca/filterfw/jni/jni_shader_program.h
ca/filterfw/native/core/shader_program.cc
ca/filterfw/native/core/shader_program.h
35a8be5a36093fe6b401bb11d6e61ffe724fb1ad 14-Jun-2011 Glenn Kasten <gkasten@google.com> Bug 4606138

Change-Id: If4745ee39eeedf11388800cc30c26e4c4f8ddaa0
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/data.c
ilhelm/src/data.h
ilhelm/src/itf/IEngine.c
6aa4072be405da80b7abcc732befe819cfa932ea 09-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Fix MediaSource filter pausing behavior.

Now correctly pauses the underlying MediaPlayer.

Change-Id: Iaa57bf34dbc0b001cd303b9494fd7c2786ace3f5
ca/filterpacks/videosrc/java/MediaSource.java
d968dacf7a35d52b6907283f3d95295a238340cc 13-Jun-2011 Glenn Kasten <gkasten@google.com> Better defaults and fix warnings

Use better defaults for slesTestFeedback rxBufCount and channel count.
Fix build warnings.

Change-Id: Ieef4750cbc454029e61524cc8011a6c774088762
ilhelm/tests/automated/BufferQueue_test.cpp
ilhelm/tests/examples/slesTestBassBoostPath.cpp
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
ilhelm/tests/examples/slesTestEffectCapabilities.cpp
ilhelm/tests/examples/slesTestEqFdPath.cpp
ilhelm/tests/examples/slesTestEqOutputPath.cpp
ilhelm/tests/examples/slesTestFeedback.cpp
ilhelm/tests/examples/slesTestPlayFdPath.cpp
ilhelm/tests/examples/slesTestRecBuffQueue.cpp
ilhelm/tests/examples/slesTestSawtoothBufferQueue.cpp
ilhelm/tests/examples/slesTestSendToPresetReverb.cpp
ilhelm/tests/examples/slesTestVirtualizerPath.cpp
ilhelm/tests/listening/slesTest_playMuteSolo.cpp
ilhelm/tests/mimeUri/slesTestLoopUri.cpp
ilhelm/tests/mimeUri/slesTestPlayStreamType.cpp
ilhelm/tests/mimeUri/slesTestPlayUri.cpp
ilhelm/tests/mimeUri/slesTestPlayUri2.cpp
ilhelm/tests/mimeUri/slesTestSlowDownUri.cpp
ilhelm/tests/mimeUri/slesTest_playStates.cpp
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/sandbox/configbq.c
ilhelm/tests/sandbox/dual.c
ilhelm/tests/sandbox/engine.c
ilhelm/tests/sandbox/getch.c
ilhelm/tests/sandbox/getch.h
ilhelm/tests/sandbox/intbufq.c
ilhelm/tests/sandbox/multithread.c
ilhelm/tests/sandbox/object.c
ilhelm/tests/sandbox/outputmix.c
ilhelm/tests/sandbox/reverb.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
ilhelm/tests/sandbox/xa.c
2dbe9a3b7a1fb1e8f48db040f2685049eb115d5c 12-Jun-2011 Marius Renn <renn@google.com> Merge "Code clean up."
7585d227843769079ee2afb385607b3e23ac1e07 12-Jun-2011 Eric Laurent <elaurent@google.com> voice processing

Change-Id: I0b6129f566349fd333f34773589d5d15c36a7c15
ilhelm/src/android/android_Effect.cpp
ilhelm/src/itf/IBassBoost.c
ilhelm/src/itf/IEnvironmentalReverb.c
ilhelm/src/itf/IEqualizer.c
ilhelm/src/itf/IVirtualizer.c
33d107bf315c9cc01a02a7a4a2c10a01f62e8c85 11-Jun-2011 Wei Hua <whua@google.com> Code clean up.

add @Override
and remove unnecessary imports.

Change-Id: I274bd84c98e1dc657e35787ab0727b8247d70fdf
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterContext.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterPort.java
ca/filterfw/java/android/filterfw/core/FilterSurfaceView.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/FrameHandle.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/JavaFrame.java
ca/filterfw/java/android/filterfw/core/JavaProgram.java
ca/filterfw/java/android/filterfw/core/KeyValueMap.java
ca/filterfw/java/android/filterfw/core/NativeBuffer.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/PortToPortConnection.java
ca/filterfw/java/android/filterfw/core/Protocol.java
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/SimpleScheduler.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/java/android/filterfw/geometry/Point.java
ca/filterfw/java/android/filterfw/geometry/Quad.java
ca/filterfw/java/android/filterfw/geometry/Rectangle.java
ca/filterfw/java/android/filterfw/io/TextGraphReader.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/ImageDecoder.java
ca/filterpacks/imageproc/java/ImageEncoder.java
ca/filterpacks/imageproc/java/Invert.java
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/ToPackedGrayFilter.java
ca/filterpacks/imageproc/java/ToRGBAFilter.java
ca/filterpacks/imageproc/java/ToRGBFilter.java
ca/filterpacks/text/java/StringLogger.java
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/text/java/ToUpperCase.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/CameraSource.java
1d2030b9ec8d9ae57cbc6d39f75122dcca4dd56f 08-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Merge core filter framework libraries into one.

Combines JNI and native shared libraries into a single shared library.

Change-Id: If2cdb2b048c9c45275b1eabd06c9846c20434422
ca/filterfw/Android.mk
ca/filterfw/java/Android.mk
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/NativeBuffer.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/jni/Android.mk
ca/filterfw/native/Android.mk
9205be849f5f956ea9c9d07c20498795b792345c 08-Jun-2011 Wei Hua <whua@google.com> Merge "Throws JAVA exception when native program process fails."
26767148f226fc40ef01a092ed97a7481dcf6707 07-Jun-2011 Wei Hua <whua@google.com> Throws JAVA exception when native program process fails.

Change-Id: I2645bed644fd87ba483e6f0288a3255939b4dc4b
ca/filterfw/jni/jni_native_program.cc
ca/filterfw/native/core/native_program.cc
ca/filterfw/native/core/native_program.h
c0017fd82acec5d0427306ea5f536c3d78854f95 07-Jun-2011 Marius Renn <renn@google.com> Refactored KeyValueMap, Parameter Binding

Also adds ability to bind directly to program parameters.

Change-Id: Ia5571bcf1f87583eb2ffab0a9b839a510a979e00
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/basefilters/FrameBranch.java
ca/filterfw/java/android/filterfw/basefilters/FrameFetch.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureTarget.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/basefilters/RetargetFilter.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterConnection.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/JavaProgram.java
ca/filterfw/java/android/filterfw/core/KeyValueMap.java
ca/filterfw/java/android/filterfw/core/MutableFrameFormat.java
ca/filterfw/java/android/filterfw/core/PortToPortConnection.java
ca/filterfw/java/android/filterfw/core/ProgramParameter.java
ca/filterfw/java/android/filterfw/core/ProgramParameters.java
ca/filterfw/java/android/filterfw/core/ProgramVariable.java
ca/filterfw/java/android/filterfw/core/Protocol.java
ca/filterfw/java/android/filterfw/format/ImageFormat.java
ca/filterfw/java/android/filterfw/io/GraphReader.java
ca/filterfw/java/android/filterfw/io/TextGraphReader.java
ca/filterpacks/imageproc/java/AlphaBlendFilter.java
ca/filterpacks/imageproc/java/BlendFilter.java
ca/filterpacks/imageproc/java/BrightnessFilter.java
ca/filterpacks/imageproc/java/ContrastFilter.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/ImageDecoder.java
ca/filterpacks/imageproc/java/ImageEncoder.java
ca/filterpacks/imageproc/java/ImageFilter.java
ca/filterpacks/imageproc/java/Invert.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/ToRGBAFilter.java
ca/filterpacks/imageproc/java/ToRGBFilter.java
a9ccdef84f787fde226b6b49b6a29db9dc099a4b 07-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Fixes to SurfaceRenderFilter, SurfaceTextureSource.

Multiple SurfaceRenderFilters can now share a single destination
FilterSurfaceView, as long as only one of them is running at a time
(ie, they're in different graphs that aren't run simultaneously)

SurfaceTextureSource now creates its SurfaceTexture on open() instead
of prepare(), to make it easier for an app to switch between multiple
processing graphs using the same ultimate source, and to keep down
memory consumption.

Change-Id: I37931b60b3de15ffa484c258e5018c15e9335371
ca/filterpacks/ui/java/SurfaceRenderFilter.java
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
10cb5ce55b5ff657a6bcea5a4920001b43bd536f 04-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Allow CallbackFilter parameter updates

Change-Id: I9c65b09ce059a4dadeb317aae25a0a155644bae9
ca/filterfw/java/android/filterfw/basefilters/CallbackFilter.java
dd329efc5c25cb0ba2dd57ca9dc1899d917defcf 03-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Move runner done callback code to GraphRunner interface.

Instead of just being in AsyncRunner, implement runner done callbacks
in SyncRunner as well.

Change-Id: I9fab177493821b79c080940a69d123f1d6de35fc
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
5f58c27286048ee772cf6449dbfc9631060bb490 02-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Adds a SurfaceTextureSource filter.

This is a filter intended for applications that want to manage the
data source for the SurfaceTexture themselves, instead of using
existing simple interfaces from CameraSource or MediaSource.

The filter provides a SurfaceTexture object that can be connected up
to any data source to provide frames.

Change-Id: Icb7d48411e95c330d0023aa9e528160b20308c6e
ca/filterpacks/videosrc/java/SurfaceTextureSource.java
4639bda67e9b7b93d87c42c3321787dd45df0f0d 03-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Stop the OMX codec when destroying the OpenSL ES decoder

The AudioSfDecoder class uses a MediaSource interface from
an OMXCodec object. In the class destructor, the codec must
be stopped before the codec is anihilated.

Change-Id: Ibf0d729e055dcd8f4e05f3fb8332d650f9be0d30
ilhelm/src/android/android_AudioSfDecoder.cpp
5873c517911b1891fddb7d792a995361b2ebc809 03-Jun-2011 Rodrigo Carceroni <carceroni@google.com> Merge "Add filter for efficient conversion from color in-GPU to grayscale native"
4286edc5c6ef57fffe9ff3a33f166590d3bdf0fe 03-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Stress test for OpenSL ES: create and delete many players"
30a6b6984099be3ce9a8099c97114a43797583b5 02-Jun-2011 Jean-Michel Trivi <jmtrivi@google.com> Stress test for OpenSL ES: create and delete many players

Implementation of a test to deal with 40 AudioPlayers:
- creation
- realize
- configuration
- prefetching
- playback
- destruction
If a player was created, regardless of whether the other
operations were successful, it will be destroyed.
The number of players, 40, is chosen specifically because it
is larger than the number of objects Wilhelm is currently
capable of supporting, and larger than the number of tracks
supported by the platform mixer.

Change-Id: I42287039d59b77e59c60d074fbc0177d9726b359
ilhelm/tests/mimeUri/Android.mk
ilhelm/tests/mimeUri/slesTestManyPlayers.cpp
a4e8683367b9d4cfc4f8a6cbf3875fe2e35009f0 02-Jun-2011 Rodrigo Carceroni <carceroni@google.com> Add filter for efficient conversion from color in-GPU to grayscale native

Change-Id: I369d4d5a96d1958c70584e1a44fc9bffc99fb3ea
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/format/ImageFormat.java
ca/filterpacks/imageproc/java/ToPackedGrayFilter.java
48764aabf2013a3a70be0513b0b208c45385ee1b 02-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Add pause support to MediaSource"
1df612099dde7e43249468d46e5b8064d8c33b77 02-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Add pause support to MediaSource

Change-Id: Ic009c3f27a582c4b82aa4a449db409a54536f011
ca/filterpacks/videosrc/java/MediaSource.java
eab0813304ade17335b2d97ea3046963f90bbce0 02-Jun-2011 Glenn Kasten <gkasten@google.com> Revert "Use AudioTrack::event_type not int in callback"

This reverts commit 1d7ee1569f98f7f1b629a04bb0895165255c7f7b
ilhelm/src/android/AudioPlayer_to_android.cpp
1d7ee1569f98f7f1b629a04bb0895165255c7f7b 05-May-2011 Glenn Kasten <gkasten@google.com> Use AudioTrack::event_type not int in callback

Change-Id: Icd60d7eff86e3bdf9907c573b6900c8eca96acf1
ilhelm/src/android/AudioPlayer_to_android.cpp
2a488d2506d852ecabcbb9eddcbe1ff9f1e5d43d 01-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Add missing makefile to new filterpack.

Change-Id: I5a8e9020c2a0073d59ac64a6fc76f695f4fc5ea1
ca/filterpacks/videosrc/Android.mk
760ae0ececab08f65e0bf4947f2c8b17fffe3357 01-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Merge "Move Camara- and MediaSource filters to system/media."
80a41a380dff100ee289573d447ee0d2fe3cc405 01-Jun-2011 Marius Renn <renn@google.com> Merge "Created abstract base class for frontend environments."
a1b2a38e91cf977d434222cf277b136efd2085f0 01-Jun-2011 Marius Renn <renn@google.com> Created abstract base class for frontend environments.

Change-Id: Ib9c9396545e1b30aa621784f651ef6ffc0575adb
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/MffEnvironment.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
4a0c538853d7858d59cbc7f4dc7ece5d942e0b7c 01-Jun-2011 Eino-Ville Talvala <etalvala@google.com> Move Camara- and MediaSource filters to system/media.

Change-Id: Ic7abc3ccc9424d6e563fa0b385b92e7993bbbb58
ca/filterpacks/Android.mk
ca/filterpacks/imageproc/Android.mk
ca/filterpacks/text/Android.mk
ca/filterpacks/ui/Android.mk
ca/filterpacks/videosrc/java/CameraSource.java
ca/filterpacks/videosrc/java/MediaSource.java
e9912de34684f1b8deaf36bcf77686152d33765d 31-May-2011 Eino-Ville Talvala <etalvala@google.com> Cleanups of mobile filter framework core code.

- Eliminate basictypes.h
- Include what you use
- Consistent namespaces/header guards
- Copyright headers

Change-Id: I3658a4ce8268a58644e48544a162a910447123d1
ca/Android.mk
ca/filterfw/Android.mk
ca/filterfw/java/Android.mk
ca/filterfw/jni/Android.mk
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.h
ca/filterfw/jni/jni_gl_frame.cc
ca/filterfw/jni/jni_gl_frame.h
ca/filterfw/jni/jni_native_buffer.h
ca/filterfw/jni/jni_native_frame.cc
ca/filterfw/jni/jni_native_frame.h
ca/filterfw/jni/jni_native_program.cc
ca/filterfw/jni/jni_native_program.h
ca/filterfw/jni/jni_shader_program.cc
ca/filterfw/jni/jni_shader_program.h
ca/filterfw/jni/jni_util.cc
ca/filterfw/jni/jni_util.h
ca/filterfw/jni/jni_vertex_frame.cc
ca/filterfw/jni/jni_vertex_frame.h
ca/filterfw/native/Android.mk
ca/filterfw/native/base/basictypes.h
ca/filterfw/native/base/logging.h
ca/filterfw/native/base/utilities.h
ca/filterfw/native/core/geometry.cc
ca/filterfw/native/core/geometry.h
ca/filterfw/native/core/gl_buffer_interface.h
ca/filterfw/native/core/gl_env.cc
ca/filterfw/native/core/gl_env.h
ca/filterfw/native/core/gl_frame.cc
ca/filterfw/native/core/gl_frame.h
ca/filterfw/native/core/native_frame.cc
ca/filterfw/native/core/native_frame.h
ca/filterfw/native/core/native_program.cc
ca/filterfw/native/core/native_program.h
ca/filterfw/native/core/shader_program.cc
ca/filterfw/native/core/shader_program.h
ca/filterfw/native/core/statistics.h
ca/filterfw/native/core/time_util.cc
ca/filterfw/native/core/time_util.h
ca/filterfw/native/core/vertex_frame.cc
ca/filterfw/native/core/vertex_frame.h
ca/filterfw/native/filter/native_buffer.h
ca/filterfw/native/filter/src/data_buffer.h
ca/filterfw/native/filter/value.h
ca/filterfw/native/filterfw_ndk.mk
ca/filterfw/native/libfilterfw.mk
ca/filterpacks/base/Android.mk
ca/filterpacks/base/native/basictypes.h
ca/filterpacks/base/native/geometry.cpp
ca/filterpacks/base/native/geometry.h
ca/filterpacks/base/native/time_util.cpp
ca/filterpacks/base/native/time_util.h
ca/filterpacks/base/native/utilities.h
ca/filterpacks/base/native/vec_types.h
262f338f2ebec589447543d71928caae44123749 28-May-2011 Marius Renn <renn@google.com> Merge "remove unneeded dependency"
0f949d69cec94c80a77068eeb3b15573fb181d7b 28-May-2011 Ruei-sung Lin <rslin@google.com> remove unneeded dependency

Change-Id: I52f1b4b57e46138fe6eb5de138d7a9acbbe82538
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
c52c97e2619651901ba56d192e1923fd38a419f6 28-May-2011 Eric Laurent <elaurent@google.com> Merge "New audio effect API."
692c3bf7a1c7e2d5b1066cf7a1b057e993742c87 27-May-2011 Marius Renn <renn@google.com> Renamed ObjectFrame to JavaFrame, FilterEnvironment to FilterContext.

Also renamed Filter functions for input/output formatting.

Change-Id: I8303add0084dda718762edb635421dce7ca41313
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/basefilters/CallbackFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileReadFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileWriteFilter.java
ca/filterfw/java/android/filterfw/basefilters/FrameBranch.java
ca/filterfw/java/android/filterfw/basefilters/FrameFetch.java
ca/filterfw/java/android/filterfw/basefilters/FrameStore.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureTarget.java
ca/filterfw/java/android/filterfw/basefilters/NullFilter.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/basefilters/RetargetFilter.java
ca/filterfw/java/android/filterfw/basefilters/StaticFrameFilter.java
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterContext.java
ca/filterfw/java/android/filterfw/core/FilterEnvironment.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/JavaFrame.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/ObjectFrame.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterpacks/imageproc/java/AlphaBlendFilter.java
ca/filterpacks/imageproc/java/BlendFilter.java
ca/filterpacks/imageproc/java/BrightnessFilter.java
ca/filterpacks/imageproc/java/ContrastFilter.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/ImageDecoder.java
ca/filterpacks/imageproc/java/ImageEncoder.java
ca/filterpacks/imageproc/java/Invert.java
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/ToRGBAFilter.java
ca/filterpacks/imageproc/java/ToRGBFilter.java
ca/filterpacks/text/java/StringLogger.java
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/text/java/ToUpperCase.java
ca/filterpacks/ui/java/SurfaceRenderFilter.java
b64fe6f6bbad306e4b10fafefcbdd981ec82a5ba 27-May-2011 Marius Renn <renn@google.com> Minor fixes.

- Filter now has a getInputFormat() method.
- Requests for illegal filter ports now throws exceptions.
- More detailed toString() implementations for Frames.

Change-Id: I03e80ae30243256d8dd45665f172a46049aa2245
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
a48b09435506cc55034ed73a4f8b55d4a0203580 27-May-2011 Marius Renn <renn@google.com> Renamed filterfw2 lib to filterfw.

Change-Id: Ib21cd71f1bbe3e7d65e4378fa158cbb4e0302cd6
ca/filterfw/java/Android.mk
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/NativeBuffer.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/jni/Android.mk
ca/filterfw/native/Android.mk
ca/filterpacks/imageproc/Android.mk
0b3b3eb8e36b1ce39f67f27b6557c8d20617c040 18-May-2011 Eric Laurent <elaurent@google.com> New audio effect API.

media/EffectApi.h header file has been moved and renamed to
hardware/audio_effect.h

Change-Id: Ie24295fb16f3925f1cc43577605d371fd9a18528
ilhelm/src/itfstruct.h
a8e3c1ee4144b1d09196a90fb31cb0f61da604a7 25-May-2011 Wei Hua <whua@google.com> Add filterpacks' native base library.

Change-Id: Ia83f68dee76eb9c5684f760380b48de9e146c3c5
ca/filterpacks/base/Android.mk
ca/filterpacks/base/native/basictypes.h
ca/filterpacks/base/native/geometry.cpp
ca/filterpacks/base/native/geometry.h
ca/filterpacks/base/native/time_util.cpp
ca/filterpacks/base/native/time_util.h
ca/filterpacks/base/native/utilities.h
ca/filterpacks/base/native/vec_types.h
30ab3fc173709a491c9e2e103f53fb7c0d1b96b7 25-May-2011 Rodrigo Carceroni <carceroni@google.com> Initial public check-in of Mobile Filter Framework

Change-Id: I952e3b11c1742b861cc31d3f3ecf2713cfa434f8
ca/Android.mk
ca/filterfw/Android.mk
ca/filterfw/java/Android.mk
ca/filterfw/java/android/filterfw/FilterFunctionEnvironment.java
ca/filterfw/java/android/filterfw/GraphEnvironment.java
ca/filterfw/java/android/filterfw/basefilters/CallbackFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileReadFilter.java
ca/filterfw/java/android/filterfw/basefilters/FileWriteFilter.java
ca/filterfw/java/android/filterfw/basefilters/FrameBranch.java
ca/filterfw/java/android/filterfw/basefilters/FrameFetch.java
ca/filterfw/java/android/filterfw/basefilters/FrameStore.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureSource.java
ca/filterfw/java/android/filterfw/basefilters/GLTextureTarget.java
ca/filterfw/java/android/filterfw/basefilters/NullFilter.java
ca/filterfw/java/android/filterfw/basefilters/ObjectSource.java
ca/filterfw/java/android/filterfw/basefilters/RetargetFilter.java
ca/filterfw/java/android/filterfw/basefilters/StaticFrameFilter.java
ca/filterfw/java/android/filterfw/core/AsyncRunner.java
ca/filterfw/java/android/filterfw/core/CachedFrameManager.java
ca/filterfw/java/android/filterfw/core/Filter.java
ca/filterfw/java/android/filterfw/core/FilterConnection.java
ca/filterfw/java/android/filterfw/core/FilterEnvironment.java
ca/filterfw/java/android/filterfw/core/FilterFactory.java
ca/filterfw/java/android/filterfw/core/FilterFunction.java
ca/filterfw/java/android/filterfw/core/FilterGraph.java
ca/filterfw/java/android/filterfw/core/FilterParameter.java
ca/filterfw/java/android/filterfw/core/FilterPort.java
ca/filterfw/java/android/filterfw/core/FilterSurfaceRenderer.java
ca/filterfw/java/android/filterfw/core/FilterSurfaceView.java
ca/filterfw/java/android/filterfw/core/Frame.java
ca/filterfw/java/android/filterfw/core/FrameFormat.java
ca/filterfw/java/android/filterfw/core/FrameHandle.java
ca/filterfw/java/android/filterfw/core/FrameManager.java
ca/filterfw/java/android/filterfw/core/GLEnvironment.java
ca/filterfw/java/android/filterfw/core/GLFrame.java
ca/filterfw/java/android/filterfw/core/GraphRunner.java
ca/filterfw/java/android/filterfw/core/JavaProgram.java
ca/filterfw/java/android/filterfw/core/KeyValueMap.java
ca/filterfw/java/android/filterfw/core/LogMCA.java
ca/filterfw/java/android/filterfw/core/MutableFrameFormat.java
ca/filterfw/java/android/filterfw/core/NativeAllocatorTag.java
ca/filterfw/java/android/filterfw/core/NativeBuffer.java
ca/filterfw/java/android/filterfw/core/NativeFrame.java
ca/filterfw/java/android/filterfw/core/NativeProgram.java
ca/filterfw/java/android/filterfw/core/ObjectFrame.java
ca/filterfw/java/android/filterfw/core/PortToPortConnection.java
ca/filterfw/java/android/filterfw/core/Program.java
ca/filterfw/java/android/filterfw/core/Protocol.java
ca/filterfw/java/android/filterfw/core/ProtocolException.java
ca/filterfw/java/android/filterfw/core/Scheduler.java
ca/filterfw/java/android/filterfw/core/ShaderProgram.java
ca/filterfw/java/android/filterfw/core/SimpleFrameManager.java
ca/filterfw/java/android/filterfw/core/SimpleScheduler.java
ca/filterfw/java/android/filterfw/core/StopWatchMap.java
ca/filterfw/java/android/filterfw/core/SyncRunner.java
ca/filterfw/java/android/filterfw/core/VertexFrame.java
ca/filterfw/java/android/filterfw/format/ImageFormat.java
ca/filterfw/java/android/filterfw/geometry/Point.java
ca/filterfw/java/android/filterfw/geometry/Quad.java
ca/filterfw/java/android/filterfw/geometry/Rectangle.java
ca/filterfw/java/android/filterfw/io/GraphIOException.java
ca/filterfw/java/android/filterfw/io/GraphReader.java
ca/filterfw/java/android/filterfw/io/PatternScanner.java
ca/filterfw/java/android/filterfw/io/TextGraphReader.java
ca/filterfw/jni/Android.mk
ca/filterfw/jni/jni_gl_environment.cc
ca/filterfw/jni/jni_gl_environment.h
ca/filterfw/jni/jni_gl_frame.cc
ca/filterfw/jni/jni_gl_frame.h
ca/filterfw/jni/jni_init.cc
ca/filterfw/jni/jni_native_buffer.cc
ca/filterfw/jni/jni_native_buffer.h
ca/filterfw/jni/jni_native_frame.cc
ca/filterfw/jni/jni_native_frame.h
ca/filterfw/jni/jni_native_program.cc
ca/filterfw/jni/jni_native_program.h
ca/filterfw/jni/jni_shader_program.cc
ca/filterfw/jni/jni_shader_program.h
ca/filterfw/jni/jni_util.cc
ca/filterfw/jni/jni_util.h
ca/filterfw/jni/jni_vertex_frame.cc
ca/filterfw/jni/jni_vertex_frame.h
ca/filterfw/native/Android.mk
ca/filterfw/native/base/basictypes.h
ca/filterfw/native/base/logging.h
ca/filterfw/native/base/utilities.h
ca/filterfw/native/core/geometry.cc
ca/filterfw/native/core/geometry.h
ca/filterfw/native/core/gl_buffer_interface.h
ca/filterfw/native/core/gl_env.cc
ca/filterfw/native/core/gl_env.h
ca/filterfw/native/core/gl_frame.cc
ca/filterfw/native/core/gl_frame.h
ca/filterfw/native/core/native_frame.cc
ca/filterfw/native/core/native_frame.h
ca/filterfw/native/core/native_program.cc
ca/filterfw/native/core/native_program.h
ca/filterfw/native/core/shader_program.cc
ca/filterfw/native/core/shader_program.h
ca/filterfw/native/core/statistics.cc
ca/filterfw/native/core/statistics.h
ca/filterfw/native/core/time_util.cc
ca/filterfw/native/core/time_util.h
ca/filterfw/native/core/vertex_frame.cc
ca/filterfw/native/core/vertex_frame.h
ca/filterfw/native/filter/native_buffer.h
ca/filterfw/native/filter/src/data_buffer.cc
ca/filterfw/native/filter/src/data_buffer.h
ca/filterfw/native/filter/src/native_buffer.cc
ca/filterfw/native/filter/src/value.cc
ca/filterfw/native/filter/value.h
ca/filterfw/native/filterfw_ndk.mk
ca/filterfw/native/libfilterfw.mk
ca/filterpacks/Android.mk
ca/filterpacks/imageproc/Android.mk
ca/filterpacks/imageproc/java/AlphaBlendFilter.java
ca/filterpacks/imageproc/java/BlendFilter.java
ca/filterpacks/imageproc/java/BrightnessFilter.java
ca/filterpacks/imageproc/java/ContrastFilter.java
ca/filterpacks/imageproc/java/CropFilter.java
ca/filterpacks/imageproc/java/DrawOverlayFilter.java
ca/filterpacks/imageproc/java/DrawRectFilter.java
ca/filterpacks/imageproc/java/FisheyeFilter.java
ca/filterpacks/imageproc/java/ImageDecoder.java
ca/filterpacks/imageproc/java/ImageEncoder.java
ca/filterpacks/imageproc/java/Invert.java
ca/filterpacks/imageproc/java/ResizeFilter.java
ca/filterpacks/imageproc/java/ToGrayFilter.java
ca/filterpacks/imageproc/java/ToRGBAFilter.java
ca/filterpacks/imageproc/java/ToRGBFilter.java
ca/filterpacks/imageproc/native/brightness.c
ca/filterpacks/imageproc/native/contrast.c
ca/filterpacks/imageproc/native/invert.c
ca/filterpacks/imageproc/native/to_rgba.c
ca/filterpacks/text/Android.mk
ca/filterpacks/text/java/StringLogger.java
ca/filterpacks/text/java/StringSource.java
ca/filterpacks/text/java/ToUpperCase.java
ca/filterpacks/ui/Android.mk
ca/filterpacks/ui/java/SurfaceRenderFilter.java
640eb731a43de96896b99824cad55a6967c9f98a 11-May-2011 Dima Zavin <dima@android.com> update for new audio.h header location

Change-Id: I2140f1def08bedd8b2bd5170c6ac5edccb80035c
Signed-off-by: Dima Zavin <dima@android.com>
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/OutputMix_to_android.cpp
ilhelm/src/android/android_Effect.cpp
ilhelm/src/android/android_sles_conversions.h
ilhelm/src/itf/IAndroidEffect.cpp
ilhelm/src/itf/IEngine.c
0a0d3a3d3f7bfa284905166c806b62109a0bfaad 11-May-2011 Jean-Michel Trivi <jmtrivi@google.com> Update automated OpenSL ES test for playback from file path

Remove test where duration is queried after the player is realized
but before prefetching has started: invalid test, duration isn't
known at this time.

Changed wording of error messages to make test failures easier to
identify

Added test to compare retrieved duration, and expected duration.

Fixed expected file duration: was 75s, should be 71s

Change-Id: I6230c00f0c945c6966e1f08ecfbc67452667cf33
ilhelm/tests/mimeUri_test.cpp
90e90c753de8c410ea7ccaf36510a612b4235713 06-Apr-2011 Dima Zavin <dima@android.com> system/media: convert to use new defines from hardware/audio.h

Change-Id: I8f0f0d26e10dbbb4dfbc3b52f1c02737a375c5e0
Signed-off-by: Dima Zavin <dima@android.com>
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/OutputMix_to_android.cpp
ilhelm/src/android/android_Effect.cpp
ilhelm/src/android/android_defs.h
ilhelm/src/android/android_sles_conversions.h
ilhelm/src/itf/IAndroidEffect.cpp
ilhelm/src/itf/IEngine.c
cd422d88f508397adf8f6b492a82f0d9baee5b88 14-Apr-2011 Gloria Wang <gwang@google.com> - Add another parameter in notify() to be able to send timed text sample
through listener during video playback.
For feature request 800939.

Change-Id: I14aa18d2f803163a62c05f9e6bd990518c58cd3f
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
4cd47ce2a245a4c7e8d28d70bf20f74ace4281be 13-Apr-2011 Glenn Kasten <gkasten@google.com> Merge "Fix build warnings caused by the 'long' change"
1c17ec55f629fdab909ab16d94e014f098369110 13-Apr-2011 Glenn Kasten <gkasten@google.com> Fix build warnings caused by the 'long' change

Change-Id: I34e74d723ae7fd829dd140614928d7880e669f03
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_prompts.h
ilhelm/src/data.c
ilhelm/src/entry.c
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IAndroidConfiguration.c
ilhelm/src/itf/IAndroidEffectCapabilities.c
ilhelm/src/itf/IBufferQueue.c
ilhelm/src/itf/IEffectSend.c
ilhelm/src/itf/IPlay.c
ilhelm/src/itf/IStreamInformation.c
ilhelm/src/sles.c
ilhelm/src/trace.c
f096e77e6cbfc60263f42b435cb34fbab7be2e45 13-Apr-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix stuttering at beginning of playback

When an AudioPlayer is created, its playstate is set to STOPPED
three times. A stop command is translated into a pause + seek(0).
When a seek is underway, any new seek command was postponed. So
when playback would start after a first seek(0), the other seeks
would be executed, causing the stutterring.
This CL verifies that, when seeking to a certain time, any new
seek command to the same point in time received while seeking
is ignored.
It also correct the update of mStateFlags, which should be done
BEFORE the command is issued to the player, in case the seek
complete notification happens syncronously with the seek command.

This CL does NOT fix why a newly created player sees its playstate
updated to STOPPED three times in a test app like slesTest_playUri
before playback starts.

Change-Id: Ic7627678735f559b911ea3c5a0e1e00d7d7534d2
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
3f324661dd8bf33dd3fb2afeb84fbb05262a0d08 13-Apr-2011 Glenn Kasten <gkasten@google.com> Fix various bugs found with unit tests

ISeek::SetLoop was returning undefined status.
Khronos Bug 7614 - sizeof(long) != 32 bits on x86_64.
Fix bug in IID hashing due to the above.
Fix bug in GenericMediaPlayer::onLoop; was using mPlayer without checking for NULL.
Fix wrong API level in tests/sandbox/object.c.
Decrease log level from I to V in MediaPlayerNotificationClient::notify
and GenericPlayer::~GenericPlayer.
Fix memory leak in tests/sandbox/engine.c.
Comment out overly verbose log in tests/sandbox/streamSource/slesTestPlayStream.cpp.

Change-Id: I322fa9e19ee95ea1e18870a20f6a3c03b8f21208
ilhelm/include/OMXAL/OpenMAXAL_Platform.h
ilhelm/include/SLES/OpenSLES_Platform.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/autogen/IID_to_MPH.c
ilhelm/src/itf/ISeek.c
ilhelm/tests/sandbox/engine.c
ilhelm/tests/sandbox/object.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
06857f0ed8c64c3ae05556344ebd55be91240d58 12-Apr-2011 Glenn Kasten <gkasten@google.com> Merge "Refactor the handling of updates to attributes"
b27faa17b2fab644350c0264b23e18a5b388a8ad 07-Apr-2011 Glenn Kasten <gkasten@google.com> Refactor the handling of updates to attributes

Attribute handler functions are more modular and
get rid of those endless if statements.

Change-Id: I3221aeb3d26d2dcc5dc9a3f6d37d088f5ce511a1
ilhelm/src/Android.mk
ilhelm/src/attr.h
ilhelm/src/handler_bodies.c
ilhelm/src/handlers.c
ilhelm/src/handlers.h
ilhelm/src/locks.c
ilhelm/src/sles_allinclusive.h
a49076b1d6f829322021ac4eb4dc751b4670cdc2 11-Apr-2011 Jean-Michel Trivi <jmtrivi@google.com> Remove compilation warnings for SLmillibel level comparisons

In OpenSL ES, the volumes are expressed in millibels, which are
stored as SLint16.

The mix and max values are defined as:
define SL_MILLIBEL_MAX ((SLmillibel) 0x7FFF)
define SL_MILLIBEL_MIN ((SLmillibel) (-SL_MILLIBEL_MAX-1))

Therefore the comparison
(SL_MILLIBEL_MIN <= level)
is always true.

This CL removes those comparisons rather than use the compilation
flag to suppress the warning (it is a useful warning!).

Change-Id: I5672f257661ac045ba5282ecb0ecd14d985d8102
ilhelm/src/itf/IAndroidEffectSend.c
ilhelm/src/itf/IEffectSend.c
ilhelm/src/itf/IEnvironmentalReverb.c
2c822e4a9be125252fe3e1f75d8d731880525779 11-Apr-2011 Jean-Michel Trivi <jmtrivi@google.com> Use reference to sp on GenericPlayer

When an object like GenericPlayer is stored in CAudioPlayer or
CMediaPlayer by a sp, don't use a pointer to GenericPlayer when
the object is passed as a function parameter, but rather use
a reference to the sp that maintains it.

Change-Id: I49ff219618ac4b657deb43cfffb65f0e0dd6d58d
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
6b8451eaa9843d8323c031bd76ec8fb51821e1cb 07-Apr-2011 Glenn Kasten <gkasten@google.com> Re-generate autogen files

Change-Id: I3ff71790a981ea0f1e604bae344e4a949509405a
ilhelm/src/autogen/MPH_to_MediaPlayer.h
ilhelm/tools/hashgen/README.txt
c8eb83fcd4a9b4f36342f88871e757cc855946c2 07-Apr-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "OpenMAX AL: support the SeekItf and XA_PLAYEVENT_HEADATEND"
78fcbe58abb7f85a837048d459e7dd5510a594e1 07-Apr-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenMAX AL: support the SeekItf and XA_PLAYEVENT_HEADATEND

Implemented support for:
- seeking to a position
- looping (only over full duration is supported, no loop points)
- notification of end of content reached
This is all for the playback of URIs or FDs.

Change-Id: I015c40e66feb7ac280459895f5f7915ac964df31
ilhelm/src/MPH_to.c
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/classes.c
ilhelm/src/classes.h
ilhelm/src/itf/ISeek.c
ilhelm/src/locks.c
ilhelm/src/sles.c
ilhelm/src/sles_allinclusive.h
a98a02f6fc6b0d4e51d70734b2e41a6ff8b7615c 07-Apr-2011 Glenn Kasten <gkasten@google.com> Merge "Fix build on non-Android platform"
c8cb62dfcb9f17fe56c15329ab56f8b00fb9f27f 07-Apr-2011 Glenn Kasten <gkasten@google.com> Merge "Line length 100"
cc6ff05780ba14bc6d19fe776b5c7c44dc1e2816 06-Apr-2011 Glenn Kasten <gkasten@google.com> Line length 100

Change-Id: Ie4459eed7f94870413bc87252910c1189ecf2e06
ilhelm/src/Android.mk
ilhelm/src/itf/IStreamInformation.c
ilhelm/src/xa_iid.c
f595eec61f4a84218510f24ac67748ea8b8ebaed 06-Apr-2011 Glenn Kasten <gkasten@google.com> Fix build on non-Android platform

Change-Id: I85b25467ac5bae45b12ec5b0abfb4696449c2da8
ilhelm/src/itf/IAudioIODeviceCapabilities.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itf/IOutputMix.c
ilhelm/src/sles.c
6521243b609e9a57e109f5715128d8a1cf0657b0 06-Apr-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenSL ES / OpenMAX AL code clean up

Do not use cryptic acronyms for Android object type definitions.

Harmonize object state and type naming conventions.

Change-Id: I62bed7aba2e0b9ea0c47264af8e3cf29f74746a8
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_defs.h
ilhelm/src/classes.h
8ad101d5bcaca289da3d820e2b87b5da55e560f9 29-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Move support for SL URI and FD playback under GenericPlayer class

The SfPlayer class was implementing URI and FD decode and playback
in the application process. This CL removes this class entirely
and moves its functionality under the GenericPlayer class. This
means that the playback of URIs and FDs is now implemented through
an android::MediaPlayer object running in the media service.

The SfPlayer header had many StageFright and system includes, which
are now moved to the relevant files where they are required,
instead of automagically coming from sles_allinclusive.h.

Note that this CL breaks support for the following OpenSL ES features
due to missing Android MediaPlayer features:
SLPlayItf.GetPosition
HEADATMARKER
HEADATNEWPOSITION
SLVolumeItf.EnableStereoPosition
SetStereoPosition
SLMuteSoloItf
SLPlaybackRateItf

Support for those features will be reintegrated in subsequent CLs.

Change-Id: I8d7f6ea006eb7b876ef1ca1909d74b4517335850
ilhelm/src/Android.mk
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_SfPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_defs.h
ilhelm/src/classes.h
ilhelm/src/entry.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itf/IPrefetchStatus.c
ilhelm/src/sles_allinclusive.h
ilhelm/tests/mimeUri/slesTestPlayUri.cpp
f9a7a660d921498e6b3ffb3c855214a8b0822eea 05-Apr-2011 Glenn Kasten <gkasten@google.com> Fix bug in last commit

Always read the documentation:
- Add hooks for new OpenMAX AL interfaces
- Since OpenSL ES engine interface has a deinit hook, add one for OpenMAX AL also

Change-Id: I266bf2112e6f8e525e5b3c06bbb6a68a4764e978
ilhelm/src/itf/IEngine.c
ilhelm/src/sles.c
f6c49dbbd69b0fab85279d318d67c5e3a1ef7f7b 04-Apr-2011 Glenn Kasten <gkasten@google.com> Merge "Add basis for future OpenMAX AL 1.0.1 interfaces"
e155630f0eb0fc1bb6a8fbe218c517e7bf82eaeb 04-Apr-2011 Glenn Kasten <gkasten@google.com> Add basis for future OpenMAX AL 1.0.1 interfaces

Bug fix:
OpenMAX AL media player was using SL instead of XA symbols for the Object
and DynamicInterfaceManagement interfaces. A Object::GetInterface using
the XA symbols would have failed. Fortunately, these are not used in
typical applications.

Minor cleanup:
- Add README.txt for mphtogen tool
- Fix clang warning
- Update comments
- Remove spurious commas
- Fix warning at declaration of SL_IID_array
- SL_IID_ANDROIDBUFFERQUEUE was added in API level 12, not 10

Change-Id: I75abced5bc3c3fdabe40face25463810de741bf2
ilhelm/src/MPH.h
ilhelm/src/MPH_to.c
ilhelm/src/OpenSLES_IID.c
ilhelm/src/autogen/IID_to_MPH.c
ilhelm/src/autogen/MPH_to_3DGroup.h
ilhelm/src/autogen/MPH_to_AudioPlayer.h
ilhelm/src/autogen/MPH_to_AudioRecorder.h
ilhelm/src/autogen/MPH_to_Engine.h
ilhelm/src/autogen/MPH_to_LEDDevice.h
ilhelm/src/autogen/MPH_to_Listener.h
ilhelm/src/autogen/MPH_to_MediaPlayer.h
ilhelm/src/autogen/MPH_to_MetadataExtractor.h
ilhelm/src/autogen/MPH_to_MidiPlayer.h
ilhelm/src/autogen/MPH_to_OutputMix.h
ilhelm/src/autogen/MPH_to_Vibra.h
ilhelm/src/classes.c
ilhelm/src/data.h
ilhelm/src/entry.c
ilhelm/src/interfaces.c
ilhelm/src/itf/ILEDArray.c
ilhelm/src/itf/IObject.c
ilhelm/src/sl_iid.c
ilhelm/src/xa_iid.c
ilhelm/tools/mphtogen/README.txt
1888a23c480506c64c68bf19a555cc85279c9d4a 04-Apr-2011 Glenn Kasten <gkasten@google.com> Add OpenMAX AL 1.0.1 spec

Change-Id: Iaeb78d64d01cd776f8a7096371f20ce366a64b79
ilhelm/doc/OpenMAX_AL_1_0_1_Specification.pdf
d004feb25e830dd92a8d6e6af0d363e4d11721a2 29-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Reduce include noise in SL and XA class definitions

In classes.h: we should only have to include the headers
for the objects that are actually stored as member variables of
the OpenSL ES and OpenMAX AL objects (so here AudioTrackProtector,
Effect, and GenericPlayer).
In CMediaPlayer.c: remove useless includes and change the video
surface function prototypes to use const refs to strong pointers
instead of pointers to access the GenericMediaPlayer objects.

Note that android_SfPlayer.h is still in sles_allinclusive.h because
it will be dealt with when the SfPlayer functionality is absorbed
under LocAVPlayer.

Change-Id: Ic2c9459862588399d9545a247cc15341effc0f66
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_AudioToCbRenderer.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_LocAVPlayer.h
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/classes.h
ilhelm/src/objects/CMediaPlayer.c
62b90b5c5b8495c12900c5d759fa341319e661b3 28-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Clean up main header

There are many includes in sles_allinclusive.h that should be moved
to the files that rely on those headers. This is a first cleanup
to move Android audio effect related headers to where they belong.
+ one relocation for a media server related file. More to come
with AudioPlayer refactoring.

Change-Id: I181dde96db522d9cfb537dffea18ba57f855b99e
ilhelm/src/android/android_Effect.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/classes.h
ilhelm/src/itf/IBassBoost.c
ilhelm/src/itf/IEnvironmentalReverb.c
ilhelm/src/itf/IEqualizer.c
ilhelm/src/itf/IVirtualizer.c
ilhelm/src/itfstruct.h
ilhelm/src/sles_allinclusive.h
4ba05bae8b61e3eca963ead78393b7edc7c9a79d 24-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> am 9e0e6e5c: Fix bug 4109988 fix deadlock on destroy

* commit '9e0e6e5c60320dac9aa2abbce2f9a843b8fc4449':
Fix bug 4109988 fix deadlock on destroy
146a529e3b2c610be8517f99ea73e6b79e8af459 22-Mar-2011 Carl Shapiro <cshapiro@google.com> Include strings.h for the strcasecmp prototype.

Change-Id: Ibd1689f36b3d74eb1dc1a506f97ca8d11f2b0730
ilhelm/src/sles_allinclusive.h
9e0e6e5c60320dac9aa2abbce2f9a843b8fc4449 19-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 4109988 fix deadlock on destroy

Fix deadlock with an AudioPlayer playing from a PCM buffer queue.
This type of player uses an AudioTrack that pulls data through
its callback from a buffer queue.
This issue is that when you destroy the player (whick locks the
object), it tries to destroy the AudioTrack object. The
AudioTrack destructor can only finish when the AudioTrack
callback thread can exit. If a callback was underway when
trying to destroy the object, a race condition existed for
the AudioPlayer lock.
The fix consists in using the "pre-destroy" hook for the AudioPlayer
object. In it, we unlock the AudioPlayer, and block until the
AudioTrack callback has signaled it's done. The pre-destroy
hook also marks the track as "about to be destroyed" so any
callback that gets called once the pre-destroy hook has been
called can return immediately.

Change-Id: I4ca69157ff381232c1edc8fb576c6d9e90c2777f
ilhelm/src/Android.mk
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/AudioTrackProtector.cpp
ilhelm/src/android/AudioTrackProtector.h
ilhelm/src/classes.h
ilhelm/src/itf/IEngine.c
ilhelm/src/objects/CAudioPlayer.c
ilhelm/src/sles_allinclusive.h
cbe6cad482b1d6adccfeca5f586b1c060929b560 17-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> resolved conflicts for merge of c5dcfeb2 to master

Change-Id: Iff3428cd554c5b5940da8a243c661ae70a92af8d
722860a1c61065e5c0b2b25079f6fac9e3ca30a6 17-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> am 30ebe675: Bug 3329759 clean logs, PTS should be unsigned

* commit '30ebe675beff91283cc72d4ee5e94e56ab7e107f':
Bug 3329759 clean logs, PTS should be unsigned
c5dcfeb20f3d94d0d8c1a5e875e531c0929358cf 17-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Bug 4106199 Split libOpenSLES.so & libOpenMAXAL.so" into honeycomb-mr1
7a236ec592297f93094698e599cc2ffe5a1542e5 16-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 4106199 Split libOpenSLES.so & libOpenMAXAL.so

Change-Id: I718cf6bcfff51a6fb153928eb160a36b4ca9fc96
leanSpec.mk
ilhelm/src/Android.mk
ilhelm/src/OpenSLES_IID.c
ilhelm/src/classes.c
ilhelm/src/entry.c
ilhelm/src/sl_entry.c
ilhelm/src/sl_iid.c
ilhelm/src/sles_allinclusive.h
ilhelm/src/xa_entry.c
ilhelm/src/xa_iid.c
ilhelm/tests/native-media/jni/Android.mk
ilhelm/tests/sandbox/Android.mk
30ebe675beff91283cc72d4ee5e94e56ab7e107f 16-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 3329759 clean logs, PTS should be unsigned

- Don't pollute logs.
- Save MPEG-2 PTS as an unsigned 64bit value, negative values are
invalid.

Change-Id: I51d427789dd1e42219a63c68159f2e28628f0448
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/sles_allinclusive.h
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
4e2aa31e0c1ec5197a5e89a2268c1dc3b949aec8 16-Mar-2011 Glenn Kasten <gkasten@google.com> am 7a713baa: Merge "Bug 4099084 native window data locator" into honeycomb-mr1

* commit '7a713baae6cac3740cc27380f1dc8099dd272470':
Bug 4099084 native window data locator
7a713baae6cac3740cc27380f1dc8099dd272470 16-Mar-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4099084 native window data locator" into honeycomb-mr1
db1829c26329e087b91809309acea4cceec88001 16-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> am 632d1061: Merge "Bug 3329759 callback mask for TS streaming" into honeycomb-mr1

* commit '632d10616d5d20296d9ea32d4c94d2fc76926534':
Bug 3329759 callback mask for TS streaming
6635b48c8a9b951a1ad5ccfeddf2e2d8d4cb9448 16-Mar-2011 Glenn Kasten <gkasten@google.com> am 2e28af68: Bug 4099355 workaround gcc x86 problem

* commit '2e28af68bc8807958ba611c082a0a61691e76a2c':
Bug 4099355 workaround gcc x86 problem
632d10616d5d20296d9ea32d4c94d2fc76926534 16-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Bug 3329759 callback mask for TS streaming" into honeycomb-mr1
49dfad6a8f91f0cce729f6db143f26c188caf523 16-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 4099084 native window data locator

Change-Id: I03cac7501c3f185a2f95395b140b52b695081c4b
ilhelm/src/Android.mk
ilhelm/src/data.c
ilhelm/src/objects/CMediaPlayer.c
ilhelm/tests/native-media/jni/native-media-jni.c
4756e5726b53c2b4d7fae8b66b5596afd7fcf309 15-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 3329759 callback mask for TS streaming

- declare a "buffer event" item key and the event mask matching
the OpenSL ES 1.1 buffer queue event mask
- added a buffer state field in AdvancedBufferHeader to keep
track of the lifecycle of a buffer in the queue
- in StreamPlayer, store a constant to be sent as the item
each time a buffer is dequeued because it's been processed
- fix bug in playStream test app where after clearing the
queue, the data was read to the last dequeued buffer address,
rather than at the beginning of the cache.

Change-Id: I07141c8a913dfedeb9fde41d80afbce794ab7379
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itfstruct.h
ilhelm/src/sles_allinclusive.h
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
2e28af68bc8807958ba611c082a0a61691e76a2c 15-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 4099355 workaround gcc x86 problem

Change-Id: Ib9e2fc9eb58bef73772d8c617023f689b514e3a1
ilhelm/src/Android.mk
ilhelm/src/itf/IStreamInformation.c
ilhelm/src/itf/IStreamInformation.cpp
69156c18f902c2fd8a09c0f9bb6c51f6904b93f6 15-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> am 2b7f4d9d: Unbreak the x86 build

* commit '2b7f4d9d3e8f67b93b919f27082d1fd73d969c04':
Unbreak the x86 build
2b7f4d9d3e8f67b93b919f27082d1fd73d969c04 15-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Unbreak the x86 build

Looks like the x86 compiler does't like placement new. Commenting
out offending line until a proper fix (wrap Vector initialization
in another object) is implemented.

Change-Id: Id35cf7845e4fcb10536c2055263805dbf3cce65b
ilhelm/src/itf/IStreamInformation.c
363b542ad6c387fe917f5116a3f985af929ed9f5 15-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> am fcc99629: Bug 3329759 Implement streamInformation and volume in OpenMAX AL

* commit 'fcc996296bdbf6c3949ad4312991fdde4ae2e157':
Bug 3329759 Implement streamInformation and volume in OpenMAX AL
fcc996296bdbf6c3949ad4312991fdde4ae2e157 09-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 3329759 Implement streamInformation and volume in OpenMAX AL

- Implement StreamInformation for video size notification.
- Implement the XAVolumeItf for volume control
- Fix bug in GUID -> MPH hash.
- Fixed typo in GenericPlayer::pause() log
- Do not signal a discontinuity automatically when the ABQ is
cleared because clearing the queue doesn't imply there will
be a discontinuity in the data (e.g. the same data that was
cleared could be reenqueued)
- In "native-media" test app: add test code to exercise the
XAVolumeItf functionality.

Change-Id: I9f69f8cacbdce51b6d96d60141ec1d0f645df991
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/MPH.h
ilhelm/src/MPH_to.c
ilhelm/src/OpenSLES_IID.c
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_defs.h
ilhelm/src/autogen/IID_to_MPH.c
ilhelm/src/autogen/MPH_to_3DGroup.h
ilhelm/src/autogen/MPH_to_AudioPlayer.h
ilhelm/src/autogen/MPH_to_AudioRecorder.h
ilhelm/src/autogen/MPH_to_Engine.h
ilhelm/src/autogen/MPH_to_LEDDevice.h
ilhelm/src/autogen/MPH_to_Listener.h
ilhelm/src/autogen/MPH_to_MediaPlayer.h
ilhelm/src/autogen/MPH_to_MetadataExtractor.h
ilhelm/src/autogen/MPH_to_MidiPlayer.h
ilhelm/src/autogen/MPH_to_OutputMix.h
ilhelm/src/autogen/MPH_to_Vibra.h
ilhelm/src/classes.c
ilhelm/src/classes.h
ilhelm/src/data.h
ilhelm/src/interfaces.c
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itf/IStreamInformation.c
ilhelm/src/itfstruct.h
ilhelm/src/locks.c
ilhelm/src/sles.c
ilhelm/src/sles_allinclusive.h
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
ilhelm/tools/hashgen/Makefile
ilhelm/tools/hashgen/part6.c
b498997455871ebd229b705d6c37bc21156fd395 14-Mar-2011 Iliyan Malchev <malchev@google.com> system/media: remove LOCAL_PRELINK_MODULE

Change-Id: I55942287d5789a6297ab16f4049f529cb9f9e56c
Signed-off-by: Iliyan Malchev <malchev@google.com>
ilhelm/src/Android.mk
ilhelm/tests/native-media/jni/Android.mk
d2001cc2e6351e914647275df75e0c8f26f8cb4e 11-Mar-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 3463332 Unified test/demo of video sink & APIs" into honeycomb-mr1
2a1042f54c8e61a0c2a062709367093100ea6f8f 09-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 3463332 Unified test/demo of video sink & APIs

Note: this only affects test code, nothing in the platform.

Can use for testing Java and native APIs
Video sinks is selectable as Surface (SurfaceView) or SurfaceTexture (GLSurfaceView)
Media source is selectable from drop-down list

Change-Id: I45fe16b672e0783ee89e0985b446b8ecc4f452e3
ilhelm/tests/native-media/Android.mk
ilhelm/tests/native-media/AndroidManifest.xml
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/native-media/res/layout/main.xml
ilhelm/tests/native-media/res/values/strings.xml
ilhelm/tests/native-media/src/com/example/nativemedia/MyGLSurfaceView.java
ilhelm/tests/native-media/src/com/example/nativemedia/NativeMedia.java
ec6861ed4f54b73425bdca049f3a75f7ac57a682 08-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 3329759 Implement Clear() and GetState() for MPEG-2 TS

- implemented Clear() in AndroidBufferQueue
- declared and implemented GetState() in AndroidBufferQueue
- fixed typo in AudioPlayer_to_android.cpp that cause a "case"
to be compiled as a label (no unused label warning from
compiler)
- more test in sandbox/streamSource

Change-Id: If4eede16430cda943224bf950669cc105ac2f894
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
5b21a0626e173d407aa3835e5cffcaa9b582016d 07-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 3329759 support commands in SLAndroidBufferQueueItf

Support for EOS, DISCONTINUITY, and DISCONTINUITY with
a PTS.

- in IAndroidBufferQueue structure, added buffer type
- modified AdvancedBufferHeader structure to have a buffer
type-specific structure that contains all the items for each
buffer
- added parsing of items when enqueueing a buffer
- enforce buffer size enqueue to be a multiple of MPEG-2 TS
block size for buffer of the corresponding types
- when enqueueing a buffer on an empty queue, implemented
an asynchronous notification on StreamPlayer to consume
the newly queued buffer. Verified this kicks off playback
after having starved the framework for buffers.
- report unknown duration when using AndroidBufferQueue

Change-Id: I9bde97a6c6ffca7d376b4963313b820b35f50a26
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/src/Android.mk
ilhelm/src/android/AndroidBufferQueueSource.cpp
ilhelm/src/android/AndroidBufferQueueSource.h
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itfstruct.h
ilhelm/src/locks.c
ilhelm/src/sles_allinclusive.h
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
13a07de046bce3663b905a892dbaf770a54d982d 05-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 3329759 Surface texture as video sink

XA_DATALOCATOR_NATIVEDISPLAY now allows either a Surface or SurfaceTexture
together with a JNIEnv *.

Miscellaneous fixes:
- Clarify test button labels.
- Line length 100.
- Fix typos in XA_DATALOCATOR_ANDROIDFD and XA_DATALOCATOR_ANDROIDFD_USE_FILE_SIZE.

Change-Id: I3f3c604dfda3cf66ef7d7adc8689564a83623b2f
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/data.c
ilhelm/src/objects/CMediaPlayer.c
ilhelm/src/sles.c
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/native-media/res/values/strings.xml
ilhelm/tests/native-media/src/com/example/nativemedia/NativeMedia.java
f65b260193e5ca669ec4479a7e1c4517e18cc6b0 04-Mar-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 3329759 TS streaming over SLAndroidBufferQueueItf

Modify the SLAndroidBufferQueueItf interface to offer a model
where buffers of data can be queued along with commands
(messages) when used for playback, or buffers of data can be
received along with metadata (messages)

changes:
- new callback and enqueue functions in SLAndroidBufferQueueItf
and XAAndroidBufferQueueItf.
- definition of a new struct, AdvancedBufferHeader, for
the buffers in the queue.
- decoupling of the "buffer available to be filled" from SF
and the call to the ABQ callback. Implemented in new
file AndroidBufferQueueSource.cpp
- source/sink checks and memory allocation when creating an
AudioPlayer or MediaPlayer that uses SLAndroidBufferQueueItf,
and verifying the data fed to the ABQ is declared as
SL_CONTAINERTYPE_MPEG_TS
- updated tests/native-media XA demo code, and
tests/sandbox/streamSource to use the new interface.

Change-Id: I48e44f346e718041d835fde51e349923fcc1f4b1
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/src/Android.mk
ilhelm/src/android/AndroidBufferQueueSource.cpp
ilhelm/src/android/AndroidBufferQueueSource.h
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/classes.h
ilhelm/src/data.c
ilhelm/src/data.h
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IBufferQueue.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itf/IPlay.c
ilhelm/src/itfstruct.h
ilhelm/src/locks.c
ilhelm/src/sles.c
ilhelm/src/sles_allinclusive.h
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
4b1fb4c7d7eb8d4eb79a8cc01a556e11815e139c 24-Feb-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "OpenMAX AL: consolidate MediaPlayer implementations under superclass"
f1940ee8f54f9af30c557033721715fbd90d1683 24-Feb-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 3266825 partial fix"
e8af8705a6eb3b8ebd239c379d9143dc69c363d4 24-Feb-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenMAX AL: consolidate MediaPlayer implementations under superclass

The OpenMAX AL MediaPlayer object has two implementations: one
for playing from URI/FD (LocAVPlayer) and one for playing from
AndroidBufferQueue (StreamPlayer). They both inherit from AVPlayer.
This CL makes LocAVPlayer and StreamPlayer inherit from
GenericMediaPlayer (new name of AVPlayer) which encapsulates the
interaction with an android::MediaPlayer instance running in
the media server process.
Also it makes GenericMediaPlayer inherit from GenericPlayer, the
player superclass also used in OpenSL ES.

After this CL, the OpenMAX AL and OpenSL ES have a common class
hierarchy for their players.

Change-Id: I5f6e279fc29b7f6f26c9ed5c83a9455cfda88ff4
ilhelm/src/Android.mk
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/android_AVPlayer.cpp
ilhelm/src/android/android_AVPlayer.h
ilhelm/src/android/android_GenericMediaPlayer.cpp
ilhelm/src/android/android_GenericMediaPlayer.h
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_LocAVPlayer.h
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/classes.h
ilhelm/src/itf/IEngine.c
ilhelm/src/locks.c
ilhelm/src/objects/CMediaPlayer.c
ilhelm/src/sles_allinclusive.h
1af6ffa015e2b75f5dd7930f07ae09f46b7d2295 23-Feb-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug in decode to memory example app

Bug in detecting write errors: count and size in fwrite were
swapped, so an error was always reported.

Change-Id: If20276a412d110c2791c50ebc41761d6e1d3386e
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
446c339313f6471c73d17801ab0dec874c1df94a 23-Feb-2011 Glenn Kasten <gkasten@google.com> Bug 3266825 partial fix

This was a copy/paste bug that caused AddInterface to corrupt the v-table.

Change-Id: I93cd8d58c2a95d1dd9e9f139bc9f4a73d96351ed
ilhelm/src/itf/IDynamicInterfaceManagement.c
40c08fcbfac815da96c2db0a0586fd5b12bc0a5f 14-Feb-2011 Jean-Michel Trivi <jmtrivi@google.com> Report an error when the data source can't be created.

Check the value returned by DataSource::CreateFromURI(uri)

Change-Id: Ia94b18b09c68d1e8bf90d2f1a099319d5f5e565e
ilhelm/src/android/android_AudioSfDecoder.cpp
ebc3cb4b5730705e27d1f9fcc05d1f76191a95a7 12-Feb-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenSL ES: add demo app for decode to PCM buffer queue.

Example for the decoding of a compressed file to PCM, saved in
a .raw file as the decoded buffers are received through a
buffer queue.

Change-Id: Ia44078e00569e6aa1f14ab3eaa2b2ebfb07b709d
ilhelm/tests/examples/Android.mk
ilhelm/tests/examples/slesTestDecodeToBuffQueue.cpp
dff1b1fc1f687c544e19df56bef225c45f7256a9 01-Feb-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenSL ES: support decode to PCM buffer queue

Created a new audio player class, APlayer, from which we derive
subclasses to encapsulate OpenSL ES AudioPlayer implementations:
- ASfPlayer derives from APlayer and encapsulates StageFright
functionality for audio decoding to a buffer
- ADecoder derives from ASfPlayer and encapsulates rendering
the decoded audio data to a callback function. It interfaces
with the OpenSL ES Buffer Queue interface to pass the decoded
data back to an OpenSL ES application.

For OpenSL ES, to support decoding to a Buffer Queue, we now
allow an AudioPlayer to have its sink be a PCM buffer queue.

Change-Id: I9aefeb0375a71f7ca770c5c62b4fb8faf59c9c23
ilhelm/src/Android.mk
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/android_AVPlayer.cpp
ilhelm/src/android/android_AVPlayer.h
ilhelm/src/android/android_AudioSfDecoder.cpp
ilhelm/src/android/android_AudioSfDecoder.h
ilhelm/src/android/android_AudioToCbRenderer.cpp
ilhelm/src/android/android_AudioToCbRenderer.h
ilhelm/src/android/android_GenericPlayer.cpp
ilhelm/src/android/android_GenericPlayer.h
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_SfPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/android/android_prompts.h
ilhelm/src/classes.h
ilhelm/src/data.c
ilhelm/src/itf/IEngine.c
ilhelm/src/objects/CAudioPlayer.c
ilhelm/src/sles_allinclusive.h
20eba84e7c9a4515f2bbb4252ac6635bcbbb1274 30-Jan-2011 The Android Open Source Project <initial-contribution@android.com> am b372117a: Reconcile gingerbread-plus-aosp and honeycomb

* commit 'b372117a203bb8942e2985d57b3dcec5f0ece745':
b372117a203bb8942e2985d57b3dcec5f0ece745 30-Jan-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile gingerbread-plus-aosp and honeycomb

Change-Id: Id6a4042483e3c5d9bdba600ec06f11596212d838
dfb9bbca73306374cf50eb51a835d1ffb26fcaa9 30-Jan-2011 The Android Open Source Project <initial-contribution@android.com> Mass merge from gingerbread - do not merge

Change-Id: Ibdf926e21c60db22344c1dd8d9a6a3ab3fbc4bb9
a1d351796134769a57c2a41dab7ac69b788ce9b1 29-Jan-2011 Glenn Kasten <gkasten@google.com> am 4c2bc0fd: Bug 3388299 Fix stack buffer overrun

* commit '4c2bc0fd150b0164f9f387214c29143346a92e14':
Bug 3388299 Fix stack buffer overrun
2b11498134185eaf585ee6b85f9db7bd40c6a2ef 29-Jan-2011 Glenn Kasten <gkasten@google.com> am 062b7b45: Merge "Bug 3326605: AudioRecorder uses wrong channel mask" into gingerbread

* commit '062b7b45b27c6bfffc494af21382d7fa7a8d2d82':
Bug 3326605: AudioRecorder uses wrong channel mask
30ede43f5dab7ad0c8db91eb1976604e7d6074cb 29-Jan-2011 Jean-Baptiste Queru <jbq@google.com> Merge/ignore 28d27b96 from gingerbread

Change-Id: I25fd80f057b9a5b901f5353c296238a0f1ddf4d8
4fbd7da64ef7ee6aa1c11fcaa4571fc17eeb4685 28-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Add more test cases to reverb test"
a173f7823f01ec25f076e2f9586ff0cc096874f1 25-Jan-2011 Glenn Kasten <gkasten@google.com> Add more test cases to reverb test

Change-Id: Ia0970ebd8e182a45157a6edbef762f2350605a9b
ilhelm/tests/sandbox/reverb.c
be6bb45171f52d0da55c207a4b666a47059b7f8b 27-Jan-2011 Glenn Kasten <gkasten@google.com> am 06344973: am 04f8400d: am 4c2bc0fd: Bug 3388299 Fix stack buffer overrun

* commit '06344973a341379cb08d6f49a6cdae1ac5dd110d':
Bug 3388299 Fix stack buffer overrun
06344973a341379cb08d6f49a6cdae1ac5dd110d 27-Jan-2011 Glenn Kasten <gkasten@google.com> am 04f8400d: am 4c2bc0fd: Bug 3388299 Fix stack buffer overrun

* commit '04f8400dae4e9c26e8e6bdf707513304cd5bc5df':
Bug 3388299 Fix stack buffer overrun
04f8400dae4e9c26e8e6bdf707513304cd5bc5df 27-Jan-2011 Glenn Kasten <gkasten@google.com> am 4c2bc0fd: Bug 3388299 Fix stack buffer overrun

* commit '4c2bc0fd150b0164f9f387214c29143346a92e14':
Bug 3388299 Fix stack buffer overrun
653c0a569d6905a8649d4d7cc0f642f213c1b91a 26-Jan-2011 Glenn Kasten <gkasten@google.com> am 47f6611b: am e619a697: Bug 3388299 Fix stack buffer overrun

* commit '47f6611b7356f0a70ba73d440991a7c94742d43d':
Bug 3388299 Fix stack buffer overrun
47f6611b7356f0a70ba73d440991a7c94742d43d 26-Jan-2011 Glenn Kasten <gkasten@google.com> am e619a697: Bug 3388299 Fix stack buffer overrun

* commit 'e619a697ededd37b3645c3970a4f71af7d663524':
Bug 3388299 Fix stack buffer overrun
4c2bc0fd150b0164f9f387214c29143346a92e14 25-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3388299 Fix stack buffer overrun

Change-Id: Ie8c525ddee862b32f2055cb89c10a680f0c14f97
pensles/libopensles/android_Effect.cpp
e619a697ededd37b3645c3970a4f71af7d663524 25-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3388299 Fix stack buffer overrun

Change-Id: I715affa4f6599afabc0bc9b56981edce2edcc95b
ilhelm/src/android/android_Effect.cpp
1297e1ffa8bbe439e8b58a7f7c362ab401deb846 26-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 3388299 Fix stack buffer overrun"
96a969d727735586f32a1a3ef14371b95102c9d4 25-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3388299 Fix stack buffer overrun

Change-Id: I22bf369b42faf04ef5bdc7ca8ebca3d31add2ad6
ilhelm/src/android/android_Effect.cpp
9d8ce00302122f4d9cf21690417107929b0b7a92 25-Jan-2011 Glenn Kasten <gkasten@google.com> am a5aa1d64: am bfa9fb97: am 062b7b45: Merge "Bug 3326605: AudioRecorder uses wrong channel mask" into gingerbread

* commit 'a5aa1d64c7469f22305fc429854a585c3c85d4df':
Bug 3326605: AudioRecorder uses wrong channel mask
a5aa1d64c7469f22305fc429854a585c3c85d4df 25-Jan-2011 Glenn Kasten <gkasten@google.com> am bfa9fb97: am 062b7b45: Merge "Bug 3326605: AudioRecorder uses wrong channel mask" into gingerbread

* commit 'bfa9fb977e1e9a89f198571ab84f2fb198f72556':
Bug 3326605: AudioRecorder uses wrong channel mask
0ff7e665db9ea480f3f2b6ce067e6ba1354018c1 25-Jan-2011 Glenn Kasten <gkasten@google.com> am fa2a25a6: resolved conflicts for merge of 4ecd13c7 to honeycomb-plus-aosp

* commit 'fa2a25a630e026796c095bbfbf0ee148a1df91c8':
Bug 3360707
fa2a25a630e026796c095bbfbf0ee148a1df91c8 25-Jan-2011 Glenn Kasten <gkasten@google.com> resolved conflicts for merge of 4ecd13c7 to honeycomb-plus-aosp

Change-Id: I536a8136afd7f92606a93b7d423499445eb89ae8
bfa9fb977e1e9a89f198571ab84f2fb198f72556 23-Jan-2011 Glenn Kasten <gkasten@google.com> am 062b7b45: Merge "Bug 3326605: AudioRecorder uses wrong channel mask" into gingerbread

* commit '062b7b45b27c6bfffc494af21382d7fa7a8d2d82':
Bug 3326605: AudioRecorder uses wrong channel mask
4ecd13c7ed25ad128efe57509566b9345f8c2c79 23-Jan-2011 Glenn Kasten <gkasten@google.com> am 28d27b96: Bug 3360707

* commit '28d27b961d0ee209865046237edc03537d0f25f1':
Bug 3360707
062b7b45b27c6bfffc494af21382d7fa7a8d2d82 23-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 3326605: AudioRecorder uses wrong channel mask" into gingerbread
33b3539fd2bb9a8c3d94583214a8972f5298a03f 06-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3326605: AudioRecorder uses wrong channel mask

Change-Id: I2121211b0202bc39100d74232d63be94c7e8a8de
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_sles_conversions.h
28d27b961d0ee209865046237edc03537d0f25f1 16-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3360707

Change-Id: Ib40d8813ac713d09ed7b298521fada1a35ecb1d4
pensles/libopensles/IAndroidEffectSend.c
725adfeb08a89c804d2101dd784d6824528f9c55 19-Jan-2011 Glenn Kasten <gkasten@google.com> am 50bccde0: Rename class__ to clazz, this to thiz

* commit '50bccde01980ae803b8656e8b08ecacb65540f50':
Rename class__ to clazz, this to thiz
50bccde01980ae803b8656e8b08ecacb65540f50 18-Jan-2011 Glenn Kasten <gkasten@google.com> Rename class__ to clazz, this to thiz

The JNI naming conventions avoid conflict with C++ reserved words.

Change-Id: I93ad6920bf78c0a02ac4b2650a29c9e11252f731
ilhelm/src/android/android_AVPlayer.cpp
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/data.c
ilhelm/src/data.h
ilhelm/src/desktop/OutputMixExt.h
ilhelm/src/desktop/SLSndFile.h
ilhelm/src/desktop/SndFile.c
ilhelm/src/entry.c
ilhelm/src/itf/I3DCommit.c
ilhelm/src/itf/I3DDoppler.c
ilhelm/src/itf/I3DGrouping.c
ilhelm/src/itf/I3DLocation.c
ilhelm/src/itf/I3DMacroscopic.c
ilhelm/src/itf/I3DSource.c
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IAndroidConfiguration.c
ilhelm/src/itf/IAndroidEffect.cpp
ilhelm/src/itf/IAndroidEffectCapabilities.c
ilhelm/src/itf/IAndroidEffectSend.c
ilhelm/src/itf/IAudioDecoderCapabilities.c
ilhelm/src/itf/IAudioEncoder.c
ilhelm/src/itf/IAudioEncoderCapabilities.c
ilhelm/src/itf/IAudioIODeviceCapabilities.c
ilhelm/src/itf/IBassBoost.c
ilhelm/src/itf/IBufferQueue.c
ilhelm/src/itf/IDeviceVolume.c
ilhelm/src/itf/IDynamicInterfaceManagement.c
ilhelm/src/itf/IDynamicSource.c
ilhelm/src/itf/IEffectSend.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itf/IEngineCapabilities.c
ilhelm/src/itf/IEnvironmentalReverb.c
ilhelm/src/itf/IEqualizer.c
ilhelm/src/itf/ILEDArray.c
ilhelm/src/itf/IMIDIMessage.c
ilhelm/src/itf/IMIDIMuteSolo.c
ilhelm/src/itf/IMIDITempo.c
ilhelm/src/itf/IMIDITime.c
ilhelm/src/itf/IMetadataExtraction.c
ilhelm/src/itf/IMetadataTraversal.c
ilhelm/src/itf/IMuteSolo.c
ilhelm/src/itf/IObject.c
ilhelm/src/itf/IOutputMix.c
ilhelm/src/itf/IOutputMixExt.c
ilhelm/src/itf/IPitch.c
ilhelm/src/itf/IPlay.c
ilhelm/src/itf/IPlaybackRate.c
ilhelm/src/itf/IPrefetchStatus.c
ilhelm/src/itf/IPresetReverb.c
ilhelm/src/itf/IRatePitch.c
ilhelm/src/itf/IRecord.c
ilhelm/src/itf/ISeek.c
ilhelm/src/itf/IStreamInformation.c
ilhelm/src/itf/IThreadSync.c
ilhelm/src/itf/IVibra.c
ilhelm/src/itf/IVirtualizer.c
ilhelm/src/itf/IVisualization.c
ilhelm/src/itf/IVolume.c
ilhelm/src/locks.c
ilhelm/src/locks.h
ilhelm/src/objects/C3DGroup.c
ilhelm/src/objects/CAudioPlayer.c
ilhelm/src/objects/CAudioRecorder.c
ilhelm/src/objects/CEngine.c
ilhelm/src/objects/CMediaPlayer.c
ilhelm/src/objects/COutputMix.c
ilhelm/src/sles.c
ilhelm/src/sles_allinclusive.h
ilhelm/src/sync.c
bcb42c63029c8a7da6a4020562ff3f7861b6f945 19-Jan-2011 Glenn Kasten <gkasten@google.com> am 7110872a: Merge "Replace obsolete comment" into honeycomb

* commit '7110872a4d1fa5b7be18b3529523a7fd91f3cc58':
Replace obsolete comment
673314a5d1976673bb76ccb21a6a1a2ab43c4dc1 19-Jan-2011 Glenn Kasten <gkasten@google.com> am ce2466b3: Merge "JNI is obsolete" into honeycomb

* commit 'ce2466b32a38c3a4cd54e5f05b69c650cb719525':
JNI is obsolete
d5e285cb9b6b239b630658416c216ad102d6e04f 19-Jan-2011 Bryan Mawhinney <bryanmawhinney@google.com> am 7672988d: Minor API change in NuCachedSource2

* commit '7672988d52b27a5c6579543efd48a564e0c459d8':
Minor API change in NuCachedSource2
7110872a4d1fa5b7be18b3529523a7fd91f3cc58 18-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Replace obsolete comment" into honeycomb
ce2466b32a38c3a4cd54e5f05b69c650cb719525 18-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "JNI is obsolete" into honeycomb
d6e2e8c57844dbe18c76b3f7ee799f8726c8f859 18-Jan-2011 Glenn Kasten <gkasten@google.com> JNI is obsolete

Change-Id: Ic89b9b8875af6ce13cd96d8c0c944e8878805093
ilhelm/src/Android.mk
ilhelm/src/objects/CMediaPlayer.c
bf9f17276af22574d79465af81f3f1c3182bbb6a 18-Jan-2011 Glenn Kasten <gkasten@google.com> Replace obsolete comment

Change-Id: I9eb825ece4562d1af742f0851da77c5c9811fe17
ilhelm/src/MPH_to.c
7672988d52b27a5c6579543efd48a564e0c459d8 18-Jan-2011 Bryan Mawhinney <bryanmawhinney@google.com> Minor API change in NuCachedSource2

approxDataRemaining now returns more info about the stream status.

Change-Id: I5549edb3765eb07fcfa5340b8755263e0e0ee196
ilhelm/src/android/android_SfPlayer.cpp
3c39e98658beeb2fcefd21208af49127b8f8c9bc 17-Jan-2011 Glenn Kasten <gkasten@google.com> am cd087fad: This bug caught in code review (not used yet)

* commit 'cd087fadb8876b06f160f77938c30dbf58c8b21b':
This bug caught in code review (not used yet)
42240c2330082920fcf430efa5610b0866e848f0 17-Jan-2011 Glenn Kasten <gkasten@google.com> am 2eccd4f7: Merge "SMP safety: can\'t peek/poke without a barrier" into honeycomb

* commit '2eccd4f74f1cdaa1eb9bdaef849bfbbf9f1fe810':
SMP safety: can't peek/poke without a barrier
592f9db671f9f5c48121303e760e7830ef68a1f6 17-Jan-2011 Glenn Kasten <gkasten@google.com> am 7252d851: Merge "Re-build the autogen files" into honeycomb

* commit '7252d851cf25973dea25e7c4695ffdb2b76ba508':
Re-build the autogen files
afe4f00122ed6c198aab0088449eff81267bcd47 17-Jan-2011 Glenn Kasten <gkasten@google.com> am 01a4e4fc: Bug 3360707

* commit '01a4e4fc58aa22b1381e370c745ea26bca56dad1':
Bug 3360707
cd087fadb8876b06f160f77938c30dbf58c8b21b 16-Jan-2011 Glenn Kasten <gkasten@google.com> This bug caught in code review (not used yet)

Change-Id: I544447d7a91909258a7d43da1e42e1c98b638c19
ilhelm/src/itf/IVibra.c
2eccd4f74f1cdaa1eb9bdaef849bfbbf9f1fe810 16-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "SMP safety: can't peek/poke without a barrier" into honeycomb
7252d851cf25973dea25e7c4695ffdb2b76ba508 16-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Re-build the autogen files" into honeycomb
504d4d21d183330800a783471af43b2f2e57d026 16-Jan-2011 Glenn Kasten <gkasten@google.com> Re-build the autogen files

Change-Id: Ifd6f97a61168833ae34e8df8f6a6a79df9a9bcd5
ilhelm/src/MPH.h
ilhelm/src/MPH_to.c
ilhelm/src/MPH_to.h
ilhelm/src/OpenSLES_IID.c
ilhelm/src/autogen/IID_to_MPH.c
ilhelm/src/autogen/MPH_to_3DGroup.h
ilhelm/src/autogen/MPH_to_AudioPlayer.h
ilhelm/src/autogen/MPH_to_AudioRecorder.h
ilhelm/src/autogen/MPH_to_Engine.h
ilhelm/src/autogen/MPH_to_LEDDevice.h
ilhelm/src/autogen/MPH_to_Listener.h
ilhelm/src/autogen/MPH_to_MediaPlayer.h
ilhelm/src/autogen/MPH_to_MetadataExtractor.h
ilhelm/src/autogen/MPH_to_MidiPlayer.h
ilhelm/src/autogen/MPH_to_OutputMix.h
ilhelm/src/autogen/MPH_to_Vibra.h
ilhelm/src/interfaces.c
99fe0d68ddc198a532cb1fa71bea2c809fa94c59 16-Jan-2011 Glenn Kasten <gkasten@google.com> SMP safety: can't peek/poke without a barrier

Change-Id: I97a78322b7b93440ad989b7a6aef4ba3c48a2b7f
ilhelm/src/itf/IAndroidEffectCapabilities.c
ilhelm/src/locks.h
ilhelm/src/objects/CEngine.c
01a4e4fc58aa22b1381e370c745ea26bca56dad1 16-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3360707

Change-Id: I4a021ba7fa1f3807a658ee1336bf32b9d6728f3e
ilhelm/src/itf/IAndroidEffectSend.c
3d50f9268ce3d7e6ea68d833ef1a1676bd5caae4 13-Jan-2011 Glenn Kasten <gkasten@google.com> Update SDK level on master branch only

Change-Id: I15f5976ba656673112f2d1ab006fe417a4fccd22
ilhelm/src/itf/IEngine.c
5b4ff0dfa72ad4969ea50d642815650870eacd15 13-Jan-2011 Glenn Kasten <gkasten@google.com> am a855cb96: Merge "Make symlink for libOpenMAXAL.so" into honeycomb

* commit 'a855cb9668ddb11d1cf5fca0d13861174d564ea3':
Make symlink for libOpenMAXAL.so
a855cb9668ddb11d1cf5fca0d13861174d564ea3 13-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Make symlink for libOpenMAXAL.so" into honeycomb
64920ac5322d4aa0350b75a4c4ede40d74173ab4 13-Jan-2011 Glenn Kasten <gkasten@google.com> Make symlink for libOpenMAXAL.so

Change-Id: I06cb66a30a1a543d2c6f7b93428d29d1b90edb2a
ilhelm/src/Android.mk
8134cc92015067c9ea81abea0675fbd0ceb6f183 13-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> am 551f769e: More file renames and header inclusion reorder

* commit '551f769ee0234ca22c97dbbf84d87f2c1e19fa80':
More file renames and header inclusion reorder
551f769ee0234ca22c97dbbf84d87f2c1e19fa80 12-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> More file renames and header inclusion reorder

More file renames and include reordering to separate Android
classes, and the mapping of the C OpenSL ES and OpenMAX AL
function calls to the Android implementation.

Change-Id: Id6f63af80bd581ed9cab495e2c11a86589ecf6c9
ilhelm/src/Android.mk
ilhelm/src/android/AudioPlayer_to_android.cpp
ilhelm/src/android/AudioPlayer_to_android.h
ilhelm/src/android/AudioRecorder_to_android.cpp
ilhelm/src/android/AudioRecorder_to_android.h
ilhelm/src/android/MediaPlayer_to_android.cpp
ilhelm/src/android/MediaPlayer_to_android.h
ilhelm/src/android/OutputMix_to_android.cpp
ilhelm/src/android/OutputMix_to_android.h
ilhelm/src/android/android_AudioPlayer.cpp
ilhelm/src/android/android_AudioPlayer.h
ilhelm/src/android/android_AudioRecorder.cpp
ilhelm/src/android/android_AudioRecorder.h
ilhelm/src/android/android_OutputMix.cpp
ilhelm/src/android/android_OutputMix.h
ilhelm/src/android/android_Player.cpp
ilhelm/src/android/android_Player.h
ilhelm/src/android/android_defs.h
ilhelm/src/classes.h
ilhelm/src/sles_allinclusive.h
82f78e38398936804766de77ec92a79a9624ebbd 12-Jan-2011 Glenn Kasten <gkasten@google.com> am 439af19a: Directory re-organization

* commit '439af19ad7484b0472080e8eb0cd8462a17b0286':
Directory re-organization
439af19ad7484b0472080e8eb0cd8462a17b0286 12-Jan-2011 Glenn Kasten <gkasten@google.com> Directory re-organization

Change-Id: I8e3f12a22e765d36ddefd87edf204735b25474f6
pensles/doc/Doxyfile
pensles/doc/Makefile
pensles/doc/OpenSL_ES_Specification_1.0.1.pdf
pensles/doc/README.txt
pensles/include/OMXAL/OpenMAXAL.h
pensles/include/OMXAL/OpenMAXAL_Android.h
pensles/include/OMXAL/OpenMAXAL_Platform.h
pensles/include/SLES/OpenSLES.h
pensles/include/SLES/OpenSLES_Android.h
pensles/include/SLES/OpenSLES_AndroidConfiguration.h
pensles/include/SLES/OpenSLES_Platform.h
pensles/libopensles/Android.mk
pensles/libopensles/C3DGroup.c
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/CEngine.c
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/COutputMix.c
pensles/libopensles/I3DCommit.c
pensles/libopensles/I3DDoppler.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/I3DLocation.c
pensles/libopensles/I3DMacroscopic.c
pensles/libopensles/I3DSource.c
pensles/libopensles/IAndroidBufferQueue.c
pensles/libopensles/IAndroidConfiguration.c
pensles/libopensles/IAndroidEffect.cpp
pensles/libopensles/IAndroidEffectCapabilities.c
pensles/libopensles/IAndroidEffectSend.c
pensles/libopensles/IAudioDecoderCapabilities.c
pensles/libopensles/IAudioEncoder.c
pensles/libopensles/IAudioEncoderCapabilities.c
pensles/libopensles/IAudioIODeviceCapabilities.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/ILEDArray.c
pensles/libopensles/IMIDIMessage.c
pensles/libopensles/IMIDIMuteSolo.c
pensles/libopensles/IMIDITempo.c
pensles/libopensles/IMIDITime.c
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IMetadataTraversal.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPitch.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/IPrefetchStatus.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IRatePitch.c
pensles/libopensles/IRecord.c
pensles/libopensles/ISeek.c
pensles/libopensles/IStreamInformation.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/IVibra.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/IVisualization.c
pensles/libopensles/IVolume.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/MPH_to.h
pensles/libopensles/MPH_to_3DGroup.h
pensles/libopensles/MPH_to_AudioPlayer.h
pensles/libopensles/MPH_to_AudioRecorder.h
pensles/libopensles/MPH_to_Engine.h
pensles/libopensles/MPH_to_LEDDevice.h
pensles/libopensles/MPH_to_Listener.h
pensles/libopensles/MPH_to_MediaPlayer.h
pensles/libopensles/MPH_to_MetadataExtractor.h
pensles/libopensles/MPH_to_MidiPlayer.h
pensles/libopensles/MPH_to_OutputMix.h
pensles/libopensles/MPH_to_Vibra.h
pensles/libopensles/OpenSLESUT.c
pensles/libopensles/OpenSLESUT.h
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SLSndFile.h
pensles/libopensles/SndFile.c
pensles/libopensles/ThreadPool.c
pensles/libopensles/ThreadPool.h
pensles/libopensles/android_AVPlayer.cpp
pensles/libopensles/android_AVPlayer.h
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_AudioRecorder.h
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/android_LocAVPlayer.cpp
pensles/libopensles/android_LocAVPlayer.h
pensles/libopensles/android_OutputMix.cpp
pensles/libopensles/android_OutputMix.h
pensles/libopensles/android_Player.cpp
pensles/libopensles/android_Player.h
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/android_defs.h
pensles/libopensles/android_prompts.h
pensles/libopensles/android_sles_conversions.h
pensles/libopensles/classes.c
pensles/libopensles/classes.h
pensles/libopensles/data.c
pensles/libopensles/data.h
pensles/libopensles/devices.c
pensles/libopensles/devices.h
pensles/libopensles/entry.c
pensles/libopensles/interfaces.c
pensles/libopensles/itfstruct.h
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/libopensles/platform.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/slesutResult.c
pensles/libopensles/sllog.c
pensles/libopensles/sllog.h
pensles/libopensles/sync.c
pensles/libopensles/trace.c
pensles/libopensles/trace.h
pensles/tests/Android.mk
pensles/tests/automated/Android.mk
pensles/tests/automated/BufferQueue_test.cpp
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestBassBoostPath.cpp
pensles/tests/examples/slesTestEffectCapabilities.cpp
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestEqOutputPath.cpp
pensles/tests/examples/slesTestFeedback.cpp
pensles/tests/examples/slesTestPlayFdPath.cpp
pensles/tests/examples/slesTestRecBuffQueue.cpp
pensles/tests/examples/slesTestSawtoothBufferQueue.cpp
pensles/tests/examples/slesTestSendToPresetReverb.cpp
pensles/tests/examples/slesTestVirtualizerPath.cpp
pensles/tests/listening/Android.mk
pensles/tests/listening/seekTorture.c
pensles/tests/listening/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/slesTestLoopUri.cpp
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
pensles/tests/mimeUri/slesTestPlayUri.cpp
pensles/tests/mimeUri/slesTestPlayUri2.cpp
pensles/tests/mimeUri/slesTestSlowDownUri.cpp
pensles/tests/mimeUri/slesTest_playStates.cpp
pensles/tests/mimeUri_test.cpp
pensles/tests/native-media/Android.mk
pensles/tests/native-media/AndroidManifest.xml
pensles/tests/native-media/jni/Android.mk
pensles/tests/native-media/jni/native-media-jni.c
pensles/tests/native-media/res/drawable/icon.png
pensles/tests/native-media/res/layout/main.xml
pensles/tests/native-media/res/values/strings.xml
pensles/tests/native-media/src/com/example/nativemedia/NativeMedia.java
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/configbq.c
pensles/tests/sandbox/dim.c
pensles/tests/sandbox/dual.c
pensles/tests/sandbox/engine.c
pensles/tests/sandbox/getch.c
pensles/tests/sandbox/intbufq.c
pensles/tests/sandbox/monkey.c
pensles/tests/sandbox/multiplay.c
pensles/tests/sandbox/multithread.c
pensles/tests/sandbox/object.c
pensles/tests/sandbox/outputmix.c
pensles/tests/sandbox/playbq.c
pensles/tests/sandbox/reverb.c
pensles/tests/sandbox/srcsink.c
pensles/tests/sandbox/streamSource/Android.mk
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
pensles/tests/sandbox/urimime.c
pensles/tests/sandbox/xa.c
pensles/tools/hashgen/MPH.h
pensles/tools/hashgen/Makefile
pensles/tools/hashgen/OpenSLES_IID.c
pensles/tools/hashgen/README.txt
pensles/tools/hashgen/frag1.c
pensles/tools/hashgen/frag2.c
pensles/tools/hashgen/frag3.c
pensles/tools/hashgen/hash.sed
pensles/tools/hashgen/interfaces.c
pensles/tools/hashgen/part1.c
pensles/tools/hashgen/part4.c
pensles/tools/hashgen/part6.c
pensles/tools/hashgen/part8.c
pensles/tools/mphtogen/MPH.h
pensles/tools/mphtogen/MPH_to.c
pensles/tools/mphtogen/MPH_to.h
pensles/tools/mphtogen/Makefile
pensles/tools/mphtogen/mphtogen.c
pensles/tools/permute/Makefile
pensles/tools/permute/permute.c
pensles/tools/permute/readme.txt
ilhelm/doc/Doxyfile
ilhelm/doc/Makefile
ilhelm/doc/OpenSL_ES_Specification_1.0.1.pdf
ilhelm/doc/README.txt
ilhelm/include/OMXAL/OpenMAXAL.h
ilhelm/include/OMXAL/OpenMAXAL_Android.h
ilhelm/include/OMXAL/OpenMAXAL_Platform.h
ilhelm/include/SLES/OpenSLES.h
ilhelm/include/SLES/OpenSLES_Android.h
ilhelm/include/SLES/OpenSLES_AndroidConfiguration.h
ilhelm/include/SLES/OpenSLES_Platform.h
ilhelm/src/Android.mk
ilhelm/src/MPH.h
ilhelm/src/MPH_to.c
ilhelm/src/MPH_to.h
ilhelm/src/OpenSLES_IID.c
ilhelm/src/README.txt
ilhelm/src/ThreadPool.c
ilhelm/src/ThreadPool.h
ilhelm/src/android/android_AVPlayer.cpp
ilhelm/src/android/android_AVPlayer.h
ilhelm/src/android/android_AudioPlayer.cpp
ilhelm/src/android/android_AudioPlayer.h
ilhelm/src/android/android_AudioRecorder.cpp
ilhelm/src/android/android_AudioRecorder.h
ilhelm/src/android/android_Effect.cpp
ilhelm/src/android/android_Effect.h
ilhelm/src/android/android_LocAVPlayer.cpp
ilhelm/src/android/android_LocAVPlayer.h
ilhelm/src/android/android_OutputMix.cpp
ilhelm/src/android/android_OutputMix.h
ilhelm/src/android/android_Player.cpp
ilhelm/src/android/android_Player.h
ilhelm/src/android/android_SfPlayer.cpp
ilhelm/src/android/android_SfPlayer.h
ilhelm/src/android/android_StreamPlayer.cpp
ilhelm/src/android/android_StreamPlayer.h
ilhelm/src/android/android_defs.h
ilhelm/src/android/android_prompts.h
ilhelm/src/android/android_sles_conversions.h
ilhelm/src/autogen/IID_to_MPH.c
ilhelm/src/autogen/MPH_to_3DGroup.h
ilhelm/src/autogen/MPH_to_AudioPlayer.h
ilhelm/src/autogen/MPH_to_AudioRecorder.h
ilhelm/src/autogen/MPH_to_Engine.h
ilhelm/src/autogen/MPH_to_LEDDevice.h
ilhelm/src/autogen/MPH_to_Listener.h
ilhelm/src/autogen/MPH_to_MediaPlayer.h
ilhelm/src/autogen/MPH_to_MetadataExtractor.h
ilhelm/src/autogen/MPH_to_MidiPlayer.h
ilhelm/src/autogen/MPH_to_OutputMix.h
ilhelm/src/autogen/MPH_to_Vibra.h
ilhelm/src/classes.c
ilhelm/src/classes.h
ilhelm/src/data.c
ilhelm/src/data.h
ilhelm/src/desktop/OutputMixExt.h
ilhelm/src/desktop/SDL.c
ilhelm/src/desktop/SLSndFile.h
ilhelm/src/desktop/SndFile.c
ilhelm/src/devices.c
ilhelm/src/devices.h
ilhelm/src/entry.c
ilhelm/src/interfaces.c
ilhelm/src/itf/I3DCommit.c
ilhelm/src/itf/I3DDoppler.c
ilhelm/src/itf/I3DGrouping.c
ilhelm/src/itf/I3DLocation.c
ilhelm/src/itf/I3DMacroscopic.c
ilhelm/src/itf/I3DSource.c
ilhelm/src/itf/IAndroidBufferQueue.c
ilhelm/src/itf/IAndroidConfiguration.c
ilhelm/src/itf/IAndroidEffect.cpp
ilhelm/src/itf/IAndroidEffectCapabilities.c
ilhelm/src/itf/IAndroidEffectSend.c
ilhelm/src/itf/IAudioDecoderCapabilities.c
ilhelm/src/itf/IAudioEncoder.c
ilhelm/src/itf/IAudioEncoderCapabilities.c
ilhelm/src/itf/IAudioIODeviceCapabilities.c
ilhelm/src/itf/IBassBoost.c
ilhelm/src/itf/IBufferQueue.c
ilhelm/src/itf/IDeviceVolume.c
ilhelm/src/itf/IDynamicInterfaceManagement.c
ilhelm/src/itf/IDynamicSource.c
ilhelm/src/itf/IEffectSend.c
ilhelm/src/itf/IEngine.c
ilhelm/src/itf/IEngineCapabilities.c
ilhelm/src/itf/IEnvironmentalReverb.c
ilhelm/src/itf/IEqualizer.c
ilhelm/src/itf/ILEDArray.c
ilhelm/src/itf/IMIDIMessage.c
ilhelm/src/itf/IMIDIMuteSolo.c
ilhelm/src/itf/IMIDITempo.c
ilhelm/src/itf/IMIDITime.c
ilhelm/src/itf/IMetadataExtraction.c
ilhelm/src/itf/IMetadataTraversal.c
ilhelm/src/itf/IMuteSolo.c
ilhelm/src/itf/IObject.c
ilhelm/src/itf/IOutputMix.c
ilhelm/src/itf/IOutputMixExt.c
ilhelm/src/itf/IPitch.c
ilhelm/src/itf/IPlay.c
ilhelm/src/itf/IPlaybackRate.c
ilhelm/src/itf/IPrefetchStatus.c
ilhelm/src/itf/IPresetReverb.c
ilhelm/src/itf/IRatePitch.c
ilhelm/src/itf/IRecord.c
ilhelm/src/itf/ISeek.c
ilhelm/src/itf/IStreamInformation.c
ilhelm/src/itf/IThreadSync.c
ilhelm/src/itf/IVibra.c
ilhelm/src/itf/IVirtualizer.c
ilhelm/src/itf/IVisualization.c
ilhelm/src/itf/IVolume.c
ilhelm/src/itfstruct.h
ilhelm/src/locks.c
ilhelm/src/locks.h
ilhelm/src/objects/C3DGroup.c
ilhelm/src/objects/CAudioPlayer.c
ilhelm/src/objects/CAudioRecorder.c
ilhelm/src/objects/CEngine.c
ilhelm/src/objects/CMediaPlayer.c
ilhelm/src/objects/COutputMix.c
ilhelm/src/platform.h
ilhelm/src/sles.c
ilhelm/src/sles_allinclusive.h
ilhelm/src/sllog.c
ilhelm/src/sllog.h
ilhelm/src/sync.c
ilhelm/src/trace.c
ilhelm/src/trace.h
ilhelm/src/ut/OpenSLESUT.c
ilhelm/src/ut/OpenSLESUT.h
ilhelm/src/ut/slesutResult.c
ilhelm/tests/Android.mk
ilhelm/tests/automated/Android.mk
ilhelm/tests/automated/BufferQueue_test.cpp
ilhelm/tests/examples/Android.mk
ilhelm/tests/examples/slesTestBassBoostPath.cpp
ilhelm/tests/examples/slesTestEffectCapabilities.cpp
ilhelm/tests/examples/slesTestEqFdPath.cpp
ilhelm/tests/examples/slesTestEqOutputPath.cpp
ilhelm/tests/examples/slesTestFeedback.cpp
ilhelm/tests/examples/slesTestPlayFdPath.cpp
ilhelm/tests/examples/slesTestRecBuffQueue.cpp
ilhelm/tests/examples/slesTestSawtoothBufferQueue.cpp
ilhelm/tests/examples/slesTestSendToPresetReverb.cpp
ilhelm/tests/examples/slesTestVirtualizerPath.cpp
ilhelm/tests/listening/Android.mk
ilhelm/tests/listening/seekTorture.c
ilhelm/tests/listening/slesTest_playMuteSolo.cpp
ilhelm/tests/mimeUri/Android.mk
ilhelm/tests/mimeUri/slesTestLoopUri.cpp
ilhelm/tests/mimeUri/slesTestPlayStreamType.cpp
ilhelm/tests/mimeUri/slesTestPlayUri.cpp
ilhelm/tests/mimeUri/slesTestPlayUri2.cpp
ilhelm/tests/mimeUri/slesTestSlowDownUri.cpp
ilhelm/tests/mimeUri/slesTest_playStates.cpp
ilhelm/tests/mimeUri_test.cpp
ilhelm/tests/native-media/Android.mk
ilhelm/tests/native-media/AndroidManifest.xml
ilhelm/tests/native-media/jni/Android.mk
ilhelm/tests/native-media/jni/native-media-jni.c
ilhelm/tests/native-media/res/drawable/icon.png
ilhelm/tests/native-media/res/layout/main.xml
ilhelm/tests/native-media/res/values/strings.xml
ilhelm/tests/native-media/src/com/example/nativemedia/NativeMedia.java
ilhelm/tests/sandbox/Android.mk
ilhelm/tests/sandbox/configbq.c
ilhelm/tests/sandbox/dim.c
ilhelm/tests/sandbox/dual.c
ilhelm/tests/sandbox/engine.c
ilhelm/tests/sandbox/getch.c
ilhelm/tests/sandbox/intbufq.c
ilhelm/tests/sandbox/monkey.c
ilhelm/tests/sandbox/multiplay.c
ilhelm/tests/sandbox/multithread.c
ilhelm/tests/sandbox/object.c
ilhelm/tests/sandbox/outputmix.c
ilhelm/tests/sandbox/playbq.c
ilhelm/tests/sandbox/reverb.c
ilhelm/tests/sandbox/srcsink.c
ilhelm/tests/sandbox/streamSource/Android.mk
ilhelm/tests/sandbox/streamSource/slesTestPlayStream.cpp
ilhelm/tests/sandbox/urimime.c
ilhelm/tests/sandbox/xa.c
ilhelm/tools/hashgen/Makefile
ilhelm/tools/hashgen/README.txt
ilhelm/tools/hashgen/frag1.c
ilhelm/tools/hashgen/frag2.c
ilhelm/tools/hashgen/frag3.c
ilhelm/tools/hashgen/hash.sed
ilhelm/tools/hashgen/part1.c
ilhelm/tools/hashgen/part4.c
ilhelm/tools/hashgen/part6.c
ilhelm/tools/hashgen/part8.c
ilhelm/tools/mphtogen/Makefile
ilhelm/tools/mphtogen/mphtogen.c
ilhelm/tools/permute/Makefile
ilhelm/tools/permute/permute.c
ilhelm/tools/permute/readme.txt
2730c3cc90ebfbb2ce56bfec7d430681f10479d6 12-Jan-2011 Glenn Kasten <gkasten@google.com> am a721aa02: Merge "AudioRecorder source format should be NULL not PCM" into honeycomb

* commit 'a721aa02e8b445daab78b1bf95c8458e9c3d0752':
AudioRecorder source format should be NULL not PCM
4ede0e1421b825d8369f22409f699d481a362894 12-Jan-2011 Glenn Kasten <gkasten@google.com> am 9d9456e5: Merge "Ignore the pFormat in some cases per spec" into honeycomb

* commit '9d9456e5a395298cd24f85430a8566c1b075dc46':
Ignore the pFormat in some cases per spec
a721aa02e8b445daab78b1bf95c8458e9c3d0752 12-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "AudioRecorder source format should be NULL not PCM" into honeycomb
9d9456e5a395298cd24f85430a8566c1b075dc46 12-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Ignore the pFormat in some cases per spec" into honeycomb
0ba4f04f84a5d86e6b83c825a69e882965ec4440 12-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> am 331e70b5: OpenMAX AL: support URI and FD as data sources for MediaPlayer

* commit '331e70b5c675222bbd122f7ae515dbda631040fe':
OpenMAX AL: support URI and FD as data sources for MediaPlayer
914cb8c5a686d9316af46797fb7b55a115fe9b29 12-Jan-2011 Glenn Kasten <gkasten@google.com> Ignore the pFormat in some cases per spec

Change-Id: Iac14c558fa7410a4b3de5c89f9e5d475404efcea
pensles/libopensles/data.c
pensles/tests/sandbox/srcsink.c
331e70b5c675222bbd122f7ae515dbda631040fe 11-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenMAX AL: support URI and FD as data sources for MediaPlayer

Add ANDROIDFD as a data locator in OpenMAX AL

Implement playback of URI and FD in the LocAVPlayer class, that
inherits from AVPlayer

Fix bug where Android MediaPlayer resources were not destroyed
when the MediaPlayer object was destroyed.

Share URI and FD internal type definitions between SL and AL

Change-Id: I01d0d170baea4961f09b44339c99a79feba4620d
pensles/include/OMXAL/OpenMAXAL_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/android_AVPlayer.cpp
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_LocAVPlayer.cpp
pensles/libopensles/android_LocAVPlayer.h
pensles/libopensles/android_Player.cpp
pensles/libopensles/android_Player.h
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/android_defs.h
pensles/libopensles/sles_allinclusive.h
d91e367e9e6be7f4675ad3d90501b6a6b70a3779 11-Jan-2011 Glenn Kasten <gkasten@google.com> AudioRecorder source format should be NULL not PCM

Change-Id: I4bfdfa3700685f1705e0430fd4fe15b51ab9cefb
pensles/tests/examples/slesTestFeedback.cpp
e25822931668094a3d0d052d069e040e5aa0028c 11-Jan-2011 Glenn Kasten <gkasten@google.com> am b11def02: Squashed commit of 9 cherry-picks from master

* commit 'b11def0293629d4d44ddbcd8a27c63504fd80ce1':
Squashed commit of 9 cherry-picks from master
b11def0293629d4d44ddbcd8a27c63504fd80ce1 05-Jan-2011 Glenn Kasten <gkasten@google.com> Squashed commit of 9 cherry-picks from master

Android SDK level report is the highest available

Fix bug in seek torture test
This was found because we now do better checking of data locators.

Comment out and decrease log level for play state

Improve error handling and help message in test

Include data source or sink name in log messages

Bug 3326605: AudioRecorder uses wrong channel mask

Don't overwrite previous error in locator check

OpenSLESUT.h is not (yet) a supported header
so remove the symlink from the SLES/ directory

Shared engine between OpenSL ES and OpenMAX AL
pensles/include/SLES/OpenSLESUT.h
pensles/libopensles/C3DGroup.c
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/CEngine.c
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/COutputMix.c
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/IPlay.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_Player.cpp
pensles/libopensles/android_sles_conversions.h
pensles/libopensles/data.c
pensles/libopensles/entry.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/automated/Android.mk
pensles/tests/automated/BufferQueue_test.cpp
pensles/tests/listening/seekTorture.c
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/dual.c
pensles/tests/sandbox/engine.c
pensles/tests/sandbox/object.c
pensles/tests/sandbox/outputmix.c
pensles/tests/sandbox/xa.c
8fa790e5cc00bf3f3f0ad57fecdb63a9857a8d93 11-Jan-2011 Glenn Kasten <gkasten@google.com> Shared engine between OpenSL ES and OpenMAX AL

Change-Id: Idaee7eeb37be1c00ab8c0cf7976163831eb0fb23
pensles/libopensles/C3DGroup.c
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/CEngine.c
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/COutputMix.c
pensles/libopensles/IObject.c
pensles/libopensles/android_Player.cpp
pensles/libopensles/entry.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/dual.c
pensles/tests/sandbox/engine.c
pensles/tests/sandbox/xa.c
0a94ca9b8efdfbca98688859992cf9d791e38bcc 10-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> am 17e76190: OpenMAX AL: declare the XAAndroidSimpleBufferQueueItf interface.

* commit '17e76190c96758588a583d1fa1769246c175b420':
OpenMAX AL: declare the XAAndroidSimpleBufferQueueItf interface.
46bf4b8027f450a43504c23f2cea5e23a3c826e8 09-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> am 871ed9a3: OpenMAX AL: start implementation of XAStreamInformationItf

* commit '871ed9a3f3fff7ea1392c5da8f475144a6e431b3':
OpenMAX AL: start implementation of XAStreamInformationItf
17e76190c96758588a583d1fa1769246c175b420 09-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenMAX AL: declare the XAAndroidSimpleBufferQueueItf interface.

Identical to the SLAndroidSimpleBufferQueueItf interface, with
OpenMAX AL types.

Change-Id: Iefc4f9ffc72f85f543f258d7906367cfedfb9e0b
pensles/include/OMXAL/OpenMAXAL_Android.h
871ed9a3f3fff7ea1392c5da8f475144a6e431b3 09-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenMAX AL: start implementation of XAStreamInformationItf

XAStreamInformationItf is to be used for video size notifications.

Change-Id: I6b0d6b186772b4a66188fba7e4624092cef55c3a
pensles/libopensles/Android.mk
pensles/libopensles/IStreamInformation.c
pensles/libopensles/MPH.h
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_Player.cpp
pensles/libopensles/classes.h
pensles/libopensles/data.h
pensles/libopensles/itfstruct.h
c3b8150d12fe141ad59cdae008ccfcb7543fad0e 07-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> am c09fe859: OpenMAX AL example: remove useless includes

* commit 'c09fe859aabccb8b18e6c857d087686b37d48c1f':
OpenMAX AL example: remove useless includes
c56ab731d61cc1bb01b7b7c6b626e0922d86fb2d 07-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> am dd6b8e09: Initialize video surface from native window

* commit 'dd6b8e09370c75d58e51ae547c2a9d858861a26a':
Initialize video surface from native window
c09fe859aabccb8b18e6c857d087686b37d48c1f 07-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> OpenMAX AL example: remove useless includes

It's no longer necessary to include the OpenSL ES headers in
an OpenMAX AL application for the declaration of
XA_IID_ANDROIDBUFFERQUEUE.

Change-Id: I2077997087ff23db033ab69c498daf8eaaffedc9
pensles/tests/native-media/jni/native-media-jni.c
dd6b8e09370c75d58e51ae547c2a9d858861a26a 06-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> Initialize video surface from native window

When configuring the MediaPlayer object, use the ANativeWindow
pointer given as the video sink to get the display Surface pointer.

Change-Id: I0f78b7634152150ff31bfa096b8ed88ffa918f43
pensles/libopensles/android_AVPlayer.cpp
a74fd0f3f0e03e8d5314ad01975bffa333c57cd9 05-Jan-2011 Glenn Kasten <gkasten@google.com> OpenSLESUT.h is not (yet) a supported header

so remove the symlink from the SLES/ directory

Change-Id: I95e331ac3b94457fe4c1c063069995bc48a659b4
pensles/include/SLES/OpenSLESUT.h
pensles/tests/automated/Android.mk
pensles/tests/automated/BufferQueue_test.cpp
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/engine.c
pensles/tests/sandbox/object.c
pensles/tests/sandbox/outputmix.c
f48fb157403979d4229478ab07377f8a33c08ec5 05-Jan-2011 Glenn Kasten <gkasten@google.com> Don't overwrite previous error in locator check

Change-Id: Ib7c2f1f34691160d881d4a2293b691e52ff01aa4
pensles/libopensles/data.c
e8de33ae9755eba0c10d0c659488a2bb5e84649b 06-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Comment out and decrease log level for play state"
782da109344f416c994e0b93438050c7a3bb59fe 06-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 3326605: AudioRecorder uses wrong channel mask"
c0e32c481b4e706ac72eff78875f511bf83a57f3 06-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Include data source or sink name in log messages"
aa6f56f7f4ad2466a4100390e2ea24e93c8495e2 06-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Fix bug in seek torture test"
cf094cac28eeba87b343e233a9dc3629b143aaeb 06-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Improve error handling and help message in test"
a41e550fd12d1f9dfe43be686cffe33da57ba17a 06-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3326605: AudioRecorder uses wrong channel mask

Change-Id: I466979669e831334b390d0ff381420cf1fe61b98
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_sles_conversions.h
949bfc44cef802982d9a1e8b09cf8308ed1d34dc 06-Jan-2011 Glenn Kasten <gkasten@google.com> Include data source or sink name in log messages

Change-Id: I56ee300bd040581ad1c7e2be7897604730d743d6
pensles/libopensles/data.c
71ce891b9ff336018655d52647dd0472d9a739e8 06-Jan-2011 Glenn Kasten <gkasten@google.com> Improve error handling and help message in test

Change-Id: I0133b3ec0fe061d4be539ce998b81c13f1019593
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
3cd7783445f03e6035dc77eacf7ee73b448b92a1 06-Jan-2011 Glenn Kasten <gkasten@google.com> Comment out and decrease log level for play state

Change-Id: I1844b52b2576b1113a6f1d9698020ccd11666c02
pensles/libopensles/IPlay.c
7c3e443b506b80475896ade79792512a2fb7cac9 05-Jan-2011 Glenn Kasten <gkasten@google.com> Fix bug in seek torture test

This was found because we now do better checking of data locators.

Change-Id: Iaa18426234f034129822c06b2ece4b45764f72f3
pensles/tests/listening/seekTorture.c
97e2eb828d03b8927a83b690dc5f6d5b9f35e215 05-Jan-2011 Glenn Kasten <gkasten@google.com> Android SDK level report is the highest available

Change-Id: I9d868d94261ee9aaf51b851bc95e99c79b84087b
pensles/libopensles/IEngine.c
pensles/tests/sandbox/object.c
3db0a0bc315ee90755396bb3d531d3e1be521960 05-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Remove obsolete USE_BACKPORT"
32f1191568404d88a5bca35d5227387a47b6d072 05-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Move a few FIXME to a separate to-do list"
baf7cdd8fad5dcfa6f60e7065a76ae76e47f00e6 05-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Remove obsolete EQ test code"
61cd35478663ece55c08c6660066ceb0dfe45d88 04-Jan-2011 Glenn Kasten <gkasten@google.com> Move a few FIXME to a separate to-do list

And delete a few FIXME that are obsolete.

Change-Id: Ibc65c26e75f9e9ace81d264760f93384a7fc71a5
pensles/libopensles/IEngine.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/data.c
pensles/libopensles/sles.c
7fc60e0d91d6e6752840fd6ef669f44e1040b0aa 04-Jan-2011 Glenn Kasten <gkasten@google.com> Remove obsolete EQ test code

Change-Id: Iae86d766b382f96d87c2b41f3a6e6f988f54d791
pensles/libopensles/android_Effect.cpp
0b718abd78bd3e4022008fe0492fb76b265d26d1 04-Jan-2011 Glenn Kasten <gkasten@google.com> Remove obsolete USE_BACKPORT

Change-Id: I4e13d4f5c57fa7b676737be89a6b0a9bec6aa65f
Note: the ANDROID rename will be a separate changelist.
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IAndroidEffectSend.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/classes.h
pensles/libopensles/entry.c
pensles/libopensles/itfstruct.h
5dec3aef32260789e5d586cb6db193ce9cc1187a 04-Jan-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix SLAndroidBufferQueueItf callback registration for a MediaPlayer

Add missing break when testing if object is a MediaPlayer.

Change-Id: Ib2796ff65b7434902c5e7910577603f6bd1e817e
pensles/libopensles/IAndroidBufferQueue.c
01eb34eefcb0216a7c09b4217c6a6730d069d913 30-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am 9468a111: Merge "IAndroidEffect.c is actually a c++ file."

* commit '9468a1116bba91c4fabe06a97c266d8332b030aa':
IAndroidEffect.c is actually a c++ file.
9468a1116bba91c4fabe06a97c266d8332b030aa 29-Dec-2010 Jean-Baptiste Queru <jbq@google.com> Merge "IAndroidEffect.c is actually a c++ file."
91984422759673e0a26ba3d48e91db99cb2ece34 26-Dec-2010 Bruce Beare <bruce.j.beare@intel.com> IAndroidEffect.c is actually a c++ file.

The file uses new and delete; It requires -fno-rtti
to correctly build for Android. Since -fno-rtti is only
available (with the 4.2.1 IA toolchain) for g++, we
rename the file.

Change-Id: Ib8cb75c64aeae207f80429795bff663f3e8aee39
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/IAndroidEffect.cpp
f44d15deef27ea81ab1bbb72e8c9917953e7b7f3 16-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Don't trace all OpenSL ES methods in the log

Change-Id: I3039807ef1d056efcd2ab91198f1c9ba706b78eb
pensles/libopensles/Android.mk
1119b7901feaaa15e8562ae261a871467535694a 16-Dec-2010 Glenn Kasten <gkasten@google.com> Clean up the API macros

SL_API and XA_API declare a symbol to be exported by .so.
SLAPIENTRY and XAAPIENTRY are for calling conventions, and are currently unused.
Also unified the 64-bit int types between SL and XA.
Remove obsolete symlinks.

Change-Id: I248f624f3e974f130c62cfc27ce9ad8eb40c0b56
pensles/include/OMXAL/OpenMAXAL_Android.h
pensles/include/OMXAL/OpenMAXAL_Platform.h
pensles/include/OpenSLES.h
pensles/include/OpenSLES_Platform.h
pensles/include/SLES/OpenSLES.h
pensles/include/SLES/OpenSLES_Android.h
pensles/include/SLES/OpenSLES_Platform.h
pensles/libopensles/Android.mk
pensles/libopensles/SLSndFile.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sllog.c
2b89140016d74a963ac1bffc2a9023bdf18f347a 16-Dec-2010 Glenn Kasten <gkasten@google.com> Merge "Test bug fixes"
cf726822d5d32e9821f9b9cec5dfad158208f6e4 16-Dec-2010 Glenn Kasten <gkasten@google.com> Merge "Delete blank line at EOF"
4f2362522a2d4ca36b13b42b585fd856c6155d0e 16-Dec-2010 Glenn Kasten <gkasten@google.com> Merge "Fix portability problem for desktop test build"
7f389db027a3b4b9e0e2acc4f2c216ca72304a80 16-Dec-2010 Glenn Kasten <gkasten@google.com> Fix bad pointer caught by clang static analysis

Change-Id: I6f22f04a93b70a513ac88b1174bc282009969a6a
pensles/libopensles/data.c
17f9a4680ccd7a7b1aafb1331a66b27d2709c784 16-Dec-2010 Glenn Kasten <gkasten@google.com> Fix portability problem for desktop test build

Change-Id: I7bf344f5f7da2b6ce8bdfa7487da7594719fcd4d
pensles/libopensles/classes.c
8c59fec78671d69cea732e91807dae3e791a709f 13-Dec-2010 Glenn Kasten <gkasten@google.com> Delete blank line at EOF

Change-Id: I0786ba4dd49f0e9c289ce96f9208c6f1cd63fb9e
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.h
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/android_OutputMix.h
73d888bb7b15745c6456dc0fab97c39854827d2a 15-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Use NDK API to initialize display surface in OpenMAX AL TS demo.

Use ANativeWindow functions defined in android/native_window_jni.h
to initialize the display surface to be used as video sink by the
OpenMAX AL MediaPlayer.

Change-Id: I36a91f4d9a928efa861ae0c01ea5856d4e36b46f
pensles/tests/native-media/jni/Android.mk
pensles/tests/native-media/jni/native-media-jni.c
3aebab7722e31c96c0d465bba0006c1831bd2729 14-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "OpenMAX AL: set video display surface from video sink"
7f0e925e1a56ab80e60f2381105297184109dbc3 14-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> OpenMAX AL: set video display surface from video sink

Initialize the media player's video surface with the surface pointer
obtained from the Java Surface.
Added notes on parts of the interface that will change, and are
currently in place for the sample code to run, before the
upcoming video initialization changes.

Change-Id: Id606f4bca68d227fa9df863922b880e865f845d5
pensles/include/OMXAL/OpenMAXAL_Android.h
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/android_AVPlayer.cpp
pensles/libopensles/android_AVPlayer.h
pensles/libopensles/android_Player.cpp
pensles/libopensles/android_Player.h
pensles/tests/native-media/jni/native-media-jni.c
fd268d04da3bb01c8815c13c2f50bcd39da0c630 14-Dec-2010 Ying Wang <wangying@google.com> The correct tag is "tests", not "test"

Change-Id: Ib28337b6f2bf2598175dc697950c46a9c7e98b1b
pensles/tests/native-media/Android.mk
pensles/tests/native-media/jni/Android.mk
27a8821eb36f002b81f368a0049f511cfa465d16 14-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Transport stream: handle internal async preparation and play state.

In OpenMAX AL and OpenSL ES, update the Android object state
according to the prepare state (transitions from unitialized to
preparing to ready after a prepare), and correctly use it to
handle play state changes.

Change-Id: Id58fb6d2fdce1a5ccd7ddae135b9969e93cb1ba3
pensles/libopensles/android_AVPlayer.cpp
pensles/libopensles/android_AVPlayer.h
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Player.cpp
pensles/libopensles/android_Player.h
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/android_defs.h
pensles/libopensles/locks.c
pensles/libopensles/sles_allinclusive.h
35161c244a76d0f4af13a01f16a5051af1ca7fca 16-Nov-2010 Glenn Kasten <gkasten@google.com> Test bug fixes

Preset reverb durationInMsec changed from 5000 to 10000.
NDK does not have an independent API level, so use the SDK's API level.
Removed a workaround for a bug which is now fixed in the implementation.
Fix uninitialized variable in test.

Change-Id: Ibaa4f1d2351e8f75290377cadc02ee2709bf720b
pensles/tests/examples/slesTestRecBuffQueue.cpp
pensles/tests/examples/slesTestSendToPresetReverb.cpp
pensles/tests/sandbox/object.c
pensles/tests/sandbox/srcsink.c
6177be78352ea4cb8a5ea676304750b56ee2ddfc 12-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Continue unifying OpenSL ES / OpenMAX AL implementation

Add new header for Android definitions.
Rename the Android object types to be more descriptive (data source,
player).
New Android and volume fields to CMediaPlayer object, initialize
those fields.
Unify play state control between CMediaPlayer and CAudioPlayer.

Change-Id: I23e9c03a88cc29c5a40525edf5693a9d05285e6b
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_Player.cpp
pensles/libopensles/android_Player.h
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/android_defs.h
pensles/libopensles/classes.h
pensles/libopensles/locks.c
pensles/libopensles/sles_allinclusive.h
2f4002b9f37501cd15a7e06cd8e19453d2770f30 10-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Start support for XAAndroidBufferQueueItf in OpenMAX AL

Added an Android OpenMAX AL header for the Android interfaces
Registered the AndroidBufferQueueItf as an explicit
interface on MediaPlayer.
Updated the Java+Native example to register a callback from
which OpenMAX AL can retrieve the data to play
Started unifying the player object used by OpenMAX AL and
OpenSL ES so they use a common class.

Change-Id: I73cec8c802f74767545c91278e5e73c8c7995218
pensles/include/OMXAL/OpenMAXAL.h
pensles/include/OMXAL/OpenMAXAL_Android.h
pensles/include/OMXAL/OpenMAXAL_Platform.h
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/IAndroidBufferQueue.c
pensles/libopensles/IEngine.c
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_AVPlayer.cpp
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Player.cpp
pensles/libopensles/android_Player.h
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/classes.c
pensles/libopensles/classes.h
pensles/libopensles/locks.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/native-media/jni/native-media-jni.c
pensles/tests/native-media/src/com/example/nativemedia/NativeMedia.java
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
07ae4e2417fc17301435a72b85ad80bd4253b6b5 09-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Add superclass for audio-video playback

Change-Id: Ie7f5cb9d789d41c605dc318bbb311aadabce2c96
pensles/libopensles/Android.mk
pensles/libopensles/android_AVPlayer.cpp
pensles/libopensles/android_AVPlayer.h
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
fecea75a4fa8a08509790483154802694fd24eb4 09-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Correct data locator and format check for AndroidBufferQueue source."
4aded37aaa68020601b5d5d6056d437b2330e8d4 09-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Correct data locator and format check for AndroidBufferQueue source.

Change-Id: Ib70391148e2abded57ec0f6028e081f5232ffc31
pensles/libopensles/IEngine.c
pensles/libopensles/data.c
9a709c6410ac6fd3da51dd02dda72071c5bb9310 07-Dec-2010 Glenn Kasten <gkasten@google.com> Native media test app

Change-Id: I2089733b4b4adc1d9da75a9c93c72b7c353c668f
pensles/tests/native-media/Android.mk
pensles/tests/native-media/AndroidManifest.xml
pensles/tests/native-media/jni/Android.mk
pensles/tests/native-media/jni/native-media-jni.c
pensles/tests/native-media/res/drawable/icon.png
pensles/tests/native-media/res/layout/main.xml
pensles/tests/native-media/res/values/strings.xml
pensles/tests/native-media/src/com/example/nativemedia/NativeMedia.java
d032d3dcdd24653b2f283add3a934f4a745596b4 08-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Update use of IStreamListener interface to latest proto

Change-Id: I4dc35a0637094780ffb1b7e4006a60fc256770a9
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/android_StreamPlayer.cpp
da97f083b47fa4442a40ad962ed86a922a537a64 03-Dec-2010 Glenn Kasten <gkasten@google.com> Continue implementation of MediaPlayer object

Add CMediaPlayer.c for the various hooks.
Start implementing Play::SetPlayState for MediaPlayer.
CheckDataSource and Sink now takes a mask of allowed data locator types.
Data source and sink error logs now include the name of the source or sink.

Change-Id: I3702c977dd367a788ce78575e1e2891dafd2c983
pensles/libopensles/Android.mk
pensles/libopensles/CMediaPlayer.c
pensles/libopensles/IAndroidBufferQueue.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEngine.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/IPlay.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/MPH_to_3DGroup.h
pensles/libopensles/MPH_to_AudioPlayer.h
pensles/libopensles/MPH_to_AudioRecorder.h
pensles/libopensles/MPH_to_Engine.h
pensles/libopensles/MPH_to_LEDDevice.h
pensles/libopensles/MPH_to_Listener.h
pensles/libopensles/MPH_to_MediaPlayer.h
pensles/libopensles/MPH_to_MetadataExtractor.h
pensles/libopensles/MPH_to_MidiPlayer.h
pensles/libopensles/MPH_to_OutputMix.h
pensles/libopensles/MPH_to_Vibra.h
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/SndFile.c
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/classes.c
pensles/libopensles/classes.h
pensles/libopensles/data.c
pensles/libopensles/data.h
pensles/libopensles/interfaces.c
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/xa.c
d610b8a08e05ac55d207a900fed001beb72f2e6a 07-Dec-2010 Andreas Huber <andih@google.com> Support for streaming.

Change-Id: I8c4b53b57ceccf076c971d2ac8cd1223ecece094
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/android_StreamPlayer.cpp
db4b3d732f6c7e824fea1892eef011e46eac5f4c 02-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix build: bad member variable rename

Change-Id: Ic6092ce27cf3f82d26398ec2f7fb89c9aa6b4828
pensles/libopensles/android_StreamPlayer.cpp
368576e2564ef4ab5d459be5d065df5e3fdfca24 02-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> StreamPlayer::onPrepare() should synchronously prepare its player

Change-Id: If8ec63e8b93dea2e1810046e05e692755e6a8887
StreamPlayer::onPrepare() should only return when its media player
is done preparing, so other player commands are processed from
the message queue when the player is ready to receive them.
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
2954efc7190ecbe144050d4d72af1d7131bce43a 02-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> Asynchronous prepare() on StreamPlayer

Prepare the StreamPlayer object asynchronously.
Fixes the deadlock issue between the SLAndroidBufferQueue callback
registration and Enqueue() functions.

Change-Id: I76963233f658946db87d0aab6f225bc9e7c8210a
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidBufferQueue.c
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
64e6ae6c2a1aab5f837df796427ff63cb773e79c 01-Dec-2010 Jean-Michel Trivi <jmtrivi@google.com> More support for SLAndroidBufferQueueItf

Implement Enqueue()
Store "caller" interface to use in the AndroidBufferQueue
callback.
Update test app in sandbox to use the callback to read
from a file and enqueue buffers directly.

Change-Id: I68413731d311532b08f8f13577e3ca81c033fcd4
pensles/libopensles/IAndroidBufferQueue.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
0ed2690aa6d6a41a653713e7a961c1a7d0cd6cfb 01-Dec-2010 Glenn Kasten <gkasten@google.com> Start implementing CreateMediaPlayer

Add CMediaPlayer class.
Add IEngine_CreateMediaPlayer handler.
Add OpenMAX AL native display data locator and raw image data format.
Add OpenMAX AL I/O devices: camera and radio.

Change-Id: Ie99c09110ac9fdcd98bf0bfc487c6e3fcde58f19
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/MPH_to.c
pensles/libopensles/MPH_to.h
pensles/libopensles/MPH_to_MediaPlayer.h
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/classes.c
pensles/libopensles/classes.h
pensles/libopensles/data.c
pensles/libopensles/data.h
pensles/libopensles/entry.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/xa.c
pensles/tools/mphtogen/mphtogen.c
34a2d76d36b5b50a5792963b14ab2ce3bfed1086 30-Nov-2010 Glenn Kasten <gkasten@google.com> Start splitting up sles_allinclusive.h.

This is the low-hanging fruit only.
Will do the harder parts later.

Change-Id: Ib85ffae7891e1f980dc1f7807df00c1d59df58a5
pensles/libopensles/classes.h
pensles/libopensles/data.h
pensles/libopensles/itfstruct.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/trace.h
6fef336e1df494c3bbf2004832c45e1b42369c89 30-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> Support for the SLAndroidBufferQueueItf interface

Rename AndroidStreamSource to AndroidBufferQueue.
Add prototype for SLAndroidBufferQueue functions.
Update sandbox test app to use the new interface.

Change-Id: Ib82180c22e5cf0dd982b4a9bb132667cd2ac4dd7
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidBufferQueue.c
pensles/libopensles/IAndroidStreamSource.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/classes.c
pensles/libopensles/data.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
a930d729ff2249eaa0b45a5e61c70bebad45f698 29-Nov-2010 Glenn Kasten <gkasten@google.com> Continued work on OpenMAX AL engine APIs

Added xaCreateEngine as synonym for slCreateEngine,
but not yet reference counted to share same object with slCreateEngine.
Added the beginnings of a XA_IID_ENGINE engine interface
but still needs more work.
Added simple xa test app.
New extension: ANDROID_SDK_LEVEL_10 (not NDK per digit).
Split up sles.c:
- Move data source, sink, locator, format code to data.c
- Move global entry points to entry.c
- Collect all engine-related code into CEngine.c
- Collect all device-related code into devices.c

Change-Id: I9fdeed1e29f698869f409014a39401999ac84e5f
pensles/include/OMXAL/OpenMAXAL.h
pensles/include/OMXAL/OpenMAXAL_Platform.h
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IEngine.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/MPH_to_3DGroup.h
pensles/libopensles/MPH_to_AudioPlayer.h
pensles/libopensles/MPH_to_AudioRecorder.h
pensles/libopensles/MPH_to_Engine.h
pensles/libopensles/MPH_to_LEDDevice.h
pensles/libopensles/MPH_to_Listener.h
pensles/libopensles/MPH_to_MetadataExtractor.h
pensles/libopensles/MPH_to_MidiPlayer.h
pensles/libopensles/MPH_to_OutputMix.h
pensles/libopensles/MPH_to_Vibra.h
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/classes.c
pensles/libopensles/data.c
pensles/libopensles/devices.c
pensles/libopensles/entry.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/xa.c
pensles/tools/hashgen/Makefile
185c2b9bd386e079b4ab99d07ca16d79342aa55f 23-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> Control MediaPlayer instance from SL ES interfaces

Implement transport control on StreamPlayer.
Store the StreamPlayer in CAudioPlayer as an sp<>
In StreamPlayer: create a media player from the
mediaplayerservice, and implement the IStreamSource
interface to get data fromt the application
callback.
Note that the SLDataLocator_AndroidStreamer and
SLAndroidStreamSourceItf are very much in flux
at the moment.

Change-Id: I11035aafcefd59aad99d1fec9fd54a622e6d1e0f
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/IAndroidStreamSource.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
3be625f40588941aa23e35fed5cb693ddc9718da 08-Nov-2010 Glenn Kasten <gkasten@google.com> Prepare for merged OpenMAX AL and OpenSL ES engine

Field mEngine is now a reference to CEngine instead of IEngine.
Restore Android.mk.
Move mThreadPool, mEqPresetNames, mEqNumPresets from IEngine to CEngine.
IEngineCapabilities_QueryLEDCapabilities and
IEngineCapabilities_QueryVibraCapabilities are now non-static
so that they can be shared by OpenMAX AL's IEngine.
IEngineCapabilities is now required in the build, used by OpenMAX AL IEngine.
The default MPH tables now depend on USE_DESIGNATED_INITIALIZER,
and generate tables for other C compilers programmatically.
Updated comments in MPH.h.
Removed conditionals from MPH_to.c so that non-GNU tables can be built more easily.
Make the interface ID hash generator less specific about hashing algorithm.
Re-build interface ID hash tables.
Update IID_to_MPH.c based on hashgen.
Add generated MPH_to_*.h.
Remove Android dependency.

Change-Id: Icdf89eedc825f9e52bc264b22d923ae157244ed3
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/COutputMix.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/MPH_to_3DGroup.h
pensles/libopensles/MPH_to_AudioPlayer.h
pensles/libopensles/MPH_to_AudioRecorder.h
pensles/libopensles/MPH_to_Engine.h
pensles/libopensles/MPH_to_LEDDevice.h
pensles/libopensles/MPH_to_Listener.h
pensles/libopensles/MPH_to_MetadataExtractor.h
pensles/libopensles/MPH_to_MidiPlayer.h
pensles/libopensles/MPH_to_OutputMix.h
pensles/libopensles/MPH_to_Vibra.h
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_Effect.cpp
pensles/libopensles/interfaces.c
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
pensles/tests/sandbox/multithread.c
pensles/tools/hashgen/Makefile
pensles/tools/hashgen/frag2.c
pensles/tools/hashgen/frag3.c
pensles/tools/hashgen/part1.c
pensles/tools/mphtogen/MPH.h
pensles/tools/mphtogen/MPH_to.c
pensles/tools/mphtogen/MPH_to.h
pensles/tools/mphtogen/Makefile
pensles/tools/mphtogen/mphtogen.c
935dd61f52dc7683e00f3cd338e0c8c25eb21409 20-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> Set the MediaPlayer data source from a SL_DATALOCATOR_ANDROIDSTREAMER

Use the data locator information to initialize the data source
of the MediaPlayer instance used in the StreamPlayer object.
Register the callback only when the player is stopped.
Added callback events that can be passed from the application
to the implementation to synchronously signal events.

Change-Id: I1fc52d8d46b2bcf8ca11ab0e4d44d40e704ddbfc
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/IAndroidStreamSource.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/sles.c
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
30b37d645028e65515f46ef866cc16b56d079e74 19-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Maintain a MediaPlayer instance inside StreamPlayer"
eec5a1f49a4af68b543e99633e2cb7a8513d922f 19-Nov-2010 James Dong <jdong@google.com> Merge "Support 64-bit file size/offset"
dd3fabcfda3b762f2219ccc7d27ea4319f646db0 19-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> Maintain a MediaPlayer instance inside StreamPlayer

StreamPlayer is the object that abstracts for OpenSL ES the
playback of elementary streams. It encapsulates a MediaPlayer
instance which will handle the playback. This CL simply
creates and deletes a MediaPlayer instance during the life-cycle
of StreamPlayer.

Change-Id: I5d56dca72fa05496fcbd0b60a064a6b955494387
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
26f4740dcf05c434de6dfa7519b9435756e653c1 19-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> More support for SL_DATALOCATOR_ANDROIDSTREAM

- add test app in sandbox: based on playUri with different data
locator
- new object, StreamPlayer, that will encapsulate the life-cycle
of the new MediaPlayer object that implements the streaming.

Change-Id: Idfdb00e8622ff18d131465d11178979232ee04f8
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_StreamPlayer.cpp
pensles/libopensles/android_StreamPlayer.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/streamSource/Android.mk
pensles/tests/sandbox/streamSource/slesTestPlayStream.cpp
80077bb59501217577339abc0159efbe614b80bc 17-Nov-2010 James Dong <jdong@google.com> Support 64-bit file size/offset

o This patch depends on the patch in the media framework to support 64-bit file size/offset

Change-Id: Ie26b4ac70eb45654ee9ccc3961b4cc5690468c14
pensles/libopensles/android_SfPlayer.cpp
59a7fe026775e3b61c74f44ebd83267c02517d30 13-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> Definition of a new data locator and interface for streaming.

Change-Id: Ib929749beca048be46187cabbf466981d81143e7
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidStreamSource.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
224ea55c9d01cb631d0cb23be94b9769f3f99159 11-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> Bug 3183484 OpenSL ES: add support for the AUDIO_SOURCE_VOICE_COMMUNICATION record source.

Change-Id: Icc593bdf2cc6ef7f61537661a82f63a46dc8693f
pensles/include/SLES/OpenSLES_AndroidConfiguration.h
pensles/libopensles/android_AudioRecorder.cpp
fa312a2e1794d41a21864e4ce520d9bbabfd645c 23-Oct-2010 Glenn Kasten <gkasten@google.com> am e3d47748: Merge "Fix bug 3112893 in handling of container size" into gingerbread

Merge commit 'e3d47748d093dde0290863bffa4db2f59d5245d8'

* commit 'e3d47748d093dde0290863bffa4db2f59d5245d8':
Fix bug 3112893 in handling of container size
fb2f6624689e2d61800add7108d2e70191eef5b3 23-Oct-2010 Glenn Kasten <gkasten@google.com> am 202d57f8: Merge "Bug 3101247 - move track ownership" into gingerbread

Merge commit '202d57f8783ee65d20f6d38b870205fd4cad9e66'

* commit '202d57f8783ee65d20f6d38b870205fd4cad9e66':
Bug 3101247 - move track ownership
2b8e0af45709f8aaadfc119c9d36198a20105c6e 23-Oct-2010 Glenn Kasten <gkasten@google.com> am 7e34a3c0: Bug 3102561 - Tests only

Merge commit '7e34a3c054d9b81b68007a1e94b661d5e209b897'

* commit '7e34a3c054d9b81b68007a1e94b661d5e209b897':
Bug 3102561 - Tests only
e3d47748d093dde0290863bffa4db2f59d5245d8 23-Oct-2010 Glenn Kasten <gkasten@google.com> Merge "Fix bug 3112893 in handling of container size" into gingerbread
202d57f8783ee65d20f6d38b870205fd4cad9e66 23-Oct-2010 Glenn Kasten <gkasten@google.com> Merge "Bug 3101247 - move track ownership" into gingerbread
72018e7db99736eb056c79623a9e04ce83cadf1b 22-Oct-2010 Glenn Kasten <gkasten@google.com> Bug 3101247 - move track ownership

Preliminary fix for torture test failure - move track ownership

Change-Id: I4c9de6a85cc0bd594f16bdb1a5de61f5f268cfdb
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
7e34a3c054d9b81b68007a1e94b661d5e209b897 18-Oct-2010 Glenn Kasten <gkasten@google.com> Bug 3102561 - Tests only

Make the multi-thread test more stressful, to crash more often.
New tests: playbq, srcsink, monkey.
In monkey, re-enable destroy at difficult times.
Add support for testing player insert reverb to the reverb test.
Note: building playbq is disabled by default because it needs libsndfile.

Change-Id: I592ea5f567bddc61174e7d41bc5b36ce32d2b6b8
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/intbufq.c
pensles/tests/sandbox/monkey.c
pensles/tests/sandbox/multiplay.c
pensles/tests/sandbox/multithread.c
pensles/tests/sandbox/playbq.c
pensles/tests/sandbox/reverb.c
pensles/tests/sandbox/srcsink.c
e11613513c7aff7d76b4273babed99bbc259d45e 19-Oct-2010 Glenn Kasten <gkasten@google.com> Fix bug 3112893 in handling of container size

Change-Id: Iafa1f823351e5849501ffc613f06940be27e9c6b
pensles/libopensles/sles.c
65b1a6732652e7f870dc84ae302a7cc211b9aaf2 21-Oct-2010 Adam Momtaz <amomtaz@google.com> am 9e617254: Bug# 3111274 - Dump raw audio to file for automated audio quality analysis

Merge commit '9e6172548bb344c24962c8a57274281e4315feba'

* commit '9e6172548bb344c24962c8a57274281e4315feba':
Bug# 3111274 - Dump raw audio to file for automated audio quality analysis
9e6172548bb344c24962c8a57274281e4315feba 14-Oct-2010 Adam Momtaz <amomtaz@google.com> Bug# 3111274 - Dump raw audio to file for automated audio quality analysis

This change is compiled for userdebug builds only.
The change enables raw audio capture of transcoded music.
The capture is written to file and used for audio quality analysis against the source audio.
This capture feature is OFF by default even for userdebug builds and requires setting a system property to enable it.

Change-Id: I6d895a2fe3ef9741fea490fe2513404a50c4d4b7
pensles/libopensles/Android.mk
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
75c90ba4d1b10f92a3270100465067fa05ad6739 19-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> am 62afe516: Fix bug 3106530 Don\'t report unhandled AudioTrack events as errors

Merge commit '62afe51646a7299deb7476ff39b4604e421cf433'

* commit '62afe51646a7299deb7476ff39b4604e421cf433':
Fix bug 3106530 Don't report unhandled AudioTrack events as errors
62afe51646a7299deb7476ff39b4604e421cf433 18-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 3106530 Don't report unhandled AudioTrack events as errors

Unhandled AudioTrack events were reported as errors, which is
a bug. Added case for EVENT_BUFFER_END and EVENT_LOOP_END. This
covers all events an AudioTrack is expected to generate.

Change-Id: I9ee067f3d42c1d545286001a5702bc606233df9d
pensles/libopensles/android_AudioPlayer.cpp
a10cb58ab3e9cbd21784fc98c324213905aae3cd 18-Oct-2010 Glenn Kasten <gkasten@google.com> am 5d9d9153: Merge "Fix bug 3101835 - play state crash" into gingerbread

Merge commit '5d9d9153fe819ae0f3dd9c53fec109dc4ecf64d9'

* commit '5d9d9153fe819ae0f3dd9c53fec109dc4ecf64d9':
Fix bug 3101835 - play state crash
2df94c9c75d3cae85503f1439517dd01acbf4ec8 18-Oct-2010 Glenn Kasten <gkasten@google.com> am 67829bfd: Bug 3102561 - Tests and examples only

Merge commit '67829bfddb97775be06af15dd8181611b4af581e'

* commit '67829bfddb97775be06af15dd8181611b4af581e':
Bug 3102561 - Tests and examples only
f4ec4305466e3f7b35a1ade6c1b4f30de336a226 18-Oct-2010 Glenn Kasten <gkasten@google.com> am 227b8b5f: Fix bug 3101211, partial fix for bug 3101247

Merge commit '227b8b5fe36d5385bbb23d63198bc8e72bfda5d3'

* commit '227b8b5fe36d5385bbb23d63198bc8e72bfda5d3':
Fix bug 3101211, partial fix for bug 3101247
b6ff0c0bda797b6dd0efcafe4a3b33650fc60a6a 18-Oct-2010 Glenn Kasten <gkasten@google.com> am 5c3ca268: Merge "Bug 3102561 - Clean up reverb test" into gingerbread

Merge commit '5c3ca268853169e457ae7874ba992ce36e894f97'

* commit '5c3ca268853169e457ae7874ba992ce36e894f97':
Bug 3102561 - Clean up reverb test
069f1d276b0efeb655be7db0c363b1a6855e74fd 18-Oct-2010 Jean-Baptiste Queru <jbq@google.com> Merge aef1e3da from gingerbread-plus-aosp

Change-Id: I3bfc9d261829332f6c6f2cd4c09be3ea104f0767
5d9d9153fe819ae0f3dd9c53fec109dc4ecf64d9 16-Oct-2010 Glenn Kasten <gkasten@google.com> Merge "Fix bug 3101835 - play state crash" into gingerbread
67829bfddb97775be06af15dd8181611b4af581e 13-Oct-2010 Glenn Kasten <gkasten@google.com> Bug 3102561 - Tests and examples only

Note: the modifications in directory libopensles aid testing,
but have no affect on production builds because they are related
to tracing, which is is disabled by default.

Update feedback test to be more reliable.
Update slesTestPlayUri to exit on prefetch error.
Clean up error and termination handling.
Add comment to record test on how to use it.
Reduce global symbol dependencies when trace is enabled.
Split OpenSLESUT into two files: part that uses printf, and another part that doesn't.
Add SL_RESULT_ prefix to result strings.
slesutResultToString returns NULL for unknown value.
Add multithread torture test.
Compile stream test for non-Android as a no-op.
Improve API test coverage.
Enable assertion checks on test programs.

Change-Id: I6b82026cfa19d2f08cda4c11137e0706e8ff4b8c
pensles/libopensles/Android.mk
pensles/libopensles/OpenSLESUT.c
pensles/libopensles/OpenSLESUT.h
pensles/libopensles/slesutResult.c
pensles/libopensles/trace.c
pensles/tests/automated/BufferQueue_test.cpp
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestEffectCapabilities.cpp
pensles/tests/examples/slesTestFeedback.cpp
pensles/tests/examples/slesTestRecBuffQueue.cpp
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
pensles/tests/mimeUri/slesTestPlayUri.cpp
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/engine.c
pensles/tests/sandbox/multithread.c
pensles/tests/sandbox/object.c
pensles/tests/sandbox/outputmix.c
227b8b5fe36d5385bbb23d63198bc8e72bfda5d3 15-Oct-2010 Glenn Kasten <gkasten@google.com> Fix bug 3101211, partial fix for bug 3101247

IEngine.c: fixed numerous problems found by API test in
Engine::QueryNumSupportedExtensions
Engine::QuerySupportedExtension
Engine::IsExtensionSupported

sles.c:
failed engine create due to resource error did not return correct value

locks.c:
The mutex lock log usually indicates there is a deadlock. However,
it can also happen when there is heavy lock contention, such as
during the multithread torture test. Since it may be may be normal
behavior, I downgraded this log to a warning.

CEngine.c, ThreadPool.h, sles_allinclusive.h, sync.c, Android.mk:
Thread torture test was crashing on all platforms. Partial fix for Android:
- disable sync thread on Android
- disable async realize and async add interface on Android as they are not well tested

COutputMix.c:
Multiple output mixes were incorrectly handled on desktop. The
changed lines are under a non-Android conditional, so don't affect
production builds. But they are necessary in order to develop the
multithread torture test and measure code coverage using it.

Change-Id: I9003e97e0f84d9dc106622b0c925384c8ed61a7e
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/COutputMix.c
pensles/libopensles/IEngine.c
pensles/libopensles/ThreadPool.h
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
5c3ca268853169e457ae7874ba992ce36e894f97 16-Oct-2010 Glenn Kasten <gkasten@google.com> Merge "Bug 3102561 - Clean up reverb test" into gingerbread
63c78cf61d4760d569181cf6028396ad3b9e3be1 15-Oct-2010 Glenn Kasten <gkasten@google.com> Bug 3102561 - Clean up reverb test

Change-Id: If573c06134810eafd4d41efeb938fa23ae77c2da
pensles/tests/sandbox/reverb.c
a41e4d61ece0c605b63858a5332db0a867381597 15-Oct-2010 Glenn Kasten <gkasten@google.com> Fix bug 3101835 - play state crash

If a prefetch fails due to invalid data source,
then the application sets play state to PLAYING, it used to crash.

Change-Id: Iaba98c596005715ca6c057de543fa0921225e74c
pensles/libopensles/android_SfPlayer.cpp
aef1e3da5566f5cf3f7a90f1501fba2f8eec4e8f 15-Oct-2010 Andreas Huber <andih@google.com> Include the framework copy of the OpenMAX headers instead of referencing external/opencore.

Change-Id: I935b8f2851f4bfc244178131acaa913377efa1c2
related-to-bug: 3101573
pensles/libopensles/Android.mk
733e4c2ce203292eb363a893db804eeda96dc2fe 15-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> am ffbd220f: Fix bug 3094729 Support AAC+ in OpenSL ES

Merge commit 'ffbd220f34d275c6231cac8db8f3b50aa16be2b2'

* commit 'ffbd220f34d275c6231cac8db8f3b50aa16be2b2':
Fix bug 3094729 Support AAC+ in OpenSL ES
8202895ad18ea1988edf892e871fe2416d161f73 15-Oct-2010 Glenn Kasten <gkasten@google.com> am 80b64591: Merge "Make log less noisy" into gingerbread

Merge commit '80b645911cfc4ddbd8c011efe55c502cd03c7908'

* commit '80b645911cfc4ddbd8c011efe55c502cd03c7908':
Make log less noisy
12bdad178d87099bb705be52b08b5b8628cbf4f1 15-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> am 98a1f3f4: Fix bug 3090610 Report an error on AAC+

Merge commit '98a1f3f49f963eb6608771993edc69b2b0d549fa'

* commit '98a1f3f49f963eb6608771993edc69b2b0d549fa':
Fix bug 3090610 Report an error on AAC+
c3c634bd57ec2418a0795fb372d65dd9db6237bd 14-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> am c35fd2e7: Enable aux effect attachment before the AudioTrack creation.

Merge commit 'c35fd2e7ba670b1024a920ebf007b0fa1d92c969'

* commit 'c35fd2e7ba670b1024a920ebf007b0fa1d92c969':
Enable aux effect attachment before the AudioTrack creation.
ffbd220f34d275c6231cac8db8f3b50aa16be2b2 13-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 3094729 Support AAC+ in OpenSL ES

When playing an AAC+ stream, StageFright will report a change of
configuration in the stream between the prepare phase and the
start of the playback.

The fix consists in retrieving the new configuration in SfPlayer,
create a new AudioTrack with the new parameters, and notify
AudioPlayer that SfPlayer has a new AudioTrack to use. AudioPlayer
will then delete its current AudioTrack, and use the new one
from SfPlayer, after configuring it with the current AudioPlayer
settings.

Change-Id: I23e3ecb2c144b7c4eefae7a970581695545982d4
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
80b645911cfc4ddbd8c011efe55c502cd03c7908 13-Oct-2010 Glenn Kasten <gkasten@google.com> Merge "Make log less noisy" into gingerbread
5c2e518c71082e42e739db3bed478a881a1675fa 13-Oct-2010 Glenn Kasten <gkasten@google.com> Make log less noisy

Change-Id: I6a7cb4c8bfca51eae71fb312b8ff43ce663a4c11
pensles/libopensles/Android.mk
pensles/libopensles/sllog.h
98a1f3f49f963eb6608771993edc69b2b0d549fa 13-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 3090610 Report an error on AAC+

Notify an error occured during prefetching when StageFright
reports that a read error was encountered (other than EOS),
and stop playback.

Change-Id: I0c00ee76b148bd80a26679648322633d6e5533da
pensles/libopensles/android_SfPlayer.cpp
ddf2f9a0797458d760a15bb8c5d6ec5a645d29fb 13-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> am 521de5ed: Stop preparing the player if an audio track cannot be found.

Merge commit '521de5ed291f559f536fd429521b00c67e756725'

* commit '521de5ed291f559f536fd429521b00c67e756725':
Stop preparing the player if an audio track cannot be found.
a43964cb8707fe15af4f6c554ba289200d65b8c1 13-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> am 09f19a9d: Merge "Notify when prefetching fails" into gingerbread

Merge commit '09f19a9d2a340c00429797ca6a21778b99796818'

* commit '09f19a9d2a340c00429797ca6a21778b99796818':
Notify when prefetching fails
c35fd2e7ba670b1024a920ebf007b0fa1d92c969 12-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> Enable aux effect attachment before the AudioTrack creation.

When an OpenSL ES AudioPlayer is playing content from a URI or FD,
the AudioTrack it plays on is only created once prefetching is
far along enough that the playback properties are known (channel
count, word size and sample rate). This happens after Realize()
is called on the AudioPlayer. If, before the AudioTrack is created,
the SLEffectSendItf interface is used to configure the aux send
for that player, there is no AudioTrack to configure.

The fix consists in keeping track of the effect the track needs
to be attached to, and with what level. Once the track is
created, and it gets configured (volume, mutes, channel solos,
marker callbacks) we also attach it to the aux effect if
necessary.

Change-Id: I12230a8cbf7dc3876d3713a006b9702d44e9d6e5
pensles/libopensles/IEngine.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/sles_allinclusive.h
d7112925e1237bd83d507f59e6ba536e2f1d4d52 12-Oct-2010 Glenn Kasten <gkasten@google.com> am 6f217820: Workaround for build error on sim-eng

Merge commit '6f2178206003119ad446457c9110abad15223b77'

* commit '6f2178206003119ad446457c9110abad15223b77':
Workaround for build error on sim-eng
52a1f8f5383241deb8bee174d7615d8a50236b33 12-Oct-2010 Glenn Kasten <gkasten@google.com> am e8fb8eb3: Add support for 8-bit and 48 kHz PCM

Merge commit 'e8fb8eb310dc5ee5a262701a9386b78428b661d7'

* commit 'e8fb8eb310dc5ee5a262701a9386b78428b661d7':
Add support for 8-bit and 48 kHz PCM
061dd1729e36ccd87dfe052115de6c54305986fc 12-Oct-2010 Glenn Kasten <gkasten@google.com> am 1168fe38: Fix build warnings

Merge commit '1168fe388b96340ada641b7e0da1ca18b270af3a'

* commit '1168fe388b96340ada641b7e0da1ca18b270af3a':
Fix build warnings
99d5bfd87ad309aa6624acb24335ab6b24aff71a 12-Oct-2010 Glenn Kasten <gkasten@google.com> am 4d7c8c74: Test cleanup

Merge commit '4d7c8c742d5b09895e7ce3d07d314b6ada56123d'

* commit '4d7c8c742d5b09895e7ce3d07d314b6ada56123d':
Test cleanup
521de5ed291f559f536fd429521b00c67e756725 12-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> Stop preparing the player if an audio track cannot be found.

The bug consisted in not exiting from prepare() if an audio track
couldn't be retrieved from the content to play. This is for
instance the case with unsupported file formats.

Change-Id: Ic48ef5c3bfbfc7d16b241eaacfd26fe1b34e1044
pensles/libopensles/android_SfPlayer.cpp
09f19a9d2a340c00429797ca6a21778b99796818 12-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Notify when prefetching fails" into gingerbread
1d55992cb3ea102899cb7799d428960358ad7214 12-Oct-2010 Jean-Michel Trivi <jmtrivi@google.com> Notify when prefetching fails

There is no event in the SLPrefetchStatus event callback in
OpenSL ES 1.0 to indicate a prefetch error. So we signal it by
sending simulataneously two events:
- SL_PREFETCHEVENT_FILLLEVELCHANGE with a level of 0
- SL_PREFETCHEVENT_STATUSCHANGE with a status of
SL_PREFETCHSTATUS_UNDERFLOW

Change-Id: I399ea3474e6cc7796c940401306ca9a076fac4e2
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_prompts.h
pensles/tests/mimeUri/slesTestPlayUri.cpp
6f2178206003119ad446457c9110abad15223b77 11-Oct-2010 Glenn Kasten <gkasten@google.com> Workaround for build error on sim-eng

This is not a good long-term fix.

target SharedLib: libOpenSLES (out/host/linux-x86/pr/sim/obj/SHARED_LIBRARIES/libOpenSLES_intermediates/LINKED/libOpenSLES.so)
out/host/linux-x86/pr/sim/obj/SHARED_LIBRARIES/libOpenSLES_intermediates/IAndroidEffect.o:(.data.rel.ro._ZTIN7android12SortedVectorINS_16key_value_pair_tImPNS_11AudioEffectEEEEE[typeinfo for android::SortedVector<android::key_value_pair_t<unsigned long, android::AudioEffect*> >]+0x10): undefined reference to `typeinfo for android::SortedVectorImpl'
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/pr/sim/obj/SHARED_LIBRARIES/libOpenSLES_intermediates/LINKED/libOpenSLES.so] Error 1

Change-Id: Iea6678d31d0f747651285e76f2c2e616937bfbd7
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidEffect.c
df312cdf75e08fcf71c02f67724da8c118edbe70 11-Oct-2010 Glenn Kasten <gkasten@google.com> am d78ef680: More tests and bug fixes

Merge commit 'd78ef68025c4de08bffaa318d0057d8affac81a1'

* commit 'd78ef68025c4de08bffaa318d0057d8affac81a1':
More tests and bug fixes
e8fb8eb310dc5ee5a262701a9386b78428b661d7 11-Oct-2010 Glenn Kasten <gkasten@google.com> Add support for 8-bit and 48 kHz PCM

Change-Id: I9e4ab432dc966d0eb531457b0ca2661d0626255a
pensles/libopensles/android_AudioPlayer.cpp
1168fe388b96340ada641b7e0da1ca18b270af3a 11-Oct-2010 Glenn Kasten <gkasten@google.com> Fix build warnings

Change-Id: I449da85b97901a632591dd16a52cb924a2722883
pensles/tests/listening/seekTorture.c
pensles/tests/sandbox/getch.c
pensles/tests/sandbox/intbufq.c
pensles/tests/sandbox/reverb.c
pensles/tests/sandbox/urimime.c
4d7c8c742d5b09895e7ce3d07d314b6ada56123d 11-Oct-2010 Glenn Kasten <gkasten@google.com> Test cleanup

Fix bug in QueryEffect test - was not re-initializing the name length.
Add QueryEffect test for over-writing the name buffer.
Don't create output with VOLUME or NULL interfaces.
Use <stdlib.h> symbolic names for exit codes instead of 0 and 1.
Remove Android-style logging from examples; use only printf.
Remove extra blank lines in test output.
Remove the MAX_NUMBER_OUTPUT_DEVICES macro.
Use <unistd.h> to declare usleep.
Remove obsolete #include statements.
Fix build warnings.

Change-Id: I8d198a317246b3894f104edf7c9f317a51593d07
pensles/tests/examples/slesTestBassBoostPath.cpp
pensles/tests/examples/slesTestEffectCapabilities.cpp
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestEqOutputPath.cpp
pensles/tests/examples/slesTestPlayFdPath.cpp
pensles/tests/examples/slesTestRecBuffQueue.cpp
pensles/tests/examples/slesTestSawtoothBufferQueue.cpp
pensles/tests/examples/slesTestSendToPresetReverb.cpp
pensles/tests/examples/slesTestVirtualizerPath.cpp
pensles/tests/listening/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/slesTestLoopUri.cpp
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
pensles/tests/mimeUri/slesTestPlayUri.cpp
pensles/tests/mimeUri/slesTestPlayUri2.cpp
pensles/tests/mimeUri/slesTestSlowDownUri.cpp
pensles/tests/mimeUri/slesTest_playStates.cpp
pensles/tests/mimeUri_test.cpp
pensles/tests/sandbox/configbq.c
pensles/tests/sandbox/multiplay.c
pensles/tests/sandbox/reverb.c
pensles/tests/sandbox/urimime.c
25aeebfd85f88bb7d472b6d8a6bd510ed622f1c7 10-Oct-2010 Glenn Kasten <gkasten@google.com> am 9a889c24: Interface testing and bug fixes

Merge commit '9a889c24ace7bbc9659e1531d7a61dc43452d7c0'

* commit '9a889c24ace7bbc9659e1531d7a61dc43452d7c0':
Interface testing and bug fixes
cc7f078c95b9bae1adfeeddf5bd4027f91b8aebf 09-Oct-2010 Glenn Kasten <gkasten@google.com> am 2a25d97e: Object an interface initialization/destroy cleanup

Merge commit '2a25d97e40dbd5dd9195195a3a269095a4932097'

* commit '2a25d97e40dbd5dd9195195a3a269095a4932097':
Object an interface initialization/destroy cleanup
d78ef68025c4de08bffaa318d0057d8affac81a1 07-Oct-2010 Glenn Kasten <gkasten@google.com> More tests and bug fixes

New tests:
- urimime.c tests audio player with URI data source and MIME data format
- dim.c tests DynamicInterfaceManagement
- engine.c new test cases:
- create more than one engine simultaneously
- exit application without destroying engine first

Bug fixes:
- Can't request SLBufferQueueItf or its alias SLAndroidSimpleBufferQueueItf
if the data source is not a buffer queue.
- BufferQueue interface is explicit on AudioPlayer.
- OutputMixExt is unavailable (internal) on AudioPlayer.
- There was a nested mutex lock when resuming a non-suspended interface.
- This implementation supports at most one engine, so check for that
- Class configuration table had wrong entry for DynamicInterfaceManagement
on 4 of 10 classes.

Restore most of the infrastructure for removing interfaces (code review):
- DynamicInterfaceManagement is included, but body of RemoveInterface is compiled
out, and replaced by FEATURE_UNSUPPORTED until all our deinit hooks are clean.
- Remove hook must be called with mutex locked, rather than unlocked as before.
The remove hook is called during IDynamicInterfaceManagement::RemoveInterface
and Object::Destroy, so the entry conditions must be the same.
- Add NULL remove hooks to the interface hook table.

Change-Id: I328dd254ed24a32b220996a6d9592cc8c0f4e943
Miscellaneous:
- Always memset object to garbage in Object::Destroy to catch broken applications.
- Add comments about how GetInterface manipulates the v-table pointer (code review).
- Re-enable DynamicInterfaceManagement for testing the example code.
pensles/libopensles/Android.mk
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IObject.c
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/dim.c
pensles/tests/sandbox/engine.c
pensles/tests/sandbox/urimime.c
9a889c24ace7bbc9659e1531d7a61dc43452d7c0 06-Oct-2010 Glenn Kasten <gkasten@google.com> Interface testing and bug fixes

Add some new tests, and fix the bugs they found.

New and improved tests:
Added output mix API test with focus on interfaces.
Add mute solo and seek test cases to the automated buffer queue test.
Buffer queue configuration test is now listenable:
Buffer queue configuration test now generates a sequence of sine
waves in order so that the listener can tell if each format is
supported correctly.

Bug fixes:
Engine::Create... was not checking if the interface was available
for a particular class. Fixing that bug showed some other bugs
in the class/interface configuration tables.
The effects interfaces is available on an output mix.
The Volume interface is not available on an output mix.
The Object interface can do GetInterface before realized.
OutputMix interface is available on an OutputMix;
needed by the demos/examples in back of book
OutputMix::ReRoute fails if number of output device IDs is not 1.
Improve interface checks on a buffer queue source.
Don't allow mute solo interface on a mono buffer queue.
The earlier code to check for seek interface on a buffer queue
compared by address, which didn't work if application
used a private copy of the GUID. Now compares using the
MPH which will work in all cases.
Buffer queue, effect send, and mute solo are explicit interfaces on audio player.
slCreateEngine was not publishing the engine object.

Miscellaneous cleanup:
Removed the hard-coded fake device ID constants in
OutputMix::ReRoute that were there just for testing.
In Engine::Create..., log an error for all unsupported interfaces, not just the first one.
Make hash generator build again:
It turns out interfaces.c is needed, even though it duplicates
OpenSLESUT.c. Restore from 1a6bb4f8e738c9387dc9629db294ea5de618a53c.
Remove some redundant comments.

Change-Id: Iddabe73e298b69a44f3b43ed224c918eb95961a1
pensles/libopensles/Android.mk
pensles/libopensles/IBassBoost.c
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/automated/BufferQueue_test.cpp
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/configbq.c
pensles/tests/sandbox/outputmix.c
2a25d97e40dbd5dd9195195a3a269095a4932097 05-Oct-2010 Glenn Kasten <gkasten@google.com> Object an interface initialization/destroy cleanup

Prior to this, object and interface fields were being initialized
and deinitialized in random places. This resulted in some real and
potential leaks, especially in the case of partial object construction.
There were even some places where fields were not being initialized
at all.

Details:

Move destructor for AndroidEffectCapabilities from CEngine::Destroy
to IAndroidEffectCapabilities deinit hook.
Move destructor for equalizer preset names from CEngine::Destroy
to IEngine deinit hook.
In Object::Destroy, call deinitializer for each initialized interface,
regardless whether it was ever exposed.
Remove double initialization of mStepSize in IPlaybackRate constructor.
Remove obsolete logs.
Add expose hooks that are called when interface is requested in
Engine::Create... or by DynamicInterface::AddInterface.
Always initialize all interfaces, even if not exposed
Fix typos in same-line comments on INTERFACE_ constants.
Add new interface state INITIALIZED: uninitialized -> initialized -> exposed.
DynamicInterface::Remove sets interface state to initialized (but
not exposed), instead of uninitialized.
Add explicit constructor calls to initialize fields in C structs
(e.g. smart pointers), using placement new. See also build warning
which was turned off with -Wno-invalid-offsetof.
Add comments about per-instance fields not associated with an interface.
Add default initializations for all per-instance fields that are
not associated with an interface, in case the object is only partially
constructed and then needs to be destroyed due to an error.
Add placement new comments.
Update comments on private per-instance fields not associated with an interface.
Move effect clears from the containing object destructor
(CAudioPlayer_Destroy and COutputMix_Destroy) to the interface
destructor. In this process this caught a bug that environmental
reverb and preset reverb were not being destroyed properly for an
audio player.
Add comments on interface hooks.
Add entries for interface destructors.
Add placement new (explicit constructor) and explicit destructor calls
for C++ fields in C struct.
Fix template instantiation error.
Move explicit calls to IBufferQueue_Destroy (now renamed to
IBufferQueue_deinit) from CAudioPlayer_Destroy and CAudioRecorder_Destroy
to be implicit via the BufferQueue interface deinit hook.
ThreadSync interface destructor now logs a warning if
ThreadSync::EnterCriticalSection was active at Engine::Destroy
Add some comments.
Clean up gMonitorFp close code.
Fix typo in log message.
Fix DynamicInterface to handle distinction between UNINITIALIZED and
INITIALIZED states for an interface, and to call the optional expose hook.
Do not use memset per interface, because the size of the last interface is unknown.
Set the v-table pointer while lock is held.
Add curlies to if statements.
Log errors if interfaces active during Object::Destroy, instead of asserting.
Log a warning if interface requests an interface but it is not available,
and is optional.
Add log with the class name and address of each new object.
Mark only interfaces with init hooks as INITIALIZED; others are UNINITIALIZED.

Change-Id: Ibb9c1b5f21e6195af6b20b2f7a5c7157905b735b
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/CEngine.c
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/IAndroidEffectCapabilities.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IObject.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IRecord.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_OutputMix.cpp
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
408d2090fc0acf3ebdbf5b3f6f87a92b0d5d4588 04-Oct-2010 Glenn Kasten <gkasten@google.com> am 182f822e: Add new test, fix bugs found by test & code review

Merge commit '182f822e7110bac4947ba8bded1c90ce8050c0fd'

* commit '182f822e7110bac4947ba8bded1c90ce8050c0fd':
Add new test, fix bugs found by test & code review
182f822e7110bac4947ba8bded1c90ce8050c0fd 30-Sep-2010 Glenn Kasten <gkasten@google.com> Add new test, fix bugs found by test & code review

Bugs:
- EnvironmentalReverb::GetEnvironmentalReverbProperties left mutex
unlocked at end.
- buffer queue configuration test revealed not checking enough
combinations
- would have failed conformance test in a couple places
- replace peek locks by shared locks for SMP
- undocumented symbols were being exported by library
- fix handling of EffectSend for MIDI player

New test:
- Add reverb test

Miscellaneous:
- Move some FIXME to to-do list where they are easier to organize
- Fix typos in name of profile constant
- EffectSend::IsEnabled sets enabled = false for unsupported aux effect.
- Add curlies to if statements.
- Add more error logging.
- Fix indentation in switch statement.
- Add comments to makefile.

Details:
- Reduce visibility of libOpenSLESUT symbols.
- Use LOCAL_STATIC_LIBRARIES := libOpenSLESUT where needed in
applications.
- Move FIXME for OEM configuration, interface, SDL, Sndfile,
buffer queue, destroy to to-do list
- For SDL, disallow buffer queue with source not 44.1 kHz because it
is hard-wired to 44.1 kHz and there is no sample rate converter.
- return successful result for enabled effect send on unsupported
MIDI player
for future conformance testing

Change-Id: I39cb543169996f78c16e3ac363ea6157a9242743
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CEngine.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/MPH_to.c
pensles/libopensles/SndFile.c
pensles/libopensles/sles.c
pensles/libopensles/sync.c
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/reverb.c
08a76bc7b720edfc26f685a55d3c2207689c1d43 30-Sep-2010 Glenn Kasten <gkasten@google.com> am 6e13f90b: Merge "Add buffer queue configuration test" into gingerbread

Merge commit '6e13f90bdc8c5354bef9a779a366216d87d9e5d9'

* commit '6e13f90bdc8c5354bef9a779a366216d87d9e5d9':
Add buffer queue configuration test
5261bf4c2dfdb9e24bd4ce4e1a3832164ec030ec 30-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 8c5a381a: Lock tweak between interface and object

Merge commit '8c5a381a265210f069a370565f10ce31bf886346'

* commit '8c5a381a265210f069a370565f10ce31bf886346':
Lock tweak between interface and object
619005262e9739e984fed0aa736929177ff16140 30-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 614d5407: Code cleanup: function name unification.

Merge commit '614d5407d3fac1dae8975722f25e671642041282'

* commit '614d5407d3fac1dae8975722f25e671642041282':
Code cleanup: function name unification.
6e13f90bdc8c5354bef9a779a366216d87d9e5d9 30-Sep-2010 Glenn Kasten <gkasten@google.com> Merge "Add buffer queue configuration test" into gingerbread
cff46f0284202c65154dd7b2f0f5542fc29f4e3f 30-Sep-2010 Glenn Kasten <gkasten@google.com> Add buffer queue configuration test

Add comments to makefile for each test

Change-Id: I8741d93e7aadb02c4b75e3a0a7a81d593dfa7f97
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/configbq.c
1dc0c032f98ef1b114b4c981362974c850711084 30-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 67537364: Fix issues with SLPlaybackRateItf interface

Merge commit '67537364adc48cd6fa56e36d4201428b5d9dedaf'

* commit '67537364adc48cd6fa56e36d4201428b5d9dedaf':
Fix issues with SLPlaybackRateItf interface
8c5a381a265210f069a370565f10ce31bf886346 30-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Lock tweak between interface and object

When locking the interface for the prefetch status, lock the
object instead of the prefetch interface, as it updates
the android object state.

Fix the playState test app.

Change-Id: Ib4e0e99a4cf0720e2b7ebd920fe92f69377f19d9
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/locks.c
pensles/tests/mimeUri/slesTest_playStates.cpp
614d5407d3fac1dae8975722f25e671642041282 29-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Code cleanup: function name unification.

Change-Id: I37790738d81bb8d6b5496467a93c17c6f1385b8f
pensles/libopensles/IBufferQueue.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/locks.c
pensles/libopensles/sles_allinclusive.h
67537364adc48cd6fa56e36d4201428b5d9dedaf 29-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix issues with SLPlaybackRateItf interface

Set rate was not applied when the AudioTrack is created after
prepare completed.
Modified playback rate functions in AudioPlayer to pass a
CAudioPlayer pointer, rather than a pointer to IPlaybackRate
so the rate update function can be queried from the CAudioPlayer.
Added test that exercises the SLPlaybackRateItf interface as
well as content looping.
Simplified evaluation of delay between decode and render to
use a fixed (small) delay that balances time to run the
event looper, and prevents clicks.

Change-Id: I598e9a96e93ef7a7c3603c8467f9d6b36dacd26d
pensles/libopensles/Android.mk
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/android_prompts.h
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/slesTestSlowDownUri.cpp
92b81f26ee4137ced5cacbf2250b4e06192ed628 29-Sep-2010 Glenn Kasten <gkasten@google.com> am 3dbc7f94: Merge "Add MuteSolo checks for audio player and fix bugs" into gingerbread

Merge commit '3dbc7f94e5273737f68cf42898945b3ce92b565e'

* commit '3dbc7f94e5273737f68cf42898945b3ce92b565e':
Add MuteSolo checks for audio player and fix bugs
3dbc7f94e5273737f68cf42898945b3ce92b565e 29-Sep-2010 Glenn Kasten <gkasten@google.com> Merge "Add MuteSolo checks for audio player and fix bugs" into gingerbread
ec3a5a5555af3ed612b70dc54ef96998a9256b9a 28-Sep-2010 Glenn Kasten <gkasten@google.com> Add MuteSolo checks for audio player and fix bugs

The specification says "This [SLMuteSoloItf] interface cannot be
exposed on a player whose audio format is mono." This has a lot of
implications ...

Deny an explicit interface request for SLMuteSoloItf at audio player
creation time if the player is known pre-realize to have mono channel
count (e.g. PCM buffer queue).

Deny a GetInterface on MuteSolo if channel count is known to be mono,
but allow it if the channel count is still unknown.

When DynamicSource (or its replacement) is implemented, it will be
possible for the application to have done a GetInterface successfully,
and then to change the source such that the MuteSolo interface is
no longer valid. In that case, return SL_RESULT_FEATURE_UNSUPPORTED
for most MuteSolo operations, if called when channel count is unknown
or is mono. We _do_ allow MuteSolo::GetChannelCount to succeed if
channel count is known to be mono.

Enhance the URI-based mute solo test to check some of the above,
and the interactive buffer queue test to get and test the channel count.

Add curly braces to if statements.

Other bug fixes:
- Do not rely on peek locks; they don't work on SMP.
- Channel count and sample rate were not being set correctly
for buffer queue data source audio players.
- CreateAudioPlayer and AudioRecorder were both referring to
application pointers more than once, with the possibility of
reading inconsistent data.

Change-Id: Ie0109cbddc0aff8a56c0b53d989fb2be823e627b
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IEngine.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IObject.c
pensles/libopensles/sles.c
pensles/tests/listening/slesTest_playMuteSolo.cpp
pensles/tests/sandbox/intbufq.c
a54ed25b35ca2ab7d6c84f1da7a26f75bb17e59a 28-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 59c678dd: Merge "Fix bug 3004701 do not prefetch during Realize." into gingerbread

Merge commit '59c678ddde54c2532ff64c6414f45e9a150d7651'

* commit '59c678ddde54c2532ff64c6414f45e9a150d7651':
Fix bug 3004701 do not prefetch during Realize.
c42d1d507fe32ddd4f786d3888b28a235fcb3e6b 28-Sep-2010 Glenn Kasten <gkasten@google.com> am daccf40f: Enable and test more interface ID queries

Merge commit 'daccf40f73133a1220cc4ab8af45c59b1df9eeae'

* commit 'daccf40f73133a1220cc4ab8af45c59b1df9eeae':
Enable and test more interface ID queries
314db4f19e81d4202c0a633bf99e57022e1b0c0d 28-Sep-2010 Glenn Kasten <gkasten@google.com> am bf414743: Add engine interface test

Merge commit 'bf4147433b223bf98a7177d778d422a89c90e965'

* commit 'bf4147433b223bf98a7177d778d422a89c90e965':
Add engine interface test
59c678ddde54c2532ff64c6414f45e9a150d7651 28-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix bug 3004701 do not prefetch during Realize." into gingerbread
b8e52590d14863805bc1ba9d58efa95cbf8ae302 28-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 3004701 do not prefetch during Realize.

Removed unused Android object states in enum, not used in
play state machine.
Made SfPlayer responsible for the creation of its
AudioTrack once it knows the sample rate and number of
channels of the content to play once it's done
preparing.
Added notification from SfPlayer to signal when it's
done preparing. This informs of the audio characteristics
and kicks off the content prefetching.
In the AudioPlayer realize:
- do not start the prefetching, do it when the player
is set to PAUSED
- don not create the AudioTrack, do it when SfPlayer
is done preparing.

Change-Id: Ic345040e71cef0e5953ea47366930d1dfbc5e761
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/android_prompts.h
pensles/libopensles/sles_allinclusive.h
pensles/tests/mimeUri/Android.mk
daccf40f73133a1220cc4ab8af45c59b1df9eeae 28-Sep-2010 Glenn Kasten <gkasten@google.com> Enable and test more interface ID queries

Enable Engine::IEngine_QueryNumSupportedInterfaces and
Engine::QuerySupportedInterfaces.
Add object ID test.
Return SL_RESULT_FEATURE_UNSUPPORTED from Engine::Create... if the
corresponding class is not configured..
Add slesutObjectIDToString to utility toolkit.

Change-Id: I28b8beff71d65e7eccd558e586652bb606c89848
pensles/libopensles/IEngine.c
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLESUT.c
pensles/libopensles/OpenSLESUT.h
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/object.c
b5b7456111019644f54445da56d4562fb492b20b 28-Sep-2010 Glenn Kasten <gkasten@google.com> am 0673981b: Merge "Destroy for an unrealized engine was hanging" into gingerbread

Merge commit '0673981b5807e901fc8f025052bcac0ac3654a7f'

* commit '0673981b5807e901fc8f025052bcac0ac3654a7f':
Destroy for an unrealized engine was hanging
23ac48fb148e0516ca0aa05a43956b1d1722b27e 28-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 6e31131d: Remove old stream type code that\'s not used anymore.

Merge commit '6e31131dc148be814134987404c89ee946e432ca'

* commit '6e31131dc148be814134987404c89ee946e432ca':
Remove old stream type code that's not used anymore.
bf4147433b223bf98a7177d778d422a89c90e965 28-Sep-2010 Glenn Kasten <gkasten@google.com> Add engine interface test

Change-Id: I5c1fd1e8ab6dc050f416f28708e3ef218910cd8d
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/engine.c
0673981b5807e901fc8f025052bcac0ac3654a7f 28-Sep-2010 Glenn Kasten <gkasten@google.com> Merge "Destroy for an unrealized engine was hanging" into gingerbread
6e31131dc148be814134987404c89ee946e432ca 28-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Remove old stream type code that's not used anymore.

Change-Id: I66e0d93ffa8fbf8fd64642d5554026513d561153
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
cc484cd4b7ede364e95209eb0468df3bc51f50e5 28-Sep-2010 Glenn Kasten <gkasten@google.com> Destroy for an unrealized engine was hanging

Change-Id: Ib11b15fe40726d2f9aad0c54fa66382824c95cfa
pensles/libopensles/CEngine.c
80cc44a7818195a54bfee5b3f59d6bf4014fa036 27-Sep-2010 Glenn Kasten <gkasten@google.com> am db7f4632: Initialize mEffects if audio player partly created

Merge commit 'db7f4632cb8a69a17bb1cbba82ed03ba36591e88'

* commit 'db7f4632cb8a69a17bb1cbba82ed03ba36591e88':
Initialize mEffects if audio player partly created
db7f4632cb8a69a17bb1cbba82ed03ba36591e88 27-Sep-2010 Glenn Kasten <gkasten@google.com> Initialize mEffects if audio player partly created

See https://android-git.corp.google.com/g/70088
File opensles/libopensles/android_AudioPlayer.cpp
Line 1111: if (NULL != pAudioPlayer->mAndroidEffect.mEffects) {
mAndroidEffect.mEffects is not initialized to NULL.

Change-Id: Ic6b952748c7a8024c797d7bec4a26cb138fa8840
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/IAndroidEffectCapabilities.c
pensles/libopensles/android_AudioPlayer.cpp
21b5b6ae23cde89e5a3b74327fcf14e703ec01ee 27-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 33d87958: Fix AudioTrack sessionId bug

Merge commit '33d8795864d722be83cac7c6e7bc675991a7d7dc'

* commit '33d8795864d722be83cac7c6e7bc675991a7d7dc':
Fix AudioTrack sessionId bug
33d8795864d722be83cac7c6e7bc675991a7d7dc 27-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix AudioTrack sessionId bug

The sessionId associated with an AudioPlayer is initialized during
its creation. The sessionId was not passed to the AudioTrack
constructor.

Change-Id: I9ccafd707313367f8da78013575cd6048637f240
pensles/libopensles/android_AudioPlayer.cpp
662235bd79ddee9395b2e6302db13c33870246ef 27-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 3d2470a7: Remove unused Android object type AUDIOTRACK_PUSH

Merge commit '3d2470a7f5c936182f1d6179b290814d8a620f9d'

* commit '3d2470a7f5c936182f1d6179b290814d8a620f9d':
Remove unused Android object type AUDIOTRACK_PUSH
3d2470a7f5c936182f1d6179b290814d8a620f9d 27-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Remove unused Android object type AUDIOTRACK_PUSH

Change-Id: I1ab5494ae47239eed0b0a18dc817e3b0ead37871
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/sles_allinclusive.h
7dcf3d9d2a9589a6d4f6ac3d366281f2570688c3 27-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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.
9037062468ac020b7c64992c6dba4dda066a5454 27-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Support content looping for URI and FD data sources." into gingerbread
6cb166eb8284fb9c9cf2d26daf7eb802168d710d 26-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/ISeek.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/slesTestLoopUri.cpp
ca6f65177df5a57ddf7137ea1b2351b454abaf76 27-Sep-2010 Glenn Kasten <gkasten@google.com> am 4a03820f: Restore the 2 unmerged equalizer tests

Merge commit '4a03820f21ebdcb5fe949b9f88aa710417686d69'

* commit '4a03820f21ebdcb5fe949b9f88aa710417686d69':
Restore the 2 unmerged equalizer tests
4a03820f21ebdcb5fe949b9f88aa710417686d69 26-Sep-2010 Glenn Kasten <gkasten@google.com> Restore the 2 unmerged equalizer tests

Change-Id: I667cfdddd34fff7017fedab9ee84e954c1c9f690
pensles/tests/examples/Android.mk
pensles/tests/examples/Android.mk_
pensles/tests/examples/slesTestEqOutputPath.cpp
cfab97c881c88bd1fe29056f95dca09ecf55dc5a 26-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am d570bd0a: Log which effect initialization function is used.

Merge commit 'd570bd0affa00595dc79c0b7fbaf735de4c51407'

* commit 'd570bd0affa00595dc79c0b7fbaf735de4c51407':
Log which effect initialization function is used.
d570bd0affa00595dc79c0b7fbaf735de4c51407 26-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Log which effect initialization function is used.

Change-Id: I7c5c7440e50d65faf3dadf360e7a3a23dc5d7781
pensles/libopensles/android_Effect.cpp
9c44a402ec75facedcd02ce836107533f8745442 26-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 90417a10: Implement buffer cache fill level and status notification.

Merge commit '90417a10fd988e37bc4e51b61c2fb8e70301345c'

* commit '90417a10fd988e37bc4e51b61c2fb8e70301345c':
Implement buffer cache fill level and status notification.
096c51610ce4a422067218de532c24e50ea51759 26-Sep-2010 Glenn Kasten <gkasten@google.com> am 0cfa1a91: Temporary fix for broken build

Merge commit '0cfa1a912815f84c086c285e63cb01a4f0b1f93f'

* commit '0cfa1a912815f84c086c285e63cb01a4f0b1f93f':
Temporary fix for broken build
90417a10fd988e37bc4e51b61c2fb8e70301345c 21-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/tests/mimeUri/slesTestPlayUri.cpp
0cfa1a912815f84c086c285e63cb01a4f0b1f93f 26-Sep-2010 Glenn Kasten <gkasten@google.com> Temporary fix for broken build

Change-Id: I1b02cbe6ce22766ccbab4e8bf040418eba69d6fc
pensles/tests/examples/Android.mk
pensles/tests/examples/Android.mk_
9c924fc8ec1154747961c3a36f2326f0037b8626 26-Sep-2010 Glenn Kasten <gkasten@google.com> am bd2fc031: Replace one configuration hack by another

Merge commit 'bd2fc031926582ee8b0df40673c66dfa4cc45a61'

* commit 'bd2fc031926582ee8b0df40673c66dfa4cc45a61':
Replace one configuration hack by another
bd2fc031926582ee8b0df40673c66dfa4cc45a61 26-Sep-2010 Glenn Kasten <gkasten@google.com> 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
pensles/libopensles/Android.mk
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/examples/slesTestEqOutputPath.cpp
pensles/tests/examples/slesTestRecBuffQueue.cpp
6998d873e3aa59cfdd509bb59eb4e4221cf7b9f7 26-Sep-2010 Glenn Kasten <gkasten@google.com> am e4d6cdb3: Cleanup

Merge commit 'e4d6cdb3bafa5d83aa12686ae9f9a1cfcda0c154'

* commit 'e4d6cdb3bafa5d83aa12686ae9f9a1cfcda0c154':
Cleanup
e4d6cdb3bafa5d83aa12686ae9f9a1cfcda0c154 25-Sep-2010 Glenn Kasten <gkasten@google.com> Cleanup

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

Change-Id: I46e93c61fc0d192118a0f17b5b735ec2118298df
pensles/libopensles/Android.mk
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/SDL.c
pensles/libopensles/interfaces.c
67c760d599ec6803c75798a707e22bc657aff165 25-Sep-2010 Glenn Kasten <gkasten@google.com> am 48969e39: Fix problems found during testing

Merge commit '48969e39faa340d20b6bcab7c7e27c711be85654'

* commit '48969e39faa340d20b6bcab7c7e27c711be85654':
Fix problems found during testing
a5d7c8e6ce79e93a906d095908451cc06f1cfb4c 25-Sep-2010 Glenn Kasten <gkasten@google.com> am 3ac54e4d: Fix bug found by BufferQueue automated test

Merge commit '3ac54e4d6e699467b608a4f0eda6023d50d3cd61'

* commit '3ac54e4d6e699467b608a4f0eda6023d50d3cd61':
Fix bug found by BufferQueue automated test
c17997a4cc268a7f68837ad275ce26edb84323d5 25-Sep-2010 Glenn Kasten <gkasten@google.com> am 51cb31b0: As part of API review, disable incomplete profiles

Merge commit '51cb31b09f6af53402b3fbe7e9de29badc1155a2'

* commit '51cb31b09f6af53402b3fbe7e9de29badc1155a2':
As part of API review, disable incomplete profiles
48969e39faa340d20b6bcab7c7e27c711be85654 24-Sep-2010 Glenn Kasten <gkasten@google.com> 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
pensles/libopensles/android_AudioPlayer.cpp
pensles/tests/automated/BufferQueue_test.cpp
pensles/tests/examples/slesTestRecBuffQueue.cpp
3ac54e4d6e699467b608a4f0eda6023d50d3cd61 23-Sep-2010 Glenn Kasten <gkasten@google.com> Fix bug found by BufferQueue automated test

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

Change-Id: Ib186153bf50ed1311c021d53711ec90d000bdee2
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IOutputMixExt.c
pensles/tests/automated/BufferQueue_test.cpp
51cb31b09f6af53402b3fbe7e9de29badc1155a2 21-Sep-2010 Glenn Kasten <gkasten@google.com> 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
pensles/include/OpenSLES_Android.h
pensles/include/SLES/OpenSLES_Platform.h
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/CEngine.c
pensles/libopensles/COutputMix.c
pensles/libopensles/IAndroidConfiguration.c
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/IAndroidEffectCapabilities.c
pensles/libopensles/IAndroidEffectSend.c
pensles/libopensles/IAudioDecoderCapabilities.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IRecord.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SLSndFile.h
pensles/libopensles/SndFile.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sllog.h
pensles/libopensles/trace.c
5800f0ebc54f5967bf9d39cc3da04feca75783ab 23-Sep-2010 Glenn Kasten <gkasten@google.com> am 1a6bb4f8: Android simple buffer queue locator and interface

Merge commit '1a6bb4f8e738c9387dc9629db294ea5de618a53c'

* commit '1a6bb4f8e738c9387dc9629db294ea5de618a53c':
Android simple buffer queue locator and interface
1a6bb4f8e738c9387dc9629db294ea5de618a53c 22-Sep-2010 Glenn Kasten <gkasten@google.com> 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
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IEngine.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/IRecord.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLESUT.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/SndFile.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_prompts.h
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/examples/slesTestEffectCapabilities.cpp
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestEqOutputPath.cpp
pensles/tests/examples/slesTestFeedback.cpp
pensles/tests/examples/slesTestRecBuffQueue.cpp
pensles/tests/examples/slesTestVirtualizerPath.cpp
pensles/tests/listening/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
pensles/tests/mimeUri/slesTestPlayUri.cpp
pensles/tests/sandbox/intbufq.c
pensles/tools/hashgen/Makefile
pensles/tools/hashgen/README.txt
1a5772bc816870a7ee89c0662774e9baca75588f 22-Sep-2010 Glenn Kasten <gkasten@google.com> am 3060d3cc: Add explicit dependency to utility library.

Merge commit '3060d3cc0207e3ca1b862742d60ffde68e3db817'

* commit '3060d3cc0207e3ca1b862742d60ffde68e3db817':
Add explicit dependency to utility library.
0f57d0e28455db39e5c14f503711269d83287267 22-Sep-2010 Glenn Kasten <gkasten@google.com> resolved conflicts for merge of df384abb to master

Change-Id: Id98b47d4ccc5f3a30b7f945cdebed6b48eef4936
3060d3cc0207e3ca1b862742d60ffde68e3db817 22-Sep-2010 Glenn Kasten <gkasten@google.com> Add explicit dependency to utility library.

Change-Id: I3a85b071b355ac9e0c330a71e6457cb01b665af0
pensles/tests/automated/Android.mk
df384abbb00e2b68b9aa9e3bac88ffa6f168af11 22-Sep-2010 Glenn Kasten <gkasten@google.com> Quick fix for build break, real fix to follow

Change-Id: Ib8542a689a0287fe19cd74b14eceb6b4a8b6afeb
pensles/tests/automated/Android.mk
f9dbe64a4a9574cdb00669814d383997685f2741 22-Sep-2010 Glenn Kasten <gkasten@google.com> am 03716fc6: Update logging

Merge commit '03716fc64636a68ba59881508e80550b948f0f40'

* commit '03716fc64636a68ba59881508e80550b948f0f40':
Update logging
03716fc64636a68ba59881508e80550b948f0f40 20-Sep-2010 Glenn Kasten <gkasten@google.com> 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
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/SndFile.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_OutputMix.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/locks.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sllog.c
pensles/libopensles/sllog.h
pensles/libopensles/trace.c
b2a813cf141b356d9640cda5b55926b82d1317ea 21-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am a0786c52: Fix bug 3022251

Merge commit 'a0786c52adce0defd7021d5718809e790493ebc0'

* commit 'a0786c52adce0defd7021d5718809e790493ebc0':
Fix bug 3022251
a0786c52adce0defd7021d5718809e790493ebc0 21-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES.h
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/IAndroidEffectCapabilities.c
3d18205c6c1c674c627cd44a2e3bc85380eac315 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
10f409d124265019fd5236de777f3d42b6142643 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix bug 3011821 OpenSL ES Volume chain configuration" into gingerbread
420416cc5800af04fb6f86ae269e78a45eafde8e 20-Sep-2010 Glenn Kasten <gkasten@google.com> 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)
8eee85b78b70dd58f7c90b841cc1a18647338924 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 14b8d168: Fix AudioRecorder initialization error.

Merge commit '14b8d1684bd69070f0ce92fccc70771e40b54f94'

* commit '14b8d1684bd69070f0ce92fccc70771e40b54f94':
Fix AudioRecorder initialization error.
d8e952eedd896968add58f5e20cf75562a0bddeb 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/IAndroidEffectSend.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.h
8bab86c56f8e59faaf6616cb5267a76d6e24585f 20-Sep-2010 Glenn Kasten <gkasten@google.com> Merge "Enable semi-standard logging (does not use LOG macros)" into gingerbread
79e18e9156c0184720041ac3803e952d5b2723c8 20-Sep-2010 Glenn Kasten <gkasten@google.com> Enable semi-standard logging (does not use LOG macros)

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

Change-Id: I985e2c08d6e86a1664654a2e8a0b8aea145b32ba
pensles/libopensles/Android.mk
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/trace.c
14b8d1684bd69070f0ce92fccc70771e40b54f94 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/android_AudioRecorder.cpp
2c40a1bb4983fc86fbd7c418bc9d48e1a9257b7c 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 558dc028: Fix bug 3009239

Merge commit '558dc0284866620866e2628a14a0e7638bf109ea'

* commit '558dc0284866620866e2628a14a0e7638bf109ea':
Fix bug 3009239
558dc0284866620866e2628a14a0e7638bf109ea 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 3009239

Query AudioRecord position for SLRecordItf->GetPosition()

Change-Id: I1a520b281d44105d34c92fd555e71013d5170c76
pensles/libopensles/IRecord.c
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_AudioRecorder.h
fcd7e601be3e5f7204f8705b0548f7a12a22511a 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 4d99e2d4: Change object state test for SLAndroidConfigurationItf.

Merge commit '4d99e2d4836cc470204fb0806b5431e135dad330'

* commit '4d99e2d4836cc470204fb0806b5431e135dad330':
Change object state test for SLAndroidConfigurationItf.
4d99e2d4836cc470204fb0806b5431e135dad330 20-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Change object state test for SLAndroidConfigurationItf.

Change-Id: Iabd024720f361bcfa50f3a5daa433afa6caa4930
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
f0e8624891cbedba3ed9dcac02a2a6474ebaca6d 19-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am d5c746ba: Remove the SLAndroidStreamTypeItf interface.

Merge commit 'd5c746ba436dfc4605672f4a9f8c0628521a9f21'

* commit 'd5c746ba436dfc4605672f4a9f8c0628521a9f21':
Remove the SLAndroidStreamTypeItf interface.
d5c746ba436dfc4605672f4a9f8c0628521a9f21 18-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidConfiguration.c
pensles/libopensles/IAndroidStreamType.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
d6ce268414104f6d746a332693e97ce377f5bb59 18-Sep-2010 Yu Shan Emily Lau <yslau@google.com> am 50f2c4a4: Merge "Turn on the opensl samples." into gingerbread

Merge commit '50f2c4a4ed85a7309c5b806c900642e8488f653d'

* commit '50f2c4a4ed85a7309c5b806c900642e8488f653d':
Turn on the opensl samples.
fdc0abef796c872de634a4af8077bdb2a3c1c7e5 18-Sep-2010 Glenn Kasten <gkasten@google.com> am 31df22b1: Improve reliability of Object::Destroy / Create

Merge commit '31df22b193ea7c7c331d26a27fa6756a89c8ec3c'

* commit '31df22b193ea7c7c331d26a27fa6756a89c8ec3c':
Improve reliability of Object::Destroy / Create
93e88d24530e32ae9d2dc57487569e2dc402150b 18-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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.
50f2c4a4ed85a7309c5b806c900642e8488f653d 18-Sep-2010 Yu Shan Emily Lau <yslau@google.com> Merge "Turn on the opensl samples." into gingerbread
31df22b193ea7c7c331d26a27fa6756a89c8ec3c 17-Sep-2010 Glenn Kasten <gkasten@google.com> 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
pensles/libopensles/Android.mk
pensles/libopensles/C3DGroup.c
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/COutputMix.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/IAndroidEffectSend.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/android_Effect.cpp
pensles/libopensles/classes.c
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
3cfffc9cb11458782f1294d89df753bacce78a88 18-Sep-2010 Yu Shan Emily Lau <yslau@google.com> Turn on the opensl samples.

Change-Id: I0ca645fe506e8690d960bf113472a400cd422ea3
pensles/tests/examples/Android.mk
pensles/tests/examples/Android.mk_
4e18ff44c76f52102a6cf7d737a91025ca28feae 17-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES_Android.h
pensles/include/SLES/OpenSLES_AndroidConfiguration.h
pensles/libopensles/IAndroidConfiguration.c
pensles/libopensles/IAndroidStreamType.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_AudioRecorder.h
pensles/libopensles/android_prompts.h
pensles/libopensles/sles_allinclusive.h
9b627c79bb7c221195c28e5c6709bce4a9d0e771 17-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am ac5c5fd9: Add example for SLRecordItf callback registration and use.

Merge commit 'ac5c5fd9e7513c046b792662606445ecdef2989c'

* commit 'ac5c5fd9e7513c046b792662606445ecdef2989c':
Add example for SLRecordItf callback registration and use.
ac5c5fd9e7513c046b792662606445ecdef2989c 17-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Add example for SLRecordItf callback registration and use.

Change-Id: Ibcd27f5a49a42ddbcd313b30e7b07b1ce4f13705
pensles/tests/examples/slesTestRecBuffQueue.cpp
f65cafee6473d483241737b4ff0b45ae098841ca 17-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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.
315ebb6278632659f14ea39c6192b3f25bc96825 17-Sep-2010 Glenn Kasten <gkasten@google.com> am 26fec8d0: Make hashgen build again, and update the hashtable

Merge commit '26fec8d02bbcde97ffbdfae58863cdeaae954e7e'

* commit '26fec8d02bbcde97ffbdfae58863cdeaae954e7e':
Make hashgen build again, and update the hashtable
3e94eeeadfa0371449d8bbca7ad46c67742d5c10 17-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Signal recording buffer overrun with SL_RECORDEVENT_HEADSTALLED." into gingerbread
2c4ac10bf53064b57bf32a7a513323e1106388b4 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/IRecord.c
pensles/libopensles/android_AudioRecorder.cpp
26fec8d02bbcde97ffbdfae58863cdeaae954e7e 16-Sep-2010 Glenn Kasten <gkasten@google.com> Make hashgen build again, and update the hashtable

Change-Id: Id0e5a25208adb4cef7f1d04fd3cceaff2a7a4554
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/interfaces.c
pensles/tools/hashgen/Makefile
71b83277911c00b2a4033add7a8ca0ccfb204342 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 91ebb75c: Fix bug 3003630

Merge commit '91ebb75cfa76cc573ced127e59cad7dd950ce08a'

* commit '91ebb75cfa76cc573ced127e59cad7dd950ce08a':
Fix bug 3003630
e02bb8b24e0513324d65e59eb23b2fabc861fa45 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am d48ef8a6: Store sessionId in AudioPlayer.

Merge commit 'd48ef8a6143d7981a03ba1b18b41bf1be75c0838'

* commit 'd48ef8a6143d7981a03ba1b18b41bf1be75c0838':
Store sessionId in AudioPlayer.
91ebb75cfa76cc573ced127e59cad7dd950ce08a 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/IPlay.c
pensles/libopensles/IRecord.c
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_AudioRecorder.h
pensles/libopensles/locks.c
pensles/libopensles/sles_allinclusive.h
ced2725d006a271acd87dfbd817f7aa6a5963527 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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()
6a4a64402fc985b8e40f849a8c8622944eaa2c34 16-Sep-2010 Eric Laurent <elaurent@google.com> am 88eb1c9e: Fixed C/C++ interworking problem in IAndroidEffect

Merge commit '88eb1c9e7a1a86e09fc7c56583414bb974873648'

* commit '88eb1c9e7a1a86e09fc7c56583414bb974873648':
Fixed C/C++ interworking problem in IAndroidEffect
7c079693994d2f1d6574b90fab9dbf0dad0e1062 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 81d6dbae: Merge "Add prefetch status error definitions." into gingerbread

Merge commit '81d6dbae0fa67e80b6aa3b6b886120c3aa4cb045'

* commit '81d6dbae0fa67e80b6aa3b6b886120c3aa4cb045':
Add prefetch status error definitions.
62c25f5152c9130388ec27cab151e4c1ff61be28 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am c998babe: Rename default recording preset to generic.

Merge commit 'c998babeb963f874d4ae02e80d356bc41b80d343'

* commit 'c998babeb963f874d4ae02e80d356bc41b80d343':
Rename default recording preset to generic.
d48ef8a6143d7981a03ba1b18b41bf1be75c0838 16-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/sles_allinclusive.h
2b10d238deaa6df9789c8230fff2453df4a62277 15-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/IEngine.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_OutputMix.cpp
pensles/tests/mimeUri/slesTestPlayUri.cpp
d79fdcc71203f01b0f097907b86d77abf79b712d 15-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am de8654b4: Implement SLAndroidConfigurationItf on AudioRecorder.

Merge commit 'de8654b40c7701ea213c157448cbb96c29522e39'

* commit 'de8654b40c7701ea213c157448cbb96c29522e39':
Implement SLAndroidConfigurationItf on AudioRecorder.
5560f2a05a43152df48291bca5b209444b12bfd8 15-Sep-2010 Glenn Kasten <gkasten@google.com> am 83e00828: Reduce .so size and hide internal global symbols

Merge commit '83e00828044c7f9488dc5d863578939937e8a136'

* commit '83e00828044c7f9488dc5d863578939937e8a136':
Reduce .so size and hide internal global symbols
88eb1c9e7a1a86e09fc7c56583414bb974873648 15-Sep-2010 Eric Laurent <elaurent@google.com> 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
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_OutputMix.cpp
pensles/libopensles/sles_allinclusive.h
81d6dbae0fa67e80b6aa3b6b886120c3aa4cb045 15-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Add prefetch status error definitions." into gingerbread
c998babeb963f874d4ae02e80d356bc41b80d343 15-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Rename default recording preset to generic.

Change-Id: I77144ebcc593001ca60b94f0176fc2287e7400fd
pensles/include/SLES/OpenSLES_AndroidConfiguration.h
pensles/libopensles/android_AudioRecorder.cpp
07c08a29e5c0a8250a5225f57d610eb1250ac225 15-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES.h
pensles/libopensles/IEngine.c
de8654b40c7701ea213c157448cbb96c29522e39 14-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES_AndroidConfiguration.h
pensles/libopensles/IAndroidConfiguration.c
pensles/libopensles/IObject.c
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_AudioRecorder.h
pensles/libopensles/sles_allinclusive.h
pensles/tests/examples/Android.mk_
pensles/tests/examples/slesTestRecBuffQueue.cpp
85eae4c1efd3cdd546e4a37a7df10ccf4440f937 14-Sep-2010 Glenn Kasten <gkasten@google.com> am 4f924ff7: Fix some race conditions and deadlocks.

Merge commit '4f924ff768d761f53db6fa2dbfb794ba7a65e776'

* commit '4f924ff768d761f53db6fa2dbfb794ba7a65e776':
Fix some race conditions and deadlocks.
83e00828044c7f9488dc5d863578939937e8a136 14-Sep-2010 Glenn Kasten <gkasten@google.com> Reduce .so size and hide internal global symbols

Change-Id: I95b63aa1f4da94ad068619ff0944e4ff83fc6fd6
pensles/libopensles/Android.mk
4f924ff768d761f53db6fa2dbfb794ba7a65e776 10-Sep-2010 Glenn Kasten <gkasten@google.com> 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.
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/CEngine.c
pensles/libopensles/COutputMix.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/classes.c
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
11b29d83b3e1540335ab6a312ffed48ebbcf9822 13-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am c7369d04: Add SLAndroidConfigurationItf, enabled on AudioRecorder.

Merge commit 'c7369d04a4b94aca0462d0e0a38c243a80a945a9'

* commit 'c7369d04a4b94aca0462d0e0a38c243a80a945a9':
Add SLAndroidConfigurationItf, enabled on AudioRecorder.
c7369d04a4b94aca0462d0e0a38c243a80a945a9 12-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidConfiguration.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
997bf01f03b3125f9b664a670d85e69b018383e2 12-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 90a8fd23: Hide media player looper from AudioPlayer.

Merge commit '90a8fd23a41ae9feb4f59005eb20f300a4339e33'

* commit '90a8fd23a41ae9feb4f59005eb20f300a4339e33':
Hide media player looper from AudioPlayer.
90a8fd23a41ae9feb4f59005eb20f300a4339e33 12-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles_allinclusive.h
c5f030c8be1b5fd348c1b22d29c27661a9309410 11-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 984c4a1d: Implement the SLAndroidEffectSendItf.

Merge commit '984c4a1d192f83fcd2cf9e333ebe48a32a65b591'

* commit '984c4a1d192f83fcd2cf9e333ebe48a32a65b591':
Implement the SLAndroidEffectSendItf.
984c4a1d192f83fcd2cf9e333ebe48a32a65b591 10-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/IAndroidEffectSend.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
dedc4c1d89fa90a27c4efd9d72d74c1f4b9f4e80 09-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am d6c7ad3c: Definition of SLAndroidEffectSendItf

Merge commit 'd6c7ad3c4d3b3882d051239f9e5df78750d57ba2'

* commit 'd6c7ad3c4d3b3882d051239f9e5df78750d57ba2':
Definition of SLAndroidEffectSendItf
1df51ad41602df04dc69bef7573e4932ea3c7119 09-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 4ad709bd: Fix aux reverb issues:

Merge commit '4ad709bd796914d15a32a35da92b5f39047f5a02'

* commit '4ad709bd796914d15a32a35da92b5f39047f5a02':
Fix aux reverb issues:
9831f687d6a57a047e496a004ea9875df2dd180c 09-Sep-2010 Yu Shan Emily Lau <yslau@google.com> 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.
d6c7ad3c4d3b3882d051239f9e5df78750d57ba2 09-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/include/SLES/OpenSLES_Android.h
4ad709bd796914d15a32a35da92b5f39047f5a02 09-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> 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
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/tests/examples/Android.mk_
pensles/tests/examples/slesTestBassBoostPath.cpp
pensles/tests/examples/slesTestSendToPresetReverb.cpp
c098881f535d11d1a936cd70a061e60bdbd6928f 09-Sep-2010 Yu Shan Emily Lau <yslau@google.com> Fixed the make file which it can build all the sub-dir.
Remove the samples temporary until it's fixed.

Change-Id: I6dd9b15a16c3dcc22ecee1fd1acecaebbd59262f
pensles/tests/Android.mk
pensles/tests/examples/Android.mk
pensles/tests/examples/Android.mk_
fca0873135bef4485834c88be7db44bf8530b188 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 6dbf6148: Fix automated tests testPlayAbsPath and testPlayfilePath

Merge commit '6dbf61484bdd03448395214c2a19e10b3238ac7d'

* commit '6dbf61484bdd03448395214c2a19e10b3238ac7d':
Fix automated tests testPlayAbsPath and testPlayfilePath
6dbf61484bdd03448395214c2a19e10b3238ac7d 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix automated tests testPlayAbsPath and testPlayfilePath

Do not rewind when reaching the end of the stream.

Change-Id: I98fa7cebc2b2d8fa8d10d371cfb78f24fb1ab277
pensles/libopensles/android_SfPlayer.cpp
00a36f0da425294c5f5a303afc79344bef6b24a1 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 5c906e11: Support SLAndroidEffectItf on the OutputMix object.

Merge commit '5c906e11f2749e438fdc6a4433c3bfd9db235356'

* commit '5c906e11f2749e438fdc6a4433c3bfd9db235356':
Support SLAndroidEffectItf on the OutputMix object.
64371c7673d43aeecbb5cb313481c4915911eefd 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am dffefbd7: Finish implementing the SLEnvironmentalReverbItf interface.

Merge commit 'dffefbd7b3b885526df4e9df09b0e089ed422027'

* commit 'dffefbd7b3b885526df4e9df09b0e089ed422027':
Finish implementing the SLEnvironmentalReverbItf interface.
5c906e11f2749e438fdc6a4433c3bfd9db235356 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Support SLAndroidEffectItf on the OutputMix object.

Change-Id: I098dc047ce91848781c9ba18beec5a33abd50e68
pensles/libopensles/MPH_to.c
pensles/libopensles/android_OutputMix.cpp
pensles/libopensles/classes.c
pensles/libopensles/sles_allinclusive.h
019daa68415318019992ce84671891c2534e56cd 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 32cc84f2: Cleanup SLAndroidEffectCapabilitiesItf example.

Merge commit '32cc84f276828480783e4866e383e58326ab207b'

* commit '32cc84f276828480783e4866e383e58326ab207b':
Cleanup SLAndroidEffectCapabilitiesItf example.
18e2534f1336a4d90a2c6b64ec71165dada25584 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 990f7545: Fix bug 2947094

Merge commit '990f7545b17358f184872b1762d77ca88232b5c5'

* commit '990f7545b17358f184872b1762d77ca88232b5c5':
Fix bug 2947094
dffefbd7b3b885526df4e9df09b0e089ed422027 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Finish implementing the SLEnvironmentalReverbItf interface.

Change-Id: I02bbc6a08607c328253257cbdb6a45b675b9d3ff
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/sles_allinclusive.h
32cc84f276828480783e4866e383e58326ab207b 08-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Cleanup SLAndroidEffectCapabilitiesItf example.

Change-Id: I3b73d089fde7f8ada5387f6e030869356a918b4a
pensles/tests/examples/slesTestEffectCapabilities.cpp
990f7545b17358f184872b1762d77ca88232b5c5 07-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 2947094

"multiplay" is a test that creates an AudioPlayer for each file to
play. When a player reaches the paused state, SetPosition (ISeekItf)
is called with a value of 0 (beginning of file). The bug was that
on Android, the player would stop playing after playing the file
once or twice.
The bug was caused by the logic in ISeek.c which checks that the
new seek position is different than the previous one before issuing
a seek command to the player. The fix consists in not checking
the old requested seek position so the command is always issued.
It works on the desktop because the SndFile version was resetting
the mPos field to SL_TIME_UNKNOWN each time SetPosition was called.

While investigating this bug, it was also found that the player
should reset its decode position to 0 each time it reaches the end of
the stream.

Change-Id: I22f2d6480c62ab6e56c28c7ccae2c117888a7639
pensles/libopensles/ISeek.c
pensles/libopensles/android_SfPlayer.cpp
08d7a81d63bfdb5f3915c056badf6e06445e6190 07-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 7c058fbb: Fix deadlock when stopping the player while destroying.

Merge commit '7c058fbbcc7037a6f85698a361b2e9cbfe9d9b62'

* commit '7c058fbbcc7037a6f85698a361b2e9cbfe9d9b62':
Fix deadlock when stopping the player while destroying.
7c058fbbcc7037a6f85698a361b2e9cbfe9d9b62 07-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix deadlock when stopping the player while destroying.

Do not acquire an exclusive lock on the player when querying play
callback and event mask, or updating the playstate.

Not related to fix:
Do not notify the end of the stream has been reached once the player
is stopped.

Change-Id: I9c7e1d96c28d1472ff18174c97544faa8deb0e88
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
680e8cbcf79ff99851406d38a5fd0d9450c786dd 04-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 99e9db49: Store decoded buffer in player instance.

Merge commit '99e9db496f5c2cb07e0e83f061fcbd5487c999d7'

* commit '99e9db496f5c2cb07e0e83f061fcbd5487c999d7':
Store decoded buffer in player instance.
99e9db496f5c2cb07e0e83f061fcbd5487c999d7 04-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Store decoded buffer in player instance.

Do not store decoded buffer reference in message sent from decoder
to renderer, but rather in player instance. This allows access
to buffer between decoding and playback so the media source can
be correctly stopped.

Change-Id: I7f583366d9895db039ca7d0d9e22f36d0d429f55
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
928643b51cbbc82ab69ea7ca87f0952f86e64d56 03-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 5bd7bea2: Implement SLAndroidEffectItf and SLAndroidEffectCapabilities.

Merge commit '5bd7bea2bbc5133d26cdcd8b95d3452bd0116680'

* commit '5bd7bea2bbc5133d26cdcd8b95d3452bd0116680':
Implement SLAndroidEffectItf and SLAndroidEffectCapabilities.
5bd7bea2bbc5133d26cdcd8b95d3452bd0116680 03-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement SLAndroidEffectItf and SLAndroidEffectCapabilities.

Change-Id: Ia2cf6e3f0178189b0ed010690bc9906b61a746a7
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IAndroidAudioEffect.c
pensles/libopensles/IAndroidEffect.c
pensles/libopensles/IAndroidEffectCapabilities.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/MPH_to.h
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestEffectCapabilities.cpp
bf0f01abffec200d6fd5f1d7a0fc067f4dc477db 03-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 34c8a5de: Fix OpenSL ES effect test durations based on audio file duration. Fix make file to build the EQ test.

Merge commit '34c8a5deb922e414bb348f9c5e6b411866518da8'

* commit '34c8a5deb922e414bb348f9c5e6b411866518da8':
Fix OpenSL ES effect test durations based on audio file duration.
34c8a5deb922e414bb348f9c5e6b411866518da8 03-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix OpenSL ES effect test durations based on audio file duration.
Fix make file to build the EQ test.

Change-Id: I509d1f0cea775c4f955c8c23fc27ba313995dd5b
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestBassBoostPath.cpp
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestEqOutputPath.cpp
pensles/tests/examples/slesTestVirtualizerPath.cpp
8fb0d437892062a4573c2e0e7107ad50e5d737e1 02-Sep-2010 Glenn Kasten <gkasten@google.com> am 48e85e37: Improve test app portability for other platforms

Merge commit '48e85e379e506045aca3a33c2c4cf03b3be6d4b1'

* commit '48e85e379e506045aca3a33c2c4cf03b3be6d4b1':
Improve test app portability for other platforms
72d998b948d85258b808bece57c4a8cc97cbf84b 02-Sep-2010 Glenn Kasten <gkasten@google.com> am fa7152d9: More error logging. Correct error code.

Merge commit 'fa7152d9457ae7a3c398fcfd62f29eec4d865b5e'

* commit 'fa7152d9457ae7a3c398fcfd62f29eec4d865b5e':
More error logging. Correct error code.
48e85e379e506045aca3a33c2c4cf03b3be6d4b1 01-Sep-2010 Glenn Kasten <gkasten@google.com> Improve test app portability for other platforms

Change-Id: I8793b7e6f6ebd0f83ff8e5bd534234cd1f4166a2
pensles/libopensles/IEffectSend.c
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestBassBoostPath.cpp
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestEqOutputPath.cpp
pensles/tests/examples/slesTestVirtualizerPath.cpp
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
fa7152d9457ae7a3c398fcfd62f29eec4d865b5e 01-Sep-2010 Glenn Kasten <gkasten@google.com> More error logging. Correct error code.

Normalize error messages to use similar wording, remove "Error:".

Change-Id: I8746d28c0c0ada43e691f7859d0aaeed25a82dbb
pensles/libopensles/android_AudioPlayer.cpp
f76e7835ae3a477ba46462a9d83e17c169422790 02-Sep-2010 Glenn Kasten <gkasten@google.com> am ec7f4ca9: Merge "Verify that no extant objects at engine shutdown" into gingerbread

Merge commit 'ec7f4ca96a160e8134953e5bd9097181342f8aed'

* commit 'ec7f4ca96a160e8134953e5bd9097181342f8aed':
Verify that no extant objects at engine shutdown
ec7f4ca96a160e8134953e5bd9097181342f8aed 01-Sep-2010 Glenn Kasten <gkasten@google.com> Merge "Verify that no extant objects at engine shutdown" into gingerbread
b0a0555e2fcad41d3ee0c45f0f75ed556dbee282 01-Sep-2010 Glenn Kasten <gkasten@google.com> Verify that no extant objects at engine shutdown

Log the total count and ID numbers of any stragglers.
Fix the order of steps in engine shutdown.
Add more comments.

Change-Id: I12b531bcd43c288f9988768193274bad6984748a
pensles/libopensles/CEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/sync.c
pensles/tests/automated/BufferQueue_test.cpp
8eac869231117af98d639b46500baebafbfdac91 01-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 67f98b44: Use AudioSystem constant for global effect session ID, instead of 0.

Merge commit '67f98b44415db86ac64b36e09be9baf090666257'

* commit '67f98b44415db86ac64b36e09be9baf090666257':
Use AudioSystem constant for global effect session ID, instead of 0.
67f98b44415db86ac64b36e09be9baf090666257 01-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Use AudioSystem constant for global effect session ID, instead of 0.

Change-Id: Ib3d236e81da7f0764983fba37ffaa76058aa935c
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_OutputMix.cpp
d4d7ec88aa9c398e12d6e371174155f89ab13720 01-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> am 68817ee6: Support auxiliary effects on OutputMix, and direct and send levels on AudioPlayer.

Merge commit '68817ee6ff2ede1dac61078894d8920fb961061f'

* commit '68817ee6ff2ede1dac61078894d8920fb961061f':
Support auxiliary effects on OutputMix, and direct and send levels
68817ee6ff2ede1dac61078894d8920fb961061f 01-Sep-2010 Jean-Michel Trivi <jmtrivi@google.com> Support auxiliary effects on OutputMix, and direct and send levels
on AudioPlayer.

added global function for mB to attenuation conversion.

Change-Id: Ib7f92397786e4b2e21d6ad51585ac1b542ffab6c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/android_OutputMix.cpp
pensles/libopensles/android_sles_conversions.h
pensles/libopensles/sles_allinclusive.h
bf9b096d0eabe770e57acdd09b32679f19eb654e 01-Sep-2010 Glenn Kasten <gkasten@google.com> am 8756fcc7: Use standard filenames for tests.

Merge commit '8756fcc77cfb64fd753fa8bf6a9f8e834d665165'

* commit '8756fcc77cfb64fd753fa8bf6a9f8e834d665165':
Use standard filenames for tests.
8756fcc77cfb64fd753fa8bf6a9f8e834d665165 01-Sep-2010 Glenn Kasten <gkasten@google.com> Use standard filenames for tests.

Change-Id: I0bfc8bd98f00ce1dd9d7e36d402d4cd422cb8ea6
pensles/tests/examples/Android.mk
pensles/tests/examples/bufferQueue.c
pensles/tests/examples/feedback.c
pensles/tests/examples/playSawtoothBufferQueue.cpp
pensles/tests/examples/slesTestFeedback.cpp
pensles/tests/examples/slesTestSawtoothBufferQueue.cpp
ba5d08cde83756add7a2ef8383751119a7fb1acc 01-Sep-2010 Glenn Kasten <gkasten@google.com> am 66f75c45: Fix problems found by the mute solo test.

Merge commit '66f75c45c9aea410b1f913d76995661e72571b67'

* commit '66f75c45c9aea410b1f913d76995661e72571b67':
Fix problems found by the mute solo test.
66f75c45c9aea410b1f913d76995661e72571b67 31-Aug-2010 Glenn Kasten <gkasten@google.com> Fix problems found by the mute solo test.

Bug fixes for USE_OUTPUTMIXEXT (desktop):
- SL_PLAYEVENT_HEADATNEWPOS was broken
- GetPosition is now accurate, with or without seeking
- Fix race condition between AudioPlayer and Track
- Duration is updated if initial estimate is too low (e.g. if unknown is reported as zero)
- GetPosition while pending Seek now returns that value so the Seek appears synchronous
- Remove useless code to retry Enqueues; now drop decoded data if Enqueue fails
For all source files touched, add curlies to the "if" statements.

Change-Id: I1f70d8e683bc92831848af20857347d45c6407a9
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/ISeek.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SndFile.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/listening/slesTest_playMuteSolo.cpp
bd139b31f3f6c631894852f528d37d71e693f7b7 31-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am dc098b54: Add support for auxiliary effects.

Merge commit 'dc098b54cd7df1b79b4560ae0570d88e4b9f751e'

* commit 'dc098b54cd7df1b79b4560ae0570d88e4b9f751e':
Add support for auxiliary effects.
dc098b54cd7df1b79b4560ae0570d88e4b9f751e 30-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Add support for auxiliary effects.

- Implement the OutputMix object.

- Modify the interface of the Android effect initialization since
an effect can be attached to a player (insert) or to an OuputMix
(aux)
- fix bug in EQ where SL_RESULT_CONTROL_LOST was returned on a
properly initialized EQ effect.

- Add a test application which creates an EQ on an OutputMix
- Remove unused constant in test apps.

Change-Id: Id9e4633d0e44e8a784f1154ce1a6df1357b72966
pensles/libopensles/Android.mk
pensles/libopensles/COutputMix.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/android_OutputMix.cpp
pensles/libopensles/android_OutputMix.h
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/classes.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestEqOutputPath.cpp
pensles/tests/examples/slesTestVirtualizerPath.cpp
e4c31ada91160f9ca1d0ce0e9de833368400f548 30-Aug-2010 Glenn Kasten <gkasten@google.com> am d9b6517b: Buffer queue automated test update

Merge commit 'd9b6517b0b1820d73a5a927824d495595b556106'

* commit 'd9b6517b0b1820d73a5a927824d495595b556106':
Buffer queue automated test update
c9ad6189626c7656d416d605a30b2f085bcc9d05 28-Aug-2010 Glenn Kasten <gkasten@google.com> am bc1596c3: Fix compile-problem on desktop, and SDL bug.

Merge commit 'bc1596c33e134859d3ae3182d641b2dd03405b5d'

* commit 'bc1596c33e134859d3ae3182d641b2dd03405b5d':
Fix compile-problem on desktop, and SDL bug.
794addb0e98f40e0f82582f07ace456aac107470 28-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am f78c9326: Implement the SLVirtualizerItf interface.

Merge commit 'f78c9326cc333afd30346602bfbd419a17371b21'

* commit 'f78c9326cc333afd30346602bfbd419a17371b21':
Implement the SLVirtualizerItf interface.
8ae453bdaf9d56c3038409a654fca83b70ac152b 28-Aug-2010 Glenn Kasten <gkasten@google.com> am bf53474b: Fix bugs found by clang (part of clang fix-it)

Merge commit 'bf53474b725519ebeab2997e975375d896ff91be'

* commit 'bf53474b725519ebeab2997e975375d896ff91be':
Fix bugs found by clang (part of clang fix-it)
8420d79d06221ecf2a77e3238f34a3a9ebca510c 28-Aug-2010 Glenn Kasten <gkasten@google.com> am 974aacf1: Fix bugs in BufferQueue automated test and related

Merge commit '974aacf14bfe6869b7d0cda3abcaef46af335487'

* commit '974aacf14bfe6869b7d0cda3abcaef46af335487':
Fix bugs in BufferQueue automated test and related
d9b6517b0b1820d73a5a927824d495595b556106 28-Aug-2010 Glenn Kasten <gkasten@google.com> Buffer queue automated test update

Make it run on desktop as well as Android, so we can use desktop driver
for comparison, and get test coverage using gcov.
Use slesutResultToString for error reporting.
Run each test case for all valid numbers of buffers.

Change-Id: If7753a0e77f4a906a41eae90135e1bc84531f2fc
pensles/tests/automated/BufferQueue_test.cpp
bc1596c33e134859d3ae3182d641b2dd03405b5d 27-Aug-2010 Glenn Kasten <gkasten@google.com> Fix compile-problem on desktop, and SDL bug.

Fix bug caught by using gtest on desktop: SDL was not being shutdown properly when engine destroyed.
Fix compile problems on desktop for BassBoost, Equalizer, and Virtualizer.
Add new OpenSLESUT function: slesutResultToString.
Rename SDL_start to SDL_open to match SDL naming conventions.
Add SDL_close.
Add symlink for applications to use OpenSLESUT.h.

Change-Id: I6ef9895adc508b3b9570c79302c7a3046ca8246f
pensles/include/SLES/OpenSLESUT.h
pensles/libopensles/CEngine.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/OpenSLESUT.c
pensles/libopensles/OpenSLESUT.h
pensles/libopensles/SDL.c
pensles/libopensles/sles_allinclusive.h
f78c9326cc333afd30346602bfbd419a17371b21 27-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement the SLVirtualizerItf interface.

Add example for the SLVirtualizerItf.

Unify how an effect interface checks whether a valid effect is
attached to the interface.

In implementation of SLEqualizerItf, ensure the effect is accessed
only if its valid (just like for BassBoost and Virtualizer).

Change-Id: I03032de2925488bc78502f23a83972e666435a8b
pensles/libopensles/IBassBoost.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IVirtualizer.c
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestBassBoostPath.cpp
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestVirtualizerPath.cpp
7911529f4e9c886b339c93f77ad132eb457489f8 27-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 8e564b93: Refactor effect parameter setting and getting to prepare support for additional effects. Add support for Virtualizer parameters.

Merge commit '8e564b93da69313ffddcd1f457d0549b7dedaa76'

* commit '8e564b93da69313ffddcd1f457d0549b7dedaa76':
Refactor effect parameter setting and getting to prepare support
bf53474b725519ebeab2997e975375d896ff91be 27-Aug-2010 Glenn Kasten <gkasten@google.com> Fix bugs found by clang (part of clang fix-it)

Serious bugs:
- SLEqualizerItf::GetPreset was returning wrong preset index.
- SLEngineCapabilities::QueryVibraCapabilities was returning wrong status code.
Another variable was initialized unnecessarily, but was not a serious bug.

Change-Id: Ifebbae1d457fa800e5adfb09decede4222b60aa1
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/locks.c
974aacf14bfe6869b7d0cda3abcaef46af335487 26-Aug-2010 Glenn Kasten <gkasten@google.com> Fix bugs in BufferQueue automated test and related

Fix test bugs:
Clean up the player, mixer, and the engine (must be done in that order).
Re-enable 2 more tests; all 9 tests pass now.

Fix engine bugs:
IObject now has a de-init hook, which cleans up condition variable and mutex.
Run the de-initializers in reverse order so that IObject de-init hook is run last.
Replace the dedicated mEngine.mShutdownCond by the shared IObject condition variable.
Forgot to iniitalize mShtudownAck.
Unlocking the object mutex during CEngine_Destroy was bogus.

Miscellaneous logging and debugging improvements:
Track the source code location of the most recent mutex unlock.
Add more trace log options for detailed leave reasons.
Improve performance of trace log when disabled.
Turn on assert checking.
Check return value of pthread_cond_destroy and pthread_mutex_destroy.
Add comment.
Line length 100.

Change-Id: I23b7b495d439894b2fd31295a38cb73ef7b6be2e
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IObject.c
pensles/libopensles/MPH_to.c
pensles/libopensles/ThreadPool.c
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
pensles/libopensles/trace.c
pensles/tests/automated/BufferQueue_test.cpp
8e564b93da69313ffddcd1f457d0549b7dedaa76 26-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Refactor effect parameter setting and getting to prepare support
for additional effects.
Add support for Virtualizer parameters.

Change-Id: I39c69e883457af6444e49ba64e390213898cd55c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/sles_allinclusive.h
6d4d0fd347f4c3a538347df8184573d3d4c78b27 26-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am d091ed9c: Set decode and render thread priority to ANDROID_PRIORITY_AUDIO.

Merge commit 'd091ed9c43547b2ec9499e96e915d4b28b70d567'

* commit 'd091ed9c43547b2ec9499e96e915d4b28b70d567':
Set decode and render thread priority to ANDROID_PRIORITY_AUDIO.
d091ed9c43547b2ec9499e96e915d4b28b70d567 26-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Set decode and render thread priority to ANDROID_PRIORITY_AUDIO.

Change-Id: I91843747fd1f51c0eca2d344a22a77d8df853015
pensles/libopensles/android_AudioPlayer.cpp
493e2d54e9a1dddf6e18ec51d54f278ada49284e 25-Aug-2010 Glenn Kasten <gkasten@google.com> am 07c35e6e: Fix bug in BufferQueue::Clear

Merge commit '07c35e6e57ff8945c4dd836be4486a62316ac64b'

* commit '07c35e6e57ff8945c4dd836be4486a62316ac64b':
Fix bug in BufferQueue::Clear
07c35e6e57ff8945c4dd836be4486a62316ac64b 25-Aug-2010 Glenn Kasten <gkasten@google.com> Fix bug in BufferQueue::Clear

BufferQueue::Clear must clear playIndex also -- see pg 423 section 9.1.5.
Only print a lock error message if delayed 100 ms.
Object lock debugging did not take into account that cond_wait also releases the lock.
Improve error reporting for recursive locks.
Reduce the noisy output of sawtooth test.

Change-Id: I66a959445de7e0763440e22251465c796bb1883b
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/tests/examples/bufferQueue.c
abbff2ba0a857b3e290a1e5e288f7af797f3894c 25-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 339d65cd: Implement the SLBassBoostItf on an AudioPlayer Prevent the SLEqualizerItf to use an EQ effect that wasn\'t successfully initialized.

Merge commit '339d65cd8bd7607b5959068825c6c5a55a3250af'

* commit '339d65cd8bd7607b5959068825c6c5a55a3250af':
Implement the SLBassBoostItf on an AudioPlayer
739a687cbec368ddea25a8106eec8660272fbf3b 25-Aug-2010 Glenn Kasten <gkasten@google.com> am 3190a0da: Fix bug with nested lock.

Merge commit '3190a0da044e122c1c617e30d1d364701fb27110'

* commit '3190a0da044e122c1c617e30d1d364701fb27110':
Fix bug with nested lock.
339d65cd8bd7607b5959068825c6c5a55a3250af 24-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement the SLBassBoostItf on an AudioPlayer
Prevent the SLEqualizerItf to use an EQ effect that wasn't
successfully initialized.

Change-Id: I4cdb07fc4deebba1cb591f0ca96fc3f494e37080
pensles/libopensles/IBassBoost.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/sles_allinclusive.h
pensles/tests/examples/Android.mk
pensles/tests/examples/slesTestBassBoostPath.cpp
0f90384348082a2a04899c74540042bab5574b6a 24-Aug-2010 Glenn Kasten <gkasten@google.com> am 4faf394f: Test reorganization

Merge commit '4faf394f4a6da687d1b1adfb925fea2b2660268a'

* commit '4faf394f4a6da687d1b1adfb925fea2b2660268a':
Test reorganization
3190a0da044e122c1c617e30d1d364701fb27110 23-Aug-2010 Glenn Kasten <gkasten@google.com> Fix bug with nested lock.

Add object lock debugging.
Replace !NDEBUG by USE_DEBUG.
Remove $(JNI_H_INCLUDE) and $(TOP).

Change-Id: I61217b82a7edc42d37dacf443ad0ca852ee0dfe9
pensles/libopensles/Android.mk
pensles/libopensles/IObject.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/classes.c
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/libopensles/sles_allinclusive.h
pensles/tests/Android.mk
pensles/tests/automated/Android.mk
pensles/tests/examples/Android.mk
pensles/tests/listening/Android.mk
pensles/tests/mimeUri/Android.mk
pensles/tests/sandbox/Android.mk
90f622533c29c83c95d9d9fd13ed12ba544ee17b 24-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 3d334e6f: Exercise more functions of the SLEqualizerItf interface. Refactor EQ effect descriptor initialization in an effect neutral function so it can be reused for other effects.

Merge commit '3d334e6fcb3c51313ba702d01348d9026f20e35e'

* commit '3d334e6fcb3c51313ba702d01348d9026f20e35e':
Exercise more functions of the SLEqualizerItf interface.
4faf394f4a6da687d1b1adfb925fea2b2660268a 21-Aug-2010 Glenn Kasten <gkasten@google.com> Test reorganization

Change-Id: I0fb84afd72fe6839773937fdaece3276bba1b952
pensles/tests/api/Android.mk
pensles/tests/api/BufferQueue_test.cpp
pensles/tests/automated/Android.mk
pensles/tests/automated/BufferQueue_test.cpp
pensles/tests/effects/eqFdPath/Android.mk
pensles/tests/effects/eqFdPath/slesTestEqFdPath.cpp
pensles/tests/examples/Android.mk
pensles/tests/examples/bufferQueue.c
pensles/tests/examples/feedback.c
pensles/tests/examples/playSawtoothBufferQueue.cpp
pensles/tests/examples/slesTestEqFdPath.cpp
pensles/tests/examples/slesTestPlayFdPath.cpp
pensles/tests/examples/slesTestRecBuffQueue.cpp
pensles/tests/listening/Android.mk
pensles/tests/listening/seekTorture.c
pensles/tests/listening/slesTest_playMuteSolo.cpp
pensles/tests/mimeFd/playFdPath/Android.mk
pensles/tests/mimeFd/playFdPath/slesTestPlayFdPath.cpp
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/multiplay.c
pensles/tests/mimeUri/seekTorture.c
pensles/tests/mimeUri/slesTest_playMuteSolo.cpp
pensles/tests/pcmBufferQueue/intbufq/Android.mk
pensles/tests/pcmBufferQueue/intbufq/getch.c
pensles/tests/pcmBufferQueue/intbufq/intbufq.c
pensles/tests/pcmBufferQueue/loop/Android.mk
pensles/tests/pcmBufferQueue/loop/loop.c
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/Android.mk
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/bufferQueue.c
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/playSawtoothBufferQueue.cpp
pensles/tests/recorder/recBuffQueue/Android.mk
pensles/tests/recorder/recBuffQueue/slesTestRecBuffQueue.cpp
pensles/tests/sandbox/Android.mk
pensles/tests/sandbox/getch.c
pensles/tests/sandbox/intbufq.c
pensles/tests/sandbox/multiplay.c
3d334e6fcb3c51313ba702d01348d9026f20e35e 21-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Exercise more functions of the SLEqualizerItf interface.
Refactor EQ effect descriptor initialization in an effect neutral
function so it can be reused for other effects.

Change-Id: I72d71f7e05f19f0be3541440c1f67269c179b5cc
pensles/libopensles/IEqualizer.c
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/tests/effects/eqFdPath/slesTestEqFdPath.cpp
7d0e20a6ec5a5659e9b8f78cb15752642178db7c 20-Aug-2010 Glenn Kasten <gkasten@google.com> am d31b42d4: Merge "Clean up interface visibility." into gingerbread

Merge commit 'd31b42d408a016f6eac3fbf171a88640e6880eaa'

* commit 'd31b42d408a016f6eac3fbf171a88640e6880eaa':
Clean up interface visibility.
71bef9db67e2e5545b07a63d9d562eea6503b78e 18-Aug-2010 Yu Shan Emily Lau <yslau@google.com> resolved conflicts for merge of 2a2e131d to master

Change-Id: I8d208e5aa7681f335f915725e8af0e9f9b8f6a8c
d31b42d408a016f6eac3fbf171a88640e6880eaa 18-Aug-2010 Glenn Kasten <gkasten@google.com> Merge "Clean up interface visibility." into gingerbread
04bd7e37c043835a177bedc7cc7520c30d32951a 17-Aug-2010 Glenn Kasten <gkasten@google.com> Clean up interface visibility.

Fix the interface visibility for occurences of an instance within an object.
Check all known interface codes in switch statements for safer error
detection in case of future changes to the list of enum constants.
Replace USE_CONFORMANCE by USE_BASE, USE_GAME, USE_MUSIC, USE_PHONE, USE_OPTIONAL.
Move comment to Khronos bug

Change-Id: I11892db12590db6d2d6db5191aac5b62ab4f67bd
pensles/libopensles/Android.mk
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IObject.c
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
30990c3583095fff2a5895531a108fc9830ad3f4 18-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am b47ed908: Fix the MimeUri test: - some logs were reported as errors - the SLPrefetchItf was declared as required, but not requested in the creation of the AudioPlayer.

Merge commit 'b47ed9082f7be9da24523316298bbfcb3dbffc9a'

* commit 'b47ed9082f7be9da24523316298bbfcb3dbffc9a':
Fix the MimeUri test:
2a2e131d81fd20781ec1c6fbd6d739742861bdba 17-Aug-2010 Yu Shan Emily Lau <yslau@google.com> Merge "Re-org the bufferQueue unit tests." into gingerbread
bfbf99b32498c7152ebd3c9b9c71a05299eb9b8f 17-Aug-2010 Yu Shan Emily Lau <yslau@google.com> Re-org the bufferQueue unit tests.

Change-Id: I55d63ca25e98a6b89634c9ec496a07dacb9c71b6
pensles/tests/api/Android.mk
pensles/tests/api/Android.mk_
pensles/tests/api/BufferQueue_test.cpp
b47ed9082f7be9da24523316298bbfcb3dbffc9a 17-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix the MimeUri test:
- some logs were reported as errors
- the SLPrefetchItf was declared as required, but not requested in
the creation of the AudioPlayer.

Change-Id: I33f07ec532ef1d8151aa1bda4f7cfa4d3e64c8ec
pensles/tests/mimeUri_test.cpp
485e080522b324645ced9c92e43368689800b75c 17-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 9864f937: Support SLPrefetchStatusItf on an AudioPlayer pulling from a BufferQueue - Make SLPrefetchStatusItf explicit on Android as per spec. - Signal prefetch status underflow when queue becomes empty, and sufficient data when filled again.

Merge commit '9864f9373c0772a69377b7ae9976e3c3a68bb4fc'

* commit '9864f9373c0772a69377b7ae9976e3c3a68bb4fc':
Support SLPrefetchStatusItf on an AudioPlayer pulling from a BufferQueue
9864f9373c0772a69377b7ae9976e3c3a68bb4fc 16-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Support SLPrefetchStatusItf on an AudioPlayer pulling from a BufferQueue
- Make SLPrefetchStatusItf explicit on Android as per spec.
- Signal prefetch status underflow when queue becomes empty, and
sufficient data when filled again.

Change-Id: I0e0ae9dc305fe6d83dd4497741f9271ca465edd5
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/classes.c
pensles/libopensles/locks.c
pensles/tests/mimeUri/seekTorture.c
4239b4e22d19f042c8c863586f38a5e6e123fa86 17-Aug-2010 Glenn Kasten <gkasten@google.com> am 9c03f04a: Make internal implicit interfaces safer.

Merge commit '9c03f04a9c6cc2a821182c8be8f2efe964a27efe'

* commit '9c03f04a9c6cc2a821182c8be8f2efe964a27efe':
Make internal implicit interfaces safer.
9c03f04a9c6cc2a821182c8be8f2efe964a27efe 13-Aug-2010 Glenn Kasten <gkasten@google.com> Make internal implicit interfaces safer.

Add IsInterfaceInitialized.
Don't directly manipulate a buffer queue.
Call the interface via it's named entry points, not the v-table as it may not be initialized/available.
GetInterface enables the v-table not init.
Update Doxygen comments.
Line length 100.
Allow bool, true, and false in C code.
Add a verbose option to seek torture test.

Change-Id: I37c42834422759b881d2ffe4b171d9aa284fde98
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.h
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SndFile.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/trace.c
pensles/tests/pcmBufferQueue/loop/loop.c
43ffc8f73f39144ca85f9db68143c9ae5cd0cbd1 17-Aug-2010 Jean-Baptiste Queru <jbq@google.com> am 2b94d1ef: Add CleanSpec.mk

Merge commit '2b94d1efa2321404443fff193a60fc7c272c9b6d'

* commit '2b94d1efa2321404443fff193a60fc7c272c9b6d':
Add CleanSpec.mk
c9001b937045025b36a58f8f9c1c249e0f06fb74 16-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am b746b800: When enqueuing a buffer in an empty buffer queue on an AudioPlayer in playing state, restart the associated AudioTrack which was stopped when the queue became empty.

Merge commit 'b746b8006289cf3baed344fc8d827c423963f553'

* commit 'b746b8006289cf3baed344fc8d827c423963f553':
When enqueuing a buffer in an empty buffer queue on an AudioPlayer
62070055a091f1882708298049b55279e48fe1b1 16-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am a91b556b: Add support for SL_PLAYEVENT_HEADATEND event for AudioPlayer that is fed by a buffer queue.

Merge commit 'a91b556b3f730c77a95d745671ab2a68ce1c7d99'

* commit 'a91b556b3f730c77a95d745671ab2a68ce1c7d99':
Add support for SL_PLAYEVENT_HEADATEND event for AudioPlayer that
5c3ae57166f82ba383b40ba20eada2d70dc5cbde 14-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am fa89c1fa: Merge "Update use of audio effect framework in OpenSL ES to reflect latest updates." into gingerbread

Merge commit 'fa89c1fa4f6ed94bc42a64d7d903870b3086d6f3'

* commit 'fa89c1fa4f6ed94bc42a64d7d903870b3086d6f3':
Update use of audio effect framework in OpenSL ES to reflect latest updates.
2b94d1efa2321404443fff193a60fc7c272c9b6d 14-Aug-2010 Jean-Baptiste Queru <jbq@google.com> Add CleanSpec.mk

Change-Id: Ie58a8059aa0259d1aa76880930bf15fdcfb8456f
leanSpec.mk
b746b8006289cf3baed344fc8d827c423963f553 14-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> When enqueuing a buffer in an empty buffer queue on an AudioPlayer
in playing state, restart the associated AudioTrack which was
stopped when the queue became empty.

Change-Id: I0361a3229fa2bd56c282a8a762f102c7ae23a4c7
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/locks.c
a91b556b3f730c77a95d745671ab2a68ce1c7d99 13-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Add support for SL_PLAYEVENT_HEADATEND event for AudioPlayer that
is fed by a buffer queue.

Change-Id: I573fdadd540d2ee127234299ec9a906504d72cbf
pensles/libopensles/android_AudioPlayer.cpp
fa89c1fa4f6ed94bc42a64d7d903870b3086d6f3 13-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Update use of audio effect framework in OpenSL ES to reflect latest updates." into gingerbread
b2718c35030b56fe165b946a9006f684e94eec9e 13-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am b93a3faa: Implement getPosition for an AudioPlayer reading from a URI or FD.

Merge commit 'b93a3faa0d84662717243b4c8b1271976e87a42c'

* commit 'b93a3faa0d84662717243b4c8b1271976e87a42c':
Implement getPosition for an AudioPlayer reading from a URI or FD.
b93a3faa0d84662717243b4c8b1271976e87a42c 13-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement getPosition for an AudioPlayer reading from a URI or FD.

For getPosition, return the last decoded position as the current
position. This is not accurate but will do for a first pass. Since
this requires knowing whether it's seeking, a lock is introduced
to guard against reading the seek flag in getPositionMsec(), and
it being written in the player looper.

Change-Id: I2af6daa7f1415d8b6463d114a7b61c266fd98c97
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
8b3848c2de8d024e8e93682899db598dcaf7508e 12-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 67894ba1: Implement seeking logic as a state updated in the message looper of the player, so no locks are required.

Merge commit '67894ba1f93e9102fc724b76204e0ef72e15b0e8'

* commit '67894ba1f93e9102fc724b76204e0ef72e15b0e8':
Implement seeking logic as a state updated in the message looper of
67894ba1f93e9102fc724b76204e0ef72e15b0e8 12-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement seeking logic as a state updated in the message looper of
the player, so no locks are required.

Change-Id: I14f30ab1e3f3cde5d31c4a6d121d1951c1a11995
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
3daebfb458efc985a735a59e342cd0c1e56e1a1c 11-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 0136e027: Merge "Cleanup AudioPlayer destroy sequence. Fix seek bug where audio wouldn\'t play, or played delayed after a seek." into gingerbread

Merge commit '0136e027ef9df7d78a394d0bf65e0d602f851d15'

* commit '0136e027ef9df7d78a394d0bf65e0d602f851d15':
Cleanup AudioPlayer destroy sequence. Fix seek bug where audio
0136e027ef9df7d78a394d0bf65e0d602f851d15 11-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Cleanup AudioPlayer destroy sequence. Fix seek bug where audio wouldn't play, or played delayed after a seek." into gingerbread
19a022e914deb38ce80c61b6e92d53d05c34ef0e 11-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Cleanup AudioPlayer destroy sequence. Fix seek bug where audio
wouldn't play, or played delayed after a seek.

Change-Id: Id132ddf27774465af3df272707151876bc22f70d
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
1cd40487ca909a6f4cd0aac597fbbfcdc7840000 11-Aug-2010 Glenn Kasten <gkasten@google.com> am 929a4348: Merge "Permute is a tool used by seek torture test." into gingerbread

Merge commit '929a4348f6926a130242bf1d6ab9d4c9b35b7bb7'

* commit '929a4348f6926a130242bf1d6ab9d4c9b35b7bb7':
Permute is a tool used by seek torture test.
929a4348f6926a130242bf1d6ab9d4c9b35b7bb7 10-Aug-2010 Glenn Kasten <gkasten@google.com> Merge "Permute is a tool used by seek torture test." into gingerbread
b796ed521196b238f63ce87a961070aaba81497f 10-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am dd1bf4e0: Prevent consecutive decode operations by discarding the next one if the decode buffer hasn\'t been released yet.

Merge commit 'dd1bf4e050672a232c9e34d3d2a580e5fbf66c89'

* commit 'dd1bf4e050672a232c9e34d3d2a580e5fbf66c89':
Prevent consecutive decode operations by discarding
b2fb9335424fae39b55ed7b97631fdba833a4fc4 10-Aug-2010 Glenn Kasten <gkasten@google.com> Permute is a tool used by seek torture test.

Change-Id: Ifd077cda90f89c11011c8dd606a766d8b0ed5797
pensles/tests/mimeUri/seekTorture.c
pensles/tools/permute/Makefile
pensles/tools/permute/permute.c
pensles/tools/permute/readme.txt
dd1bf4e050672a232c9e34d3d2a580e5fbf66c89 10-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Prevent consecutive decode operations by discarding
the next one if the decode buffer hasn't been released yet.

Change-Id: I4b9ebed899f6cead5b2ce0619dbb95ec0e1d3b64
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
536e5a7add098f743bdca5d3f56db05fe9050630 10-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 0570652d: After stopping an AudioPlayer, playback should resume from the start.

Merge commit '0570652da8dcbb61d25b2c856a0911dd1f893bf4'

* commit '0570652da8dcbb61d25b2c856a0911dd1f893bf4':
After stopping an AudioPlayer, playback should resume from the start.
0570652da8dcbb61d25b2c856a0911dd1f893bf4 10-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> After stopping an AudioPlayer, playback should resume from the start.

Change-Id: Id524c1b9c74c89813c5699d25288509fa60d7aa5
pensles/libopensles/android_SfPlayer.cpp
c5ff23c41dfb71ac7b97ca899edfdad1d578520c 10-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am f807bb87: Merge "Do not initialize effect descriptors if the audio player couldn\'t be initialized." into gingerbread

Merge commit 'f807bb874812e7bba79827d82dbc30279f407a18'

* commit 'f807bb874812e7bba79827d82dbc30279f407a18':
Do not initialize effect descriptors if the audio player couldn't
f807bb874812e7bba79827d82dbc30279f407a18 10-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Do not initialize effect descriptors if the audio player couldn't be initialized." into gingerbread
e46a04746f17f73c22a7c348eb892ff39aa8dbf0 10-Aug-2010 Glenn Kasten <gkasten@google.com> am 63009434: Add command-line options to loop test.

Merge commit '63009434d6944a1c783fcf67a3ef6c6f94887259'

* commit '63009434d6944a1c783fcf67a3ef6c6f94887259':
Add command-line options to loop test.
963d76da0d69c1a6242b400516050ec9192a522e 10-Aug-2010 Glenn Kasten <gkasten@google.com> am 5992d073: This version works but has high latency.

Merge commit '5992d073a473e48872cb81d55085f106b560a3a2'

* commit '5992d073a473e48872cb81d55085f106b560a3a2':
This version works but has high latency.
63009434d6944a1c783fcf67a3ef6c6f94887259 10-Aug-2010 Glenn Kasten <gkasten@google.com> Add command-line options to loop test.

Fix file permissions (no execute).
Line length 100.

Change-Id: If9a3e435ce5a48684a281c8f68488894dcefbe6f
pensles/tests/pcmBufferQueue/loop/loop.c
pensles/tests/recorder/recBuffQueue/Android.mk
pensles/tests/recorder/recBuffQueue/slesTestRecBuffQueue.cpp
49f02bb3bb095a45c05e0f1a64ed13053287cc82 10-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Do not initialize effect descriptors if the audio player couldn't
be initialized.

Test playback behavior after stop.

Change-Id: I67d78b73f5392948e00af99eaa9335f76256df14
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_SfPlayer.cpp
pensles/tests/mimeUri/slesTest_playStates.cpp
669983faf354194360811382a9a799af90fb389e 09-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Update use of audio effect framework in OpenSL ES to reflect latest updates.

Rely on returned status from Audio Effect framework when enabling
or disabling an effect now that an error is not returned when
setting the same enabled state twice.

Effect command and command size are now unsigned.

Change-Id: I421ef5b2c06429a65797d4489f927da210ceab12
pensles/libopensles/android_Effect.cpp
5992d073a473e48872cb81d55085f106b560a3a2 09-Aug-2010 Glenn Kasten <gkasten@google.com> This version works but has high latency.

Change-Id: I7dc4e81cf78aa5c1c251d097f083b9428cb34984
Problems: mismatch of channel counts, too many buffers, buffers too large.
pensles/tests/pcmBufferQueue/loop/loop.c
33aa3a228f9be9b4a3d45ff3917ec7197726aa0b 07-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 15750dc9: Use paranthesis in macro for buffer size. Use stderr for error display.

Merge commit '15750dc9b6f0387bf9571518bcf924f8f89d0c41'

* commit '15750dc9b6f0387bf9571518bcf924f8f89d0c41':
Use paranthesis in macro for buffer size.
0b7756d6dee3451d02f619234ecae3a8fa38496a 07-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> am 7a27e77f: Add a demo app showcasing the use of the BufferQueue interface on an AudioRecorder object to record PCM samples to a file.

Merge commit '7a27e77f05a2d2286461364cbf9bb0da64d4ccdc'

* commit '7a27e77f05a2d2286461364cbf9bb0da64d4ccdc':
Add a demo app showcasing the use of the BufferQueue interface on
15750dc9b6f0387bf9571518bcf924f8f89d0c41 07-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Use paranthesis in macro for buffer size.
Use stderr for error display.

Change-Id: I83d41377f58e10ac494522bea15bafe41ca84982
pensles/tests/recorder/recBuffQueue/slesTestRecBuffQueue.cpp
7a27e77f05a2d2286461364cbf9bb0da64d4ccdc 07-Aug-2010 Jean-Michel Trivi <jmtrivi@google.com> Add a demo app showcasing the use of the BufferQueue interface on
an AudioRecorder object to record PCM samples to a file.

Change-Id: Ia27465a6540b81962266951800da1a81ef0794d1
pensles/tests/recorder/recBuffQueue/Android.mk
pensles/tests/recorder/recBuffQueue/slesTestRecBuffQueue.cpp
b0da1a9759aaa82d7956d4b759688324d0d8e0e0 04-Aug-2010 Glenn Kasten <gkasten@google.com> am cd4bb6b5: Doxygen generator.

Merge commit 'cd4bb6b5a68d185f4f677e270f1040183a35207d'

* commit 'cd4bb6b5a68d185f4f677e270f1040183a35207d':
Doxygen generator.
2ab9723ab5948b964c434b8ab35b8de444ef6087 04-Aug-2010 Glenn Kasten <gkasten@google.com> am 048032fa: Add the record to play loop test (broken)

Merge commit '048032faa3a5494283f647ddd98b8add8061c52d'

* commit '048032faa3a5494283f647ddd98b8add8061c52d':
Add the record to play loop test (broken)
55c1ec90f4ba54e059b535006734fe26b92a69ca 04-Aug-2010 Glenn Kasten <gkasten@google.com> am 68c8d376: Add the seek torture test

Merge commit '68c8d376063a53b47c18dc99331253fb70bd695b'

* commit '68c8d376063a53b47c18dc99331253fb70bd695b':
Add the seek torture test
b53c5e0dafa49c69088c2f09189c302a3b8febbc 04-Aug-2010 Glenn Kasten <gkasten@google.com> am 0a66743f: A \n should continue to be mapped to \r\n

Merge commit '0a66743fb5e46c8d94f13d6170ef405f387f05f6'

* commit '0a66743fb5e46c8d94f13d6170ef405f387f05f6':
A \n should continue to be mapped to \r\n
97d772d0a35c16f34c31e4198f60872e79ed5973 04-Aug-2010 Glenn Kasten <gkasten@google.com> am 04cc6cca: Workaround assumption of prefetch interface

Merge commit '04cc6ccabd4ddce6b780a7c5e8d9b313880410f7'

* commit '04cc6ccabd4ddce6b780a7c5e8d9b313880410f7':
Workaround assumption of prefetch interface
4135715968eca08ed72489a2c3a48b1e15d8bcc5 04-Aug-2010 Glenn Kasten <gkasten@google.com> am 29745d29: Update logging.

Merge commit '29745d2982365fb0a2a0d28b366aefc0ab79f965'

* commit '29745d2982365fb0a2a0d28b366aefc0ab79f965':
Update logging.
cd4bb6b5a68d185f4f677e270f1040183a35207d 04-Aug-2010 Glenn Kasten <gkasten@google.com> Doxygen generator.

Change-Id: I9160878dad17baa7193240e3dcc31e22a14068e3
pensles/doc/Doxyfile
pensles/doc/Makefile
048032faa3a5494283f647ddd98b8add8061c52d 04-Aug-2010 Glenn Kasten <gkasten@google.com> Add the record to play loop test (broken)

Change-Id: I2b50501fef8a110d97d3cac69a0fec807b9de422
pensles/tests/pcmBufferQueue/loop/Android.mk
pensles/tests/pcmBufferQueue/loop/loop.c
68c8d376063a53b47c18dc99331253fb70bd695b 04-Aug-2010 Glenn Kasten <gkasten@google.com> Add the seek torture test

Change-Id: Icd4ef20283f6f0ac499901a7ffa8e9416abb2798
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/seekTorture.c
0a66743fb5e46c8d94f13d6170ef405f387f05f6 04-Aug-2010 Glenn Kasten <gkasten@google.com> A \n should continue to be mapped to \r\n

Change-Id: I84a2c215e53d77a5a38fc9527b3111c1db76dfe6
pensles/tests/pcmBufferQueue/intbufq/getch.c
04cc6ccabd4ddce6b780a7c5e8d9b313880410f7 04-Aug-2010 Glenn Kasten <gkasten@google.com> Workaround assumption of prefetch interface

Change-Id: I2548dc5f2d3e8cff41f2d1d129082e2b6bfefc5e
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/classes.c
29745d2982365fb0a2a0d28b366aefc0ab79f965 04-Aug-2010 Glenn Kasten <gkasten@google.com> Update logging.

Change-Id: I41f47c400adc1fb13a6d8ba88715a09c52855de4
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/trace.c
7fc452f374f339a7416b817b32b1f8f810f29cef 31-Jul-2010 Glenn Kasten <gkasten@google.com> am 3806bddb: Merge "Fix broken build for sim-eng." into gingerbread

Merge commit '3806bddb1af5266d7a016026d0a08117ccda3e0d'

* commit '3806bddb1af5266d7a016026d0a08117ccda3e0d':
Fix broken build for sim-eng.
3806bddb1af5266d7a016026d0a08117ccda3e0d 31-Jul-2010 Glenn Kasten <gkasten@google.com> Merge "Fix broken build for sim-eng." into gingerbread
8348fd8a5549877bebcf45b5ee3ce88070a43383 31-Jul-2010 Glenn Kasten <gkasten@google.com> Fix broken build for sim-eng.

Change-Id: Ie1b1eaa93819bede1e024b1930de86c0b9772138
pensles/tests/api/Android.mk
pensles/tests/api/Android.mk_
ed317432850c7cbfde9bb6aae6eb401537daf15c 31-Jul-2010 Wink Saville <wink@google.com> Fix sim build.

The problem is related stl libraries and the parent tests also uses
stl libraries and excludes itself from TARGET_SIMULATOR builds so it
seems reasonable to also exclude these api tests.

Change-Id: I247c43e6760c6343c4b1ee5bf5a7fa6c87ce5af9
pensles/tests/api/Android.mk
d0f92a4d17491382c435bf354fb3d8ae34893b75 30-Jul-2010 Glenn Kasten <gkasten@google.com> am e77eb40a: Merge "Automated test for buffer queues." into gingerbread

Merge commit 'e77eb40a4833f2234e90fdd8664d9fd7d7474f97'

* commit 'e77eb40a4833f2234e90fdd8664d9fd7d7474f97':
Automated test for buffer queues.
e77eb40a4833f2234e90fdd8664d9fd7d7474f97 30-Jul-2010 Glenn Kasten <gkasten@google.com> Merge "Automated test for buffer queues." into gingerbread
e47a425d0bec56a73255e9ec6555d8c0c9a02cdc 30-Jul-2010 Eric Laurent <elaurent@google.com> am 3faeee81: Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.

Merge commit '3faeee81fc470c1a1772c3c51a101b1d050ace8d'

* commit '3faeee81fc470c1a1772c3c51a101b1d050ace8d':
Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.
3faeee81fc470c1a1772c3c51a101b1d050ace8d 30-Jul-2010 Eric Laurent <elaurent@google.com> Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.

Modified types of some arguments and returned values of the Equalizer class from int to short
to match those defined by OpenSL ES SLEqualizerItf interface.

Change-Id: Iaa975378d10f52362c04b464d6dbf354604d288d
pensles/libopensles/IEqualizer.c
pensles/libopensles/android_Effect.cpp
d9bf3b6870c46b52e03409ac7028257456868640 30-Jul-2010 Glenn Kasten <gkasten@google.com> Automated test for buffer queues.

Change-Id: If59517d83bbb6c3e985e72303e6503301d091dda
pensles/tests/api/Android.mk
pensles/tests/api/BufferQueue_test.cpp
a7f7427657b60e112af5ed8d98bb04bd22318110 29-Jul-2010 Glenn Kasten <gkasten@google.com> am a45db1a5: Fix build warning on Linux native.

Merge commit 'a45db1a5cabede18909327d84dbd6f92c5a0ce3d'

* commit 'a45db1a5cabede18909327d84dbd6f92c5a0ce3d':
Fix build warning on Linux native.
a45db1a5cabede18909327d84dbd6f92c5a0ce3d 29-Jul-2010 Glenn Kasten <gkasten@google.com> Fix build warning on Linux native.

Change-Id: Id994888dc4be9cf9df44c3cf6222847d6422543b
pensles/libopensles/trace.c
0afddd19828fb9f52ea3ccf3ff98188c8c780a69 29-Jul-2010 Glenn Kasten <gkasten@google.com> am 76d3a99f: Merge "Hash generator." into gingerbread

Merge commit '76d3a99f858e5b4d470cef458171cf8f2e965493'

* commit '76d3a99f858e5b4d470cef458171cf8f2e965493':
Hash generator.
76d3a99f858e5b4d470cef458171cf8f2e965493 29-Jul-2010 Glenn Kasten <gkasten@google.com> Merge "Hash generator." into gingerbread
0172b47b2dd04382947203583566a5dfd2bc4310 29-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am a64fa3df: Fix build (invalid cast)

Merge commit 'a64fa3dff2128489e4e3f8e77769d74ec0bb7115'

* commit 'a64fa3dff2128489e4e3f8e77769d74ec0bb7115':
Fix build (invalid cast)
678036c93fbe3372724cf76510422aa69115b272 29-Jul-2010 Glenn Kasten <gkasten@google.com> Hash generator.

Change-Id: I20865784fe8f27c0ffbb814257283c5498acbec1
pensles/tools/hashgen/MPH.h
pensles/tools/hashgen/Makefile
pensles/tools/hashgen/OpenSLES_IID.c
pensles/tools/hashgen/README.txt
pensles/tools/hashgen/frag1.c
pensles/tools/hashgen/frag2.c
pensles/tools/hashgen/frag3.c
pensles/tools/hashgen/hash.sed
pensles/tools/hashgen/interfaces.c
pensles/tools/hashgen/part1.c
pensles/tools/hashgen/part4.c
pensles/tools/hashgen/part6.c
pensles/tools/hashgen/part8.c
a64fa3dff2128489e4e3f8e77769d74ec0bb7115 29-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix build (invalid cast)

Change-Id: I2be55bd2993e8f441f56ec3c8792b07b0a014725
pensles/libopensles/android_Effect.cpp
9823a201e34c817ba707c98db8096351016228b7 29-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 465ecf80: First implementation of the generic audio effect interface for OpenSL ES.

Merge commit '465ecf80ac962d6a59341d99d083fed7525e79af'

* commit '465ecf80ac962d6a59341d99d083fed7525e79af':
First implementation of the generic audio effect interface for
465ecf80ac962d6a59341d99d083fed7525e79af 28-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> First implementation of the generic audio effect interface for
OpenSL ES.

SLAndroidAudioEffectItf is an explicit interface, exposed on AudioPlayer

Change-Id: I41f86fd64650db7b3cb2d220cdb043d2dcbbcc21
pensles/include/SLES/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidAudioEffect.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
fb475fb2475334f043bc1605f1c0bf7be5cd94eb 28-Jul-2010 Glenn Kasten <gkasten@google.com> am cbf42b70: Use LOG macros instead of fprintf for logging

Merge commit 'cbf42b70edd2b71edf57eb12acfc7bd7db1dbe16'

* commit 'cbf42b70edd2b71edf57eb12acfc7bd7db1dbe16':
Use LOG macros instead of fprintf for logging
cbf42b70edd2b71edf57eb12acfc7bd7db1dbe16 28-Jul-2010 Glenn Kasten <gkasten@google.com> Use LOG macros instead of fprintf for logging

Line length 100
Details on logging:
fprintf stderr -> SL_LOGE
fprintf stdout -> SL_LOGV
printf -> SL_LOGV
// fprintf stderr -> // SL_LOGE or LOGV depending
// fprintf stdout -> // SL_LOGV
// printf -> // SL_LOGV
newline is appended by the LOG macro

Change-Id: I5340249529784ec26cfdb2656fc30a2f4650cc11
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_SfPlayer.cpp
a3846620956c787c7c8caf4c6f553a9798386b9c 28-Jul-2010 Glenn Kasten <gkasten@google.com> am e889e8de: Add symlinks for apps that don\'t follow standard.

Merge commit 'e889e8de473885425dcd01c7bd2ad47495131949'

* commit 'e889e8de473885425dcd01c7bd2ad47495131949':
Add symlinks for apps that don't follow standard.
d87c51ca8a5368290bf3747957c8a878fa8d2fc6 28-Jul-2010 Glenn Kasten <gkasten@google.com> am 2dc537a0: Khronos recommendation: include "SLES/OpenSLES.h"

Merge commit '2dc537a086811c9a97e1f925ace16be7d0b0fcb4'

* commit '2dc537a086811c9a97e1f925ace16be7d0b0fcb4':
Khronos recommendation: include "SLES/OpenSLES.h"
e889e8de473885425dcd01c7bd2ad47495131949 28-Jul-2010 Glenn Kasten <gkasten@google.com> Add symlinks for apps that don't follow standard.

Change-Id: I65bb243dc983d869b958cb90e62621026882cd88
pensles/include/OpenSLES.h
pensles/include/OpenSLES_Android.h
pensles/include/OpenSLES_Platform.h
2dc537a086811c9a97e1f925ace16be7d0b0fcb4 28-Jul-2010 Glenn Kasten <gkasten@google.com> Khronos recommendation: include "SLES/OpenSLES.h"

Change-Id: Iaa36d08f313a29ad2914e7459448bf9418e8c6c8
pensles/include/OpenSLES.h
pensles/include/OpenSLES_Android.h
pensles/include/OpenSLES_Platform.h
pensles/include/SLES/OpenSLES.h
pensles/include/SLES/OpenSLES_Android.h
pensles/include/SLES/OpenSLES_Platform.h
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/OpenSLESUT.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/effects/eqFdPath/slesTestEqFdPath.cpp
pensles/tests/mimeFd/playFdPath/slesTestPlayFdPath.cpp
pensles/tests/mimeUri/multiplay.c
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
pensles/tests/mimeUri/slesTestPlayUri.cpp
pensles/tests/mimeUri/slesTestPlayUri2.cpp
pensles/tests/mimeUri/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/slesTest_playStates.cpp
pensles/tests/mimeUri_test.cpp
pensles/tests/pcmBufferQueue/intbufq/intbufq.c
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/bufferQueue.c
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/playSawtoothBufferQueue.cpp
1c3d0005c98b969ac446c92543fe436a3b0025a5 28-Jul-2010 Glenn Kasten <gkasten@google.com> am ac9b7e3d: Verify output mix is in realized state

Merge commit 'ac9b7e3d6da1fd8c00b2cc2a84c905df5e49d064'

* commit 'ac9b7e3d6da1fd8c00b2cc2a84c905df5e49d064':
Verify output mix is in realized state
ac9b7e3d6da1fd8c00b2cc2a84c905df5e49d064 28-Jul-2010 Glenn Kasten <gkasten@google.com> Verify output mix is in realized state

Change-Id: Ie76de7bb68f31688cf96cf3621fe4b812030e59e
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/sles.c
13f17d3103d700f35c1286a9dd331647026b6a37 28-Jul-2010 Glenn Kasten <gkasten@google.com> am 793ddb6d: Rename the utility toolkit static library.

Merge commit '793ddb6dae36d6b5abf5a75f8f51b4182c5646d1'

* commit '793ddb6dae36d6b5abf5a75f8f51b4182c5646d1':
Rename the utility toolkit static library.
759cbdc8ae2fc1e698e474ce721b088e65126735 28-Jul-2010 Glenn Kasten <gkasten@google.com> am ff9f51f1: Back port to Eclair.

Merge commit 'ff9f51f17b6c00beaa51698e22873a979c7b3ff6'

* commit 'ff9f51f17b6c00beaa51698e22873a979c7b3ff6':
Back port to Eclair.
793ddb6dae36d6b5abf5a75f8f51b4182c5646d1 28-Jul-2010 Glenn Kasten <gkasten@google.com> Rename the utility toolkit static library.

Change-Id: I8809aa5db6a259a0eb308f0e926e1922f9c9ea16
pensles/libopensles/Android.mk
pensles/libopensles/OpenSLESUT.c
pensles/libopensles/OpenSLESUT.h
pensles/libopensles/OpenSLUT.c
pensles/libopensles/OpenSLUT.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/trace.c
ff9f51f17b6c00beaa51698e22873a979c7b3ff6 27-Jul-2010 Glenn Kasten <gkasten@google.com> Back port to Eclair.

Change-Id: Ib5fbb2f877a02891c0cd8f55c0fa2a46a12adffb
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
1bc83c733cefac550a3d9e674ef7a2bb6feeb3fa 27-Jul-2010 Glenn Kasten <gkasten@google.com> am 6aa12107: Fix leak of track slot when audio player destroyed

Merge commit '6aa121077e8981b7d9f46471bdaa1a11211057e8'

* commit '6aa121077e8981b7d9f46471bdaa1a11211057e8':
Fix leak of track slot when audio player destroyed
6aa121077e8981b7d9f46471bdaa1a11211057e8 27-Jul-2010 Glenn Kasten <gkasten@google.com> Fix leak of track slot when audio player destroyed

Move the link from audio player to associated output mix / track
from the effect send interface up to the audio player class.
Add some more comments.
Line length 100.

Change-Id: I4e2de5e673709e686f066d0bd852bac17996810f
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SndFile.c
pensles/libopensles/sles_allinclusive.h
1b419fd17f4ea6394e3a2b8c3d0c76233da99977 27-Jul-2010 Glenn Kasten <gkasten@google.com> am 8252e6c3: Improve platform portability.

Merge commit '8252e6c392af287088a55d6d31b5ba7f80f13ca4'

* commit '8252e6c392af287088a55d6d31b5ba7f80f13ca4':
Improve platform portability.
8252e6c392af287088a55d6d31b5ba7f80f13ca4 27-Jul-2010 Glenn Kasten <gkasten@google.com> Improve platform portability.

Fix build errors and warnings on other platforms.

Change-Id: I0adf9fbabe274c7ebcc1c0b11d598b65feb3efc8
pensles/libopensles/IEngine.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IVolume.c
0580ba44b45c69216664f5fa132d5c25ea5b9023 27-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am ac4f9bf8: Use recording settings of the PCM Buffer Queue sink of an SL ES AudioRecorder to configure AudioRecord.

Merge commit 'ac4f9bf82c3321d2436485a3d4d0d490079872c6'

* commit 'ac4f9bf82c3321d2436485a3d4d0d490079872c6':
Use recording settings of the PCM Buffer Queue sink of an SL ES
ac4f9bf82c3321d2436485a3d4d0d490079872c6 22-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Use recording settings of the PCM Buffer Queue sink of an SL ES
AudioRecorder to configure AudioRecord.

- check, for Android only, that when creating an AudioRecorder,
its data sink is a BufferQueue.
- move all inline SL ES to Android conversions to a separate file.
- in checkDataSink() function, take into account the type of
the object whose sink is being inspected.

Change-Id: Id452cf20a8a184904043aceaacbd70d835f68130
pensles/libopensles/IEngine.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_sles_conversions.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
057c30164424fd78a92424a55e24635d60025b14 26-Jul-2010 Glenn Kasten <gkasten@google.com> resolved conflicts for merge of 49202d85 to master

Change-Id: Ic235bbffc5cacbb227b8d59f4949bca5cbb1069e
a8125b732407f13fb3ff559442f69e4bf7a7b35b 26-Jul-2010 Glenn Kasten <gkasten@google.com> am 10ee2bc6: Add and update comments and use typedefs more.

Merge commit '10ee2bc6119445f4339ecef998c40c9cc95057cd'

* commit '10ee2bc6119445f4339ecef998c40c9cc95057cd':
Add and update comments and use typedefs more.
49202d85561110796df25c3814603f2d553db4dc 26-Jul-2010 Glenn Kasten <gkasten@google.com> Flatten the tests/mimeUri directory.

Change-Id: Ib8056ec7a4a167e6afdce7f020468381126c657e
pensles/tests/mimeUri/Android.mk
pensles/tests/mimeUri/multiplay.c
pensles/tests/mimeUri/multiplay/Android.mk
pensles/tests/mimeUri/multiplay/multiplay.c
pensles/tests/mimeUri/playMuteSolo/Android.mk
pensles/tests/mimeUri/playMuteSolo/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/playStates/Android.mk
pensles/tests/mimeUri/playStates/slesTest_playStates.cpp
pensles/tests/mimeUri/playStreamType/Android.mk
pensles/tests/mimeUri/playStreamType/slesTestPlayStreamType.cpp
pensles/tests/mimeUri/playUri/Android.mk
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
pensles/tests/mimeUri/playUri2/Android.mk
pensles/tests/mimeUri/playUri2/slesTestPlayUri.cpp
pensles/tests/mimeUri/slesTestPlayStreamType.cpp
pensles/tests/mimeUri/slesTestPlayUri.cpp
pensles/tests/mimeUri/slesTestPlayUri2.cpp
pensles/tests/mimeUri/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/slesTest_playStates.cpp
10ee2bc6119445f4339ecef998c40c9cc95057cd 24-Jul-2010 Glenn Kasten <gkasten@google.com> Add and update comments and use typedefs more.

Add Doxygen-style comments and convert some existing comments to Doxygen style.
Use typedef instead of struct as type name, e.g. rename struct Track to Track.

Change-Id: I251476c68304c9734210fcc5fe01d89544345af2
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/CEngine.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/MPH_to.h
pensles/libopensles/OpenSLUT.c
pensles/libopensles/OpenSLUT.h
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SLSndFile.h
pensles/libopensles/SndFile.c
pensles/libopensles/ThreadPool.h
pensles/libopensles/devices.c
pensles/libopensles/devices.h
pensles/libopensles/locks.h
pensles/libopensles/platform.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
a85e814e4ba35dc6aa8bcd18793dc650b2799297 23-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 840560a0: Fix build

Merge commit '840560a02426fd69ee3d8cd31564a56a60929857'

* commit '840560a02426fd69ee3d8cd31564a56a60929857':
Fix build
840560a02426fd69ee3d8cd31564a56a60929857 23-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix build

Change-Id: I5c3f5e34836a3c2e4ea560d7925e84b550dfb0bb
pensles/libopensles/android_AudioPlayer.cpp
39f162a028e7883f0425b5ba96351266f3ae272d 23-Jul-2010 Glenn Kasten <gkasten@google.com> am 4ba5e94a: Merge "Initialize audio player for EffectSend." into gingerbread

Merge commit '4ba5e94ae39c8531fb88a9f1bace69dbb7e90f8c'

* commit '4ba5e94ae39c8531fb88a9f1bace69dbb7e90f8c':
Initialize audio player for EffectSend.
4ba5e94ae39c8531fb88a9f1bace69dbb7e90f8c 23-Jul-2010 Glenn Kasten <gkasten@google.com> Merge "Initialize audio player for EffectSend." into gingerbread
ec2cf4f7de22b97946cfb0c9c58d6db7f111b926 23-Jul-2010 Glenn Kasten <gkasten@google.com> Initialize audio player for EffectSend.

During creation of an audio player, record the associated output
mix for later use by the EffectSend interface.
Dummy prefetch level and MIDI duration for testing.
Line length 100.

Change-Id: Ic0a5a0539f902fbbe8b3d10288c08c6a2d150670
pensles/libopensles/IEngine.c
pensles/libopensles/SndFile.c
pensles/libopensles/android_AudioPlayer.cpp
dae0367f951b6e360eb5b88dc753f46fa0a463f7 23-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 18ed3a39: Merge "Add test to exercise the SLEqualizerItf interface." into gingerbread

Merge commit '18ed3a3937fafdfe80e3c6e38c9844962bb35359'

* commit '18ed3a3937fafdfe80e3c6e38c9844962bb35359':
Add test to exercise the SLEqualizerItf interface.
18ed3a3937fafdfe80e3c6e38c9844962bb35359 23-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Add test to exercise the SLEqualizerItf interface." into gingerbread
43afd531bfeb86ad4b0c59ada69758edc6da559f 23-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Add test to exercise the SLEqualizerItf interface.

Change-Id: I8c23516cee834e05911f890a89671fb1acd4a8e4
pensles/tests/effects/eqFdPath/Android.mk
pensles/tests/effects/eqFdPath/slesTestEqFdPath.cpp
43db0b781626382c22aa9ba74fe8ac899577be39 23-Jul-2010 Glenn Kasten <gkasten@google.com> am 0f3ce8ff: Update the rear pointer when enqueuing a closure.

Merge commit '0f3ce8ffdcb4a1bb7d0f25dec2616bdc714f1105'

* commit '0f3ce8ffdcb4a1bb7d0f25dec2616bdc714f1105':
Update the rear pointer when enqueuing a closure.
0f3ce8ffdcb4a1bb7d0f25dec2616bdc714f1105 23-Jul-2010 Glenn Kasten <gkasten@google.com> Update the rear pointer when enqueuing a closure.

Change-Id: Ibc800b5384adbaa45b9d7418bc8e7be6df8f5bb6
pensles/libopensles/ThreadPool.c
1a556f2f12a850fd80e1f8a67a0acb00092498a3 22-Jul-2010 Glenn Kasten <gkasten@google.com> am 23c38816: Buffer queue and audio player maintenance.

Merge commit '23c38816f7c210afae5072fd44658c98fec7e119'

* commit '23c38816f7c210afae5072fd44658c98fec7e119':
Buffer queue and audio player maintenance.
23c38816f7c210afae5072fd44658c98fec7e119 17-Jul-2010 Glenn Kasten <gkasten@google.com> Buffer queue and audio player maintenance.

Known problems on Android only (SDL is ok):
High latency on first enqueue, or first after buffer underrun
Play after stop does not resume the current buffer.

Improvements:
Implement BufferQueue::Clear for both Android and SDL.
Play::SetPlayState to Stopped now works for SDL (not yet for Android), and
sets play cursor to start of current buffer.
Play::Pause and Play::Stop while playing now block until done for SDL.
SDL now calls buffer queue callback after each buffer completion, instead of when mixer needs a buffer.
Move SF_INFO sfinfo to CAudioPlayer so we always have good stuff like the sample rate etc.
BufferQueue::Enqueue on a successful enqueue to a formerly empty queue
now kicks off an attribute change followed by a synchronous call to a
hook when first buffer enqueued. Currently unused but could be a way to reduce latency.
Minor comment changes.
Add interface_cond_broadcast.
More logging of errors.
Include source file and line number in logs.
sles_to_android.cpp: needs code for #if 0 sections.
Disable trace logging of BufferQueue::Enqueue and GetState.
Fix printf warnings.
Fix typo in number of interfaces requested at CreateAudioPlayer.
Remove spurious printf and while loop.
Line length 100.
Add intermediate play states which need to be re-mapped.
Fix printf format warnings.
Re-organize the buffer queue initialization.
Implement true seeking based on position for libsndfile.
SndFile is working again, but just barely.
Make it build on non-Android platforms.
BufferQueue::RegisterCallback now checks for STOPPED play state.
Include function name in trace logs.
Enhance test to check buffer queue callbacks, get buffer queue state, get play state.
Fix bug with Stop while Paused not resetting buffer pointer.
Remove obsolete comments and #if 0.
Set enqueue attribute is state is PLAYING and the first buffer is enqueued.
Added slutPrintIIDs.
Update comments.
Fix build warnings.
Fix compile error introduced by the merge.
Fix runtime problems introduced during the merge.
Address code review comments:
- BufferQueue changes apply to AudioRecord also.
- Rename to conform to new naming conventions.
- Add comments.
Fix build warning.
Add interactive buffer queue test application.

Change-Id: I5b00545a599fd9dba96efb834fca2369d149eaaa
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/OpenSLUT.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SndFile.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
pensles/libopensles/trace.c
pensles/tests/mimeUri/multiplay/multiplay.c
pensles/tests/mimeUri/playMuteSolo/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/playUri2/slesTestPlayUri.cpp
pensles/tests/pcmBufferQueue/intbufq/Android.mk
pensles/tests/pcmBufferQueue/intbufq/getch.c
pensles/tests/pcmBufferQueue/intbufq/intbufq.c
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/bufferQueue.c
ecdafa5d8f202d7f61bf2f9d128bb2983c1c6a0f 22-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am f66a508b: Harmonize naming scheme for Android AudioPlayer related functions with what is used for AudioRecorder.

Merge commit 'f66a508b11e327670a6bf5a8cf9c106f215e3b39'

* commit 'f66a508b11e327670a6bf5a8cf9c106f215e3b39':
Harmonize naming scheme for Android AudioPlayer related functions
f66a508b11e327670a6bf5a8cf9c106f215e3b39 21-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Harmonize naming scheme for Android AudioPlayer related functions
with what is used for AudioRecorder.

Change-Id: I96ed88ff17a5fff12b2e17dd6cb84630cba8fad8
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IAndroidStreamType.c
pensles/libopensles/IEngine.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/android_AudioPlayer.cpp
pensles/libopensles/android_AudioPlayer.h
pensles/libopensles/locks.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
53f9b7764d879e6f4adc4d75b6ef5c3ec60a1e7f 21-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am bdb243c1: Add support for PCM audio recording in OpenSL ES.

Merge commit 'bdb243c16be832f5853083480965a437b81df3c8'

* commit 'bdb243c16be832f5853083480965a437b81df3c8':
Add support for PCM audio recording in OpenSL ES.
bdb243c16be832f5853083480965a437b81df3c8 21-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Add support for PCM audio recording in OpenSL ES.

- add support for the AudioRecorder object in Android, not just for
the conformance tests.
- map the SL AudioRecorder object to the AudioRecord class.
- only allow buffer queue data sinks.
- more work required for the recording format, and input device
selection.

Change-Id: I4c65a8fa0ab162036f0eed4b756431f465325cd3
pensles/libopensles/Android.mk
pensles/libopensles/CAudioRecorder.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IEngine.c
pensles/libopensles/IRecord.c
pensles/libopensles/MPH_to.c
pensles/libopensles/android_AudioRecorder.cpp
pensles/libopensles/android_AudioRecorder.h
pensles/libopensles/classes.c
pensles/libopensles/sles_allinclusive.h
4fc8041361dbdb98ee2cbfb0e2f4085b6b32b628 15-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 1f5702ed: Use the AudioEffect framework to implement SLEqualizerItf. EQ presets are stored in the engine because they need to be available during the duration of the application, not just during the life of the AudioPlayer that uses EQ. Change-Id: Ib55ce32b54a4dca1

Merge commit '1f5702ed2239c79b701aa8cc3c675798b34a9656'

* commit '1f5702ed2239c79b701aa8cc3c675798b34a9656':
Use the AudioEffect framework to implement SLEqualizerItf.
1f5702ed2239c79b701aa8cc3c675798b34a9656 09-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Use the AudioEffect framework to implement SLEqualizerItf.
EQ presets are stored in the engine because they need to be
available during the duration of the application, not just
during the life of the AudioPlayer that uses EQ.
Change-Id: Ib55ce32b54a4dca134831a87bc5bd2ae8c111035
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/android_Effect.cpp
pensles/libopensles/android_Effect.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
3a524202e831bf7e26d0fc3b1dd16df7eb6237f0 14-Jul-2010 Glenn Kasten <gkasten@google.com> am 158dbd1a: Logging and comments to make testing easier.

Merge commit '158dbd1a71a890d29490198c8e5019081ac94ac3'

* commit '158dbd1a71a890d29490198c8e5019081ac94ac3':
Logging and comments to make testing easier.
158dbd1a71a890d29490198c8e5019081ac94ac3 14-Jul-2010 Glenn Kasten <gkasten@google.com> Logging and comments to make testing easier.

Add utility function to print an IID.
checkDataFormat now prints a detailed log on invalid format.
Use SL_LOGE and SL_LOGV for logging instead of fprintf, we can easily redirect to standard Android logging eventually.
Add Doxygen-style comments.
Log more specific error message on invalid data format.
Use the full copyright header in one file.

Change-Id: I2342e29f57e97c3b5d94cb219d00e767a75e93fa
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CEngine.c
pensles/libopensles/IAndroidStreamType.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLUT.h
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
b89d66a37c1eba9902b58b9f60377ca54b7857f1 13-Jul-2010 Glenn Kasten <gkasten@google.com> am f51f5c6e: Bug fix and general code cleanup.

Merge commit 'f51f5c6ec99ebc8f2c833a68f232bc1c874a7f2f'

* commit 'f51f5c6ec99ebc8f2c833a68f232bc1c874a7f2f':
Bug fix and general code cleanup.
f51f5c6ec99ebc8f2c833a68f232bc1c874a7f2f 09-Jul-2010 Glenn Kasten <gkasten@google.com> Bug fix and general code cleanup.

Trace debug now uses Android logging by LOGV/LOGE.
Added SL Utility Toolkit for OpenSL ES, similar to OpenAL UT.
Add a -DUSE_TRACE instead of -DNDEBUG and add it commented out to Android.mk.
LOGE for error returns, LOGV for all entry and exit.
Rename debug.c to trace.c.
slutPrintIID prints the symbolic name if known.
Fix bug in slQueryNumSupportedEngineInterfaces and
slQuerySupportedEngineInterfaces which were not
skipping over unavailable interfaces.
Use USE_CONFORMANCE to return SL_RESULT_FEATURE_UNSUPPORTED when not supported
and make some interfaces unavailable depending on USE_CONFORMANCE.
Move most FIXME to separate bug/to-do list.
Fix possible intermediate overflow in duration computation for sndfile.
Line length 100.
Address code review comments, disable LOG.
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CEngine.c
pensles/libopensles/I3DCommit.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/I3DLocation.c
pensles/libopensles/I3DMacroscopic.c
pensles/libopensles/IAudioEncoder.c
pensles/libopensles/IAudioIODeviceCapabilities.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEngine.c
pensles/libopensles/IMIDIMuteSolo.c
pensles/libopensles/IMIDITempo.c
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IMetadataTraversal.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/OpenSLUT.c
pensles/libopensles/OpenSLUT.h
pensles/libopensles/SndFile.c
pensles/libopensles/classes.c
pensles/libopensles/debug.c
pensles/libopensles/devices.c
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/trace.c
225a78a580a2143443ef318ddacc68a44a5f6bf7 09-Jul-2010 Glenn Kasten <gkasten@google.com> am d1490dce: Port test apps to non-Android platform.

Merge commit 'd1490dce2ac1aaef4dc0a87847205f8af688802a'

* commit 'd1490dce2ac1aaef4dc0a87847205f8af688802a':
Port test apps to non-Android platform.
d1490dce2ac1aaef4dc0a87847205f8af688802a 09-Jul-2010 Glenn Kasten <gkasten@google.com> Port test apps to non-Android platform.

Change-Id: If4e8ace08b3eee8c62c375a5b238fd1ed3665a06
pensles/tests/mimeUri/playMuteSolo/slesTest_playMuteSolo.cpp
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
pensles/tests/mimeUri/playUri2/slesTestPlayUri.cpp
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/playSawtoothBufferQueue.cpp
eea73247ca7713cd352d1218053cd4e79453dfd3 09-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 6da4dc84: Since SLPrefetchStatusItf is explicit, fix the playUri test to request two interfaces (volume and prefetch) when creating the AudioPlayer.

Merge commit '6da4dc84721fc3ee7fdf42cd87dc5953b69d9acd'

* commit '6da4dc84721fc3ee7fdf42cd87dc5953b69d9acd':
Since SLPrefetchStatusItf is explicit, fix the playUri test to
8585b92d632989f684504ece1284721951f048e8 09-Jul-2010 Glenn Kasten <gkasten@google.com> am ba90854b: Fix error and warning on non-Android platforms.

Merge commit 'ba90854bb11b5ff2afd5900a29d43689933e9df2'

* commit 'ba90854bb11b5ff2afd5900a29d43689933e9df2':
Fix error and warning on non-Android platforms.
ae6692a00a1c4309e3b2411ff0b0f94181a94975 09-Jul-2010 Glenn Kasten <gkasten@google.com> am 5a430e03: Merge "Format: preprocessor directive not in column 1." into gingerbread

Merge commit '5a430e03fda740341a4093d8e026bf00b5c7e27b'

* commit '5a430e03fda740341a4093d8e026bf00b5c7e27b':
Format: preprocessor directive not in column 1.
40f890f6e461f61fdbc72787c68e7306c8d41395 09-Jul-2010 Glenn Kasten <gkasten@google.com> am bc0465ab: Merge "Fix printf format problem." into gingerbread

Merge commit 'bc0465ab3d7633641aacc2dced88f7e5ad8addfe'

* commit 'bc0465ab3d7633641aacc2dced88f7e5ad8addfe':
Fix printf format problem.
84132223fd33d265cdc6e1170b05d57dc9383276 09-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 2caa5dec: Modify result related macros to not force them to be used as the beginning and end of a variable visibility bloc.

Merge commit '2caa5decd4882f609c3bf1c69b40d6c2398387bc'

* commit '2caa5decd4882f609c3bf1c69b40d6c2398387bc':
Modify result related macros to not force them to be used as the
6da4dc84721fc3ee7fdf42cd87dc5953b69d9acd 09-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Since SLPrefetchStatusItf is explicit, fix the playUri test to
request two interfaces (volume and prefetch) when creating the
AudioPlayer.

Change-Id: I97b18b68dac2ffacef9c709c3f1c2ee85081e07d
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
ba90854bb11b5ff2afd5900a29d43689933e9df2 09-Jul-2010 Glenn Kasten <gkasten@google.com> Fix error and warning on non-Android platforms.

sles.c:374: error: ‘for’ loop initial declaration used outside C99 mode
sles.c:374: warning: comparison between signed and unsigned

Change-Id: I344c928cb2b0302f0ed6daa74e7b7c530783c2f4
pensles/libopensles/sles.c
5a430e03fda740341a4093d8e026bf00b5c7e27b 09-Jul-2010 Glenn Kasten <gkasten@google.com> Merge "Format: preprocessor directive not in column 1." into gingerbread
20b4b575b08caa9f0e5193797f15a37d6cc448c5 09-Jul-2010 Yu Shan Emily Lau <yslau@google.com> am 6bc9decd: Added the make file for the opensles gTest.

Merge commit '6bc9decd2605337cfff7ee34e0ca8a785664672d'

* commit '6bc9decd2605337cfff7ee34e0ca8a785664672d':
Added the make file for the opensles gTest.
bc0465ab3d7633641aacc2dced88f7e5ad8addfe 09-Jul-2010 Glenn Kasten <gkasten@google.com> Merge "Fix printf format problem." into gingerbread
b8272236ad41e7ecfbbddec0948e752dc1496ff7 09-Jul-2010 Glenn Kasten <gkasten@google.com> Format: preprocessor directive not in column 1.

Change-Id: I33ee829c3f963c5ca2495cfa08ac400c28bd1da2
pensles/libopensles/IDynamicInterfaceManagement.c
7cfdade2044c90b6487cf3987394319d72355710 09-Jul-2010 Glenn Kasten <gkasten@google.com> Fix printf format problem.

Change-Id: I8ced7479d29702455bf128337e24f1f4ef8aeb16
pensles/libopensles/android_SfPlayer.cpp
2caa5decd4882f609c3bf1c69b40d6c2398387bc 09-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Modify result related macros to not force them to be used as the
beginning and end of a variable visibility bloc.

Change-Id: I31c0fcd6dda36a4f77c1361ace79e27c97ca87fb
pensles/libopensles/sles_allinclusive.h
6bc9decd2605337cfff7ee34e0ca8a785664672d 08-Jul-2010 Yu Shan Emily Lau <yslau@google.com> Added the make file for the opensles gTest.

Change-Id: Ib2750cd5ba9500d7030bf64fca99a3411bbaa74c
pensles/tests/Android.mk
pensles/tests/mimeUri_test.cpp
447f27ae3782eee804b101f27facbff539b5d658 07-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 00e03878: Implement seeking on a media player.

Merge commit '00e03878051187063f3c167cd1d0bf02c4d68430'

* commit '00e03878051187063f3c167cd1d0bf02c4d68430':
Implement seeking on a media player.
00e03878051187063f3c167cd1d0bf02c4d68430 07-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement seeking on a media player.

Change-Id: I0894e79be80ded39f051c670c30ac380a74f9888
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles_to_android.cpp
678683ec097892f6405500d5c8c7f1a756ab966d 07-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am d0222eec: Don\'t allow requested the SLSeekItf when the data source is a buffer queue. Mark SLPrefetchStatusItf and SLSeekItf as explicit interfaces. New parameter change flag for playback position.

Merge commit 'd0222eec2f5ae565ab930fc1364950ab4530e1e8'

* commit 'd0222eec2f5ae565ab930fc1364950ab4530e1e8':
Don't allow requested the SLSeekItf when the data source is a buffer
d0222eec2f5ae565ab930fc1364950ab4530e1e8 07-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Don't allow requested the SLSeekItf when the data source is a buffer
queue.
Mark SLPrefetchStatusItf and SLSeekItf as explicit interfaces.
New parameter change flag for playback position.

Change-Id: I2c45818e294ec65a1b7e741ec50e9389acd6d187
pensles/libopensles/IEngine.c
pensles/libopensles/ISeek.c
pensles/libopensles/classes.c
pensles/libopensles/locks.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
1433bbf8cbddbc4fad548f287d5ed29ef6bc1234 07-Jul-2010 Glenn Kasten <gkasten@google.com> am 50732e34: Merge "Trace debug support." into gingerbread

Merge commit '50732e34c3e613d59bfb37436b7d057a0c38c5be'

* commit '50732e34c3e613d59bfb37436b7d057a0c38c5be':
Trace debug support.
25f8ae3d7211f47f83b4179c5edde5dc8eb81abf 07-Jul-2010 Yu Shan Emily Lau <yslau@google.com> am 95a59645: The change broke the sim build. Remove the makefile for now until find the fix.

Merge commit '95a59645429206e707dd439857a409cfbed2dd15'

* commit '95a59645429206e707dd439857a409cfbed2dd15':
The change broke the sim build. Remove the makefile for now until find the fix.
50732e34c3e613d59bfb37436b7d057a0c38c5be 07-Jul-2010 Glenn Kasten <gkasten@google.com> Merge "Trace debug support." into gingerbread
f156301680273e71e56e898f98798f5b5b2431f6 03-Jul-2010 Glenn Kasten <gkasten@google.com> Trace debug support.

Add Enter/Leave interface macros for trace debugging.
3D interface methods do not block for now.
Line length 100.
Add blank lines between interface methods for clarity.

Change-Id: I412936e8574f95308731e41f8b854fe342cb04b6
pensles/libopensles/Android.mk
pensles/libopensles/I3DCommit.c
pensles/libopensles/I3DDoppler.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/I3DLocation.c
pensles/libopensles/I3DMacroscopic.c
pensles/libopensles/I3DSource.c
pensles/libopensles/IAndroidStreamType.c
pensles/libopensles/IAudioDecoderCapabilities.c
pensles/libopensles/IAudioEncoder.c
pensles/libopensles/IAudioEncoderCapabilities.c
pensles/libopensles/IAudioIODeviceCapabilities.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/ILEDArray.c
pensles/libopensles/IMIDIMessage.c
pensles/libopensles/IMIDIMuteSolo.c
pensles/libopensles/IMIDITempo.c
pensles/libopensles/IMIDITime.c
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IMetadataTraversal.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPitch.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/IPrefetchStatus.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IRatePitch.c
pensles/libopensles/IRecord.c
pensles/libopensles/ISeek.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/IVibra.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/IVisualization.c
pensles/libopensles/IVolume.c
pensles/libopensles/classes.c
pensles/libopensles/debug.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/tests/mimeUri/multiplay/multiplay.c
95a59645429206e707dd439857a409cfbed2dd15 03-Jul-2010 Yu Shan Emily Lau <yslau@google.com> The change broke the sim build. Remove the makefile for now until find the fix.

Change-Id: I83eb123fdaec129238f62efdc5ea21f2426f7f8c
pensles/tests/Android.mk
eac833af99c1e70f8ee784be8e45dc4b8065ea09 02-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am b7aab831: Fix sim build. Proper makefile modification, not copy paste.

Merge commit 'b7aab83100a3aa1c887c7836a7a0c0bd0e3437d5'

* commit 'b7aab83100a3aa1c887c7836a7a0c0bd0e3437d5':
Fix sim build. Proper makefile modification, not copy paste.
b7aab83100a3aa1c887c7836a7a0c0bd0e3437d5 02-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix sim build. Proper makefile modification, not copy paste.

Change-Id: Iede8f9b07029491e76a46e500a13aff0aa6de881
pensles/tests/Android.mk
a569fc15dcbf7bec65205701dfda82e933bea83b 02-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 26548758: Fix sim build. Exclude stlport on the simulator.

Merge commit '26548758df083487f754ff6b8d9fb0189e7185fc'

* commit '26548758df083487f754ff6b8d9fb0189e7185fc':
Fix sim build. Exclude stlport on the simulator.
26548758df083487f754ff6b8d9fb0189e7185fc 02-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix sim build. Exclude stlport on the simulator.

Change-Id: I54f66168b75788846ee0c94216be7f487ab4c0f2
pensles/tests/Android.mk
db8d4a3385897185772b78b302d8c04b62cb4d16 02-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am 5f24cf20: Merge "Cache sample rate once known instead of querying it from the player." into gingerbread

Merge commit '5f24cf20e7d8b13f84df98aff6012bc6c0160111'

* commit '5f24cf20e7d8b13f84df98aff6012bc6c0160111':
Cache sample rate once known instead of querying it from the player.
5f24cf20e7d8b13f84df98aff6012bc6c0160111 02-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Cache sample rate once known instead of querying it from the player." into gingerbread
4bdead9570d01cd53a45ad1e0f6f94196d0e6058 02-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Cache sample rate once known instead of querying it from the player.

Change-Id: I23f0ca4f6b65329ac5d13cc24a080c26dbc48648
pensles/libopensles/IEngine.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
ff5e2ec79b6dc89a333fa49580677160294a9d03 02-Jul-2010 Yu Shan Emily Lau <yslau@google.com> am 5b3af2f8: Merge "Integrated the mimeUri PlayUri native with the gTest framework." into gingerbread

Merge commit '5b3af2f818524f827c6b24ae54cb454a3c0150c1'

* commit '5b3af2f818524f827c6b24ae54cb454a3c0150c1':
Integrated the mimeUri PlayUri native with the gTest framework.
5b3af2f818524f827c6b24ae54cb454a3c0150c1 02-Jul-2010 Yu Shan Emily Lau <yslau@google.com> Merge "Integrated the mimeUri PlayUri native with the gTest framework." into gingerbread
dc04aaed89433b2d38fabd0a0644ce2b20bce17d 01-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am ba6f5a85: Let SfPlayer handle the play state with regards to decoding. This fixes the bug where the player couldn\'t be resumed after being paused. Add test of the OpenSL ES play states.

Merge commit 'ba6f5a8583a5dabbd05a690b334844dffa179091'

* commit 'ba6f5a8583a5dabbd05a690b334844dffa179091':
Let SfPlayer handle the play state with regards to decoding.
ba6f5a8583a5dabbd05a690b334844dffa179091 01-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Let SfPlayer handle the play state with regards to decoding.
This fixes the bug where the player couldn't be resumed after being paused.
Add test of the OpenSL ES play states.

Change-Id: I3793941abf852aaca359346c656e4a8e29ed666c
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles_to_android.cpp
pensles/tests/mimeUri/playStates/Android.mk
pensles/tests/mimeUri/playStates/slesTest_playStates.cpp
721136d694f70eccf1530a93dbfd80bdf26bd410 01-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am b4c7dc8d: Merge "Fix build. Correct definition of 64bit constants." into gingerbread

Merge commit 'b4c7dc8d26cfee768b9d495378ccd958bb7de3e6'

* commit 'b4c7dc8d26cfee768b9d495378ccd958bb7de3e6':
Fix build. Correct definition of 64bit constants.
7743e413f013c91576d5c5a04f0b786f482602d9 01-Jul-2010 Glenn Kasten <gkasten@google.com> am c37c934e: Fix miscellaneous bugs.

Merge commit 'c37c934e00a96afe18aaadd9f9a1863c721bf8ea'

* commit 'c37c934e00a96afe18aaadd9f9a1863c721bf8ea':
Fix miscellaneous bugs.
b4c7dc8d26cfee768b9d495378ccd958bb7de3e6 01-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix build. Correct definition of 64bit constants." into gingerbread
ebdb69f5880c79ce7cfb1b8ec096ebd6acc5294f 01-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix build. Correct definition of 64bit constants.

Change-Id: I293a28f377b5e6f7ebf5e341c3317f99f78fd125
pensles/include/OpenSLES_Android.h
pensles/libopensles/android_SfPlayer.h
c37c934e00a96afe18aaadd9f9a1863c721bf8ea 30-Jun-2010 Glenn Kasten <gkasten@google.com> Fix miscellaneous bugs.

I3DCommit::Commit should block until generation count is updated.
IDeviceVolume_SetVolume and IDeviceVolume_GetVolume work on more device IDs.
Implement IEngine_CreateListener.
IEngine_Create3DGroup return correct status code.
IIDs were out of order in IID_to_MPH.c and OpenSLES_IID.c.
Comment out deadlock in Volume::SetMute.
Supply at least one codec descriptor for each supported codec.
Add object_cond_broadcast for use by 3DCommit::Commit.
EngineCapabilities allocates memory -- questionable.
Claim all 3 profiles temporarily.
AudioIODeviceCapabilities::GetDefaultAudioDevices should handle default audio devices.
Object::GetInterface needs to return correct status code.
Vibra interfaces are implicit not optional.
Line length 100.
Fix Android portability bug.
Update MPH perfect hash function.
MPH constants should not be ifdef.
MPH_to_index tables needed additional entries at end.
Interface ID and name tables should not be ifdef.
OUTPUTMIXEXT should not be advertised publicly.
For certain locator types, the format is permitted to be undefined.
Remove temporary workaround for Khronos bug 6331.
Engine::QueryNumSupportedInterfaces and Engine::QuerySupportedInterfaces skip unavailable interfaces.
Address code review comments.
More clear device ID handling.
Use symbolic constants instead of 0 for null data locator and data format.
Add comments about 3D commit.

Change-Id: I8d31ded6c877e71b6f5ef1e90446035da809d9a6
pensles/libopensles/I3DCommit.c
pensles/libopensles/IAudioDecoderCapabilities.c
pensles/libopensles/IAudioIODeviceCapabilities.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/IObject.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/SndFile.c
pensles/libopensles/classes.c
pensles/libopensles/devices.c
pensles/libopensles/interfaces.c
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
ed441e7a89d4d69e94ae1199264a71b5f3a8b496 01-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> am e541e8b5: Merge "Declaration of a new DataLocator type for OpenSL ES on Android: file descriptor. Implementation of support for SL_DATALOCATOR_ANDROIDFD. Test application to play a file from a file descriptor. Fix bug in sles_to_android.cpp where resources were ne

Merge commit 'e541e8b546b4f37cec9238107d834cea2ed46d2b'

* commit 'e541e8b546b4f37cec9238107d834cea2ed46d2b':
Declaration of a new DataLocator type for OpenSL ES on Android: file
e541e8b546b4f37cec9238107d834cea2ed46d2b 01-Jul-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Declaration of a new DataLocator type for OpenSL ES on Android: file descriptor. Implementation of support for SL_DATALOCATOR_ANDROIDFD. Test application to play a file from a file descriptor. Fix bug in sles_to_android.cpp where resources were never freed when destroying the player." into gingerbread
1cd86b2b1d0b099bd9114e842794f8551597b144 30-Jun-2010 Yu Shan Emily Lau <yslau@google.com> Integrated the mimeUri PlayUri native with the gTest framework.

Change-Id: I64bfc2acfdd1be7088a1536dec8033576eb11fdc
pensles/tests/Android.mk
pensles/tests/mimeUri_test.cpp
c5ac6a3baf25c4adde2186ad8235e889ebc11151 30-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Declaration of a new DataLocator type for OpenSL ES on Android: file
descriptor.
Implementation of support for SL_DATALOCATOR_ANDROIDFD.
Test application to play a file from a file descriptor.
Fix bug in sles_to_android.cpp where resources were never freed
when destroying the player.

Change-Id: I45156f41ee5ca77d3a944f8f89b75880db8b4aba
pensles/include/OpenSLES_Android.h
pensles/include/OpenSLES_Platform.h
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/tests/mimeFd/playFdPath/Android.mk
pensles/tests/mimeFd/playFdPath/slesTestPlayFdPath.cpp
0be462d1a6068087b6313bda25f48d7ee956a084 30-Jun-2010 Glenn Kasten <gkasten@google.com> am ca80bb3b: Initial draft of multiplay command-line test app.

Merge commit 'ca80bb3b553c27994e3cecf2847619a23fafcad2'

* commit 'ca80bb3b553c27994e3cecf2847619a23fafcad2':
Initial draft of multiplay command-line test app.
ca80bb3b553c27994e3cecf2847619a23fafcad2 30-Jun-2010 Glenn Kasten <gkasten@google.com> Initial draft of multiplay command-line test app.

Change-Id: I821573c7e9eef123dab3a5b00e1040ab69ea215a
pensles/tests/mimeUri/multiplay/Android.mk
pensles/tests/mimeUri/multiplay/multiplay.c
4d325632814596abed1cb5135507933d7e8c7003 30-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am 231d4348: Add a test for GetStreamType on SLAndroidStreamTypeItf.

Merge commit '231d43481aef3975acc1ad81e96ea976caa5703d'

* commit '231d43481aef3975acc1ad81e96ea976caa5703d':
Add a test for GetStreamType on SLAndroidStreamTypeItf.
231d43481aef3975acc1ad81e96ea976caa5703d 29-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Add a test for GetStreamType on SLAndroidStreamTypeItf.

Change-Id: I2115488a2d4dc97a8bb1f5f01742e77d0960e394
pensles/tests/mimeUri/playStreamType/slesTestPlayStreamType.cpp
cf5c3763c7008cab8a6554bd70a0ee229ee1a151 29-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am ed3e92ee: Declaration and implementation of a new OpenSL ES interface to set to set the Android stream type on an AudioPlayer object.

Merge commit 'ed3e92ee5465be1396418098a4ef231ceb0adf33'

* commit 'ed3e92ee5465be1396418098a4ef231ceb0adf33':
Declaration and implementation of a new OpenSL ES interface to set
ed3e92ee5465be1396418098a4ef231ceb0adf33 29-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Declaration and implementation of a new OpenSL ES interface to set
to set the Android stream type on an AudioPlayer object.

Change-Id: Ic5d14e9899dfbccfc647642ae562730807bc73fe
pensles/include/OpenSLES_Android.h
pensles/libopensles/Android.mk
pensles/libopensles/IAndroidStreamType.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/classes.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
pensles/tests/mimeUri/playStreamType/Android.mk
pensles/tests/mimeUri/playStreamType/slesTestPlayStreamType.cpp
c3e87d9e11586c20be606f017857535c024d1175 29-Jun-2010 Glenn Kasten <gkasten@google.com> am 9c2a7b1e: Restore previous version of CAudioPlayer fields.

Merge commit '9c2a7b1e9f8203bf9de26efca0f1f805038b1f2b'

* commit '9c2a7b1e9f8203bf9de26efca0f1f805038b1f2b':
Restore previous version of CAudioPlayer fields.
313d935ae8746cfd1f7dd90165d0037ac1fa9ba0 29-Jun-2010 Glenn Kasten <gkasten@google.com> am 15f9f5e6: Gain and transport attributes at mutex unlock.

Merge commit '15f9f5e609265dff9d6036af38bea084c42a702a'

* commit '15f9f5e609265dff9d6036af38bea084c42a702a':
Gain and transport attributes at mutex unlock.
9c2a7b1e9f8203bf9de26efca0f1f805038b1f2b 29-Jun-2010 Glenn Kasten <gkasten@google.com> Restore previous version of CAudioPlayer fields.

Addressed code review comments:
Move channel mute, channel solo, and channel count from IMuteSolo to CAudioPlayer.
Deferred support for IMuteSolo to CMIDIPlayer deferred until we hear back from working group.
Move comment marker to correct location.

We discussed the code review comments and agreed to restore the
previous handling of channel mute, channel solo, and channel count.
We will probably have to review this again later, depending on what
the working group says about MIDI Player. To make it easier to
examine the history later, I'm submitting the previous change as
is, followed immediately by this change which addresses the code
review comments.

Change-Id: I4d5594d70c1c2d5fb90980a8a0414177ff29d4a7
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IEngine.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
15f9f5e609265dff9d6036af38bea084c42a702a 24-Jun-2010 Glenn Kasten <gkasten@google.com> Gain and transport attributes at mutex unlock.

Update both interface and player copies of mute/solo.
Move synchronous gain and transport updates to mutex unlock exclusive.
Update sync thread logic.
Keep track of player position using tracks in PCM frame units.
Implement solo.
Various volume-related fixes.
Mute solo fields are only in IMuteSolo, but IMuteSolo is
immediately after IVolume to make it easier to find.
Move Android volume fields into audio player.
Fix printf missing newline.
Only one copy of mute and solo.
Clean up comments.
Line length 100.
SDL gain and transport updates are synchronous.
Fix unused variable warnings.
Use symbol for number of stereo channels.
Rearrange fields to save memory.
Add comments.
Fix problems introduced during the last merge.

Change-Id: I121fcbe4189b06850983941f540942a745fc51fb
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/CEngine.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/IMIDIMessage.c
pensles/libopensles/IMIDIMuteSolo.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/ISeek.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/IVolume.c
pensles/libopensles/MPH.h
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SLSndFile.h
pensles/libopensles/SndFile.c
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/libopensles/platform.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
pensles/libopensles/sync.c
pensles/tests/mimeUri/playMuteSolo/slesTest_playMuteSolo.cpp
82aca0d4850b15f65063781e1026dfeab7a004ee 29-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am a062961c: Fix test makefiles for OpenSL ES test apps.

Merge commit 'a062961c6103cf07f7a486bad390039823fa03e1'

* commit 'a062961c6103cf07f7a486bad390039823fa03e1':
Fix test makefiles for OpenSL ES test apps.
a062961c6103cf07f7a486bad390039823fa03e1 29-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix test makefiles for OpenSL ES test apps.

Change-Id: I996bd47aad50231f8d93f48fdedac3be74295592
pensles/tests/mimeUri/playMuteSolo/Android.mk
pensles/tests/mimeUri/playUri/Android.mk
pensles/tests/mimeUri/playUri2/Android.mk
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/Android.mk
b996e335fe91661a44d680880ef7c3b0613de95c 26-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am 08c0c5b2: Fix prefetching issue where decode shouldn\'t start before playback starts.

Merge commit '08c0c5b29dd6a834ff4f1a55dc1455621b412a0e'

* commit '08c0c5b29dd6a834ff4f1a55dc1455621b412a0e':
Fix prefetching issue where decode shouldn't start before playback
08c0c5b29dd6a834ff4f1a55dc1455621b412a0e 26-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix prefetching issue where decode shouldn't start before playback
starts.

Change-Id: I01b7b36b388b9bc37ea3c9d5e3f74a531f887128
pensles/libopensles/android_SfPlayer.cpp
c5cc0dc4a218be165ebd5d43e5300d2b266b2d5b 25-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am eee8ad3a: Implement stop for SfPlayer. Fixes crash at end of playMuteSolo test.

Merge commit 'eee8ad3a39c439b48be3b5cecaa4b71272d5f77d'

* commit 'eee8ad3a39c439b48be3b5cecaa4b71272d5f77d':
Implement stop for SfPlayer. Fixes crash at end of playMuteSolo test.
eee8ad3a39c439b48be3b5cecaa4b71272d5f77d 25-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement stop for SfPlayer. Fixes crash at end of playMuteSolo test.

Change-Id: I4fb88cae71d8972b03c8d7ad3f108d6aff39ada5
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles_to_android.cpp
eb5bd5218961cd1f9c13a0f5e1f88cdd3f6574c2 25-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am 5ddecf65: Merge "Implement the SLMuteSoloItf interface." into gingerbread

Merge commit '5ddecf6541b2b518d61548cae6aff13b8c8ee6c0'

* commit '5ddecf6541b2b518d61548cae6aff13b8c8ee6c0':
Implement the SLMuteSoloItf interface.
18552d127292c3e56d7fbad44ed76a1110ef1841 25-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am 9ade5235: Merge "New test / demo to exercise SLMuteSoloItf on an AudioPlayer." into gingerbread

Merge commit '9ade5235616468c5083d62b5b1660457581839bc'

* commit '9ade5235616468c5083d62b5b1660457581839bc':
New test / demo to exercise SLMuteSoloItf on an AudioPlayer.
5ddecf6541b2b518d61548cae6aff13b8c8ee6c0 25-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "Implement the SLMuteSoloItf interface." into gingerbread
9ade5235616468c5083d62b5b1660457581839bc 25-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "New test / demo to exercise SLMuteSoloItf on an AudioPlayer." into gingerbread
f5a72df81e05deb7afb56410aa4ecf370b2df141 25-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> New test / demo to exercise SLMuteSoloItf on an AudioPlayer.

Change-Id: Ib3fddaea46098ed944b62d08d8ba8a657bf0174c
pensles/tests/mimeUri/playMuteSolo/Android.mk
pensles/tests/mimeUri/playMuteSolo/slesTest_playMuteSolo.cpp
da18bcf20d4cceb715904717a5a8b1585f935080 24-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement the SLMuteSoloItf interface.

Change-Id: I5ed3112046c4317fe752bc2545b3e168f7e8a18a
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IVolume.c
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
7a1c902ae6aa05d14fc6edf35af943cae7ed1fa1 24-Jun-2010 Glenn Kasten <gkasten@google.com> am 05f65ed1: Normalize boolean input parameters to slCreateEngine.

Merge commit '05f65ed167848e7f51b36c804dd70e3fe5478928'

* commit '05f65ed167848e7f51b36c804dd70e3fe5478928':
Normalize boolean input parameters to slCreateEngine.
05f65ed167848e7f51b36c804dd70e3fe5478928 24-Jun-2010 Glenn Kasten <gkasten@google.com> Normalize boolean input parameters to slCreateEngine.

Change-Id: Ia9453d9f5784ff75148e380fc3bbb03fe4ef8c40
pensles/libopensles/sles.c
4224a2a2eeea0a619161b1aa20d696ee883208af 24-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am 474bc3d1: Share the same AudioTrack instance regardless of the data source of the AudioPlayer, buffer queue or URI. Refactor code that handles AudioTrack events so it is shared among the two implementations of AudioTrack event callbacks.

Merge commit '474bc3d17dc75cbaf3f553d16fe21ef35071ddad'

* commit '474bc3d17dc75cbaf3f553d16fe21ef35071ddad':
Share the same AudioTrack instance regardless of the data source
474bc3d17dc75cbaf3f553d16fe21ef35071ddad 23-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Share the same AudioTrack instance regardless of the data source
of the AudioPlayer, buffer queue or URI. Refactor code that
handles AudioTrack events so it is shared among the two implementations
of AudioTrack event callbacks.

Change-Id: Ida49fada2515acaac06bdcb42cc833c97ee20dc8
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
bc5963d28a5e9cb94899857c7c00dfbfcfe49e70 23-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am 5d9e8432: Introduction of Stagefright to replace MediaPlayer. Change-Id: I59c467ebafed6f5ceee37c2d8f6cd132b25c1459

Merge commit '5d9e8432d0217fe139987703b8e1f129296171ff'

* commit '5d9e8432d0217fe139987703b8e1f129296171ff':
Introduction of Stagefright to replace MediaPlayer.
5d9e8432d0217fe139987703b8e1f129296171ff 16-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Introduction of Stagefright to replace MediaPlayer.
Change-Id: I59c467ebafed6f5ceee37c2d8f6cd132b25c1459
pensles/libopensles/Android.mk
pensles/libopensles/IEngine.c
pensles/libopensles/android_SfPlayer.cpp
pensles/libopensles/android_SfPlayer.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
38f4a72292f112412ddb7bd4410a8510726112d2 21-Jun-2010 Glenn Kasten <gkasten@google.com> am 7e5dd9fa: Continued bug fixing.

Merge commit '7e5dd9fa6ab032d7eeaac79bee4370a133eda8c2'

* commit '7e5dd9fa6ab032d7eeaac79bee4370a133eda8c2':
Continued bug fixing.
7e5dd9fa6ab032d7eeaac79bee4370a133eda8c2 21-Jun-2010 Glenn Kasten <gkasten@google.com> Continued bug fixing.

Remove obsolete FIXMEs.
Fix copyright notices on two files.
Move interface ID lookup function to separate source file,
and replace O(n) linear search by O(1) perfect hash.
Use symbolic constants instead of magic numbers in SndFile and DeviceVolume.
Remove blank lines at EOF.
Pre-compute max index of devices at engine creation time.
Fix mute and gain bugs on SDL/SndFile.
Add interface name lookup function for debugging.

Change-Id: I31686c2bf874c9778e193648b74b6ab061950f8a
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IID_to_MPH.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.h
pensles/libopensles/SndFile.c
pensles/libopensles/interfaces.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
7aeedad3d204dde900e7a0981f4d1f27c2dc1421 21-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am 9db83353: For Android code, use ANDROID flag rather then USE_ANDROID.

Merge commit '9db8335361c67c4ed877f68218835df96ce43a4b'

* commit '9db8335361c67c4ed877f68218835df96ce43a4b':
For Android code, use ANDROID flag rather then USE_ANDROID.
9db8335361c67c4ed877f68218835df96ce43a4b 21-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> For Android code, use ANDROID flag rather then USE_ANDROID.

Change-Id: I4b5877d8b6aee37bb472c817a2a863104271a03b
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IEngine.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/IVolume.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
850e0d339e351e0b1dc2f9af33990bb9b73d3e86 18-Jun-2010 Glenn Kasten <gkasten@google.com> am 277aee45: Improve platform portability.

Merge commit '277aee45eabf5d756a7e0de49efee2ee1c0d9640'

* commit '277aee45eabf5d756a7e0de49efee2ee1c0d9640':
Improve platform portability.
277aee45eabf5d756a7e0de49efee2ee1c0d9640 18-Jun-2010 Glenn Kasten <gkasten@google.com> Improve platform portability.

Change-Id: I00ae4f3f4cf31d9156c274750c3582ae60450732
pensles/include/OpenSLES_Platform.h
pensles/libopensles/sles_allinclusive.h
79e97f2916254549a119aa454e5ea1977642dfef 18-Jun-2010 Glenn Kasten <gkasten@google.com> am ffeb2e16: Minor bug fixes and FIXMEs.

Merge commit 'ffeb2e16c2886eefa88d6eaf4c7be78c2eced82b'

* commit 'ffeb2e16c2886eefa88d6eaf4c7be78c2eced82b':
Minor bug fixes and FIXMEs.
ffeb2e16c2886eefa88d6eaf4c7be78c2eced82b 17-Jun-2010 Glenn Kasten <gkasten@google.com> Minor bug fixes and FIXMEs.

3DGroup object now tracks its member Player objects.
Avoid possible integer overflow during multiplication.
Remove hard-code indices in EffectSend initialization.
Remove obsolete FIXME comments.
Localize hard-coded constants in SDL and libsndfile platforms.
Add primitive stereo positioning for SDL platform.
pensles/libopensles/I3DGrouping.c
pensles/libopensles/I3DLocation.c
pensles/libopensles/I3DMacroscopic.c
pensles/libopensles/I3DSource.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SndFile.c
pensles/libopensles/sles_allinclusive.h
d623f89e70aed8e454bdeb3caf6647b8a1843059 18-Jun-2010 Glenn Kasten <gkasten@google.com> am 3cdc48ac: Add limited volume support for USE_SNDFILE platform.

Merge commit '3cdc48ac145e12a40b0ff0f90e8c01bec269bc38'

* commit '3cdc48ac145e12a40b0ff0f90e8c01bec269bc38':
Add limited volume support for USE_SNDFILE platform.
3cdc48ac145e12a40b0ff0f90e8c01bec269bc38 16-Jun-2010 Glenn Kasten <gkasten@google.com> Add limited volume support for USE_SNDFILE platform.

Fix build warnings.
Remove obsolete FIXME.
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SndFile.c
pensles/libopensles/sles.c
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/bufferQueue.c
341fc93d297d96abe86b2f5068fb347abb5e7f78 17-Jun-2010 Glenn Kasten <gkasten@google.com> am 32a32a46: Fix two long-standing FIXMEs: O(n) and mThis.

Merge commit '32a32a4674ed760e1ab6bf4b4349216bbfa75735'

* commit '32a32a4674ed760e1ab6bf4b4349216bbfa75735':
Fix two long-standing FIXMEs: O(n) and mThis.
32a32a4674ed760e1ab6bf4b4349216bbfa75735 17-Jun-2010 Glenn Kasten <gkasten@google.com> Fix two long-standing FIXMEs: O(n) and mThis.

Replace some O(n) algorithms by O(1) using ctz.
mThis was redundant for IObject.

Change-Id: Ic2cd0345498992af06495e9f3a13211dfeb3910e
pensles/libopensles/I3DCommit.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/locks.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sync.c
4e69659536cbc2b9e1fff97e73a11d192b5823a7 16-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> am b3a9572c: Introduction of android resource states, rather than relying only a the mPrepared field.

Merge commit 'b3a9572c70375e02b15d2ffb0e28d4c36ec269b0'

* commit 'b3a9572c70375e02b15d2ffb0e28d4c36ec269b0':
Introduction of android resource states, rather than relying only
09fd375a0cd04dd1b986bfa2d3ad065aabec0658 16-Jun-2010 Glenn Kasten <gkasten@google.com> am bcf6e4f2: More work on asynchronous operations.

Merge commit 'bcf6e4f2a46544f599f6c77354650c6aad91ea5d'

* commit 'bcf6e4f2a46544f599f6c77354650c6aad91ea5d':
More work on asynchronous operations.
b3a9572c70375e02b15d2ffb0e28d4c36ec269b0 16-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Introduction of android resource states, rather than relying only
a the mPrepared field.

Change-Id: I9d532d4b8cad28743b2bef2232591a24c646be5e
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
bcf6e4f2a46544f599f6c77354650c6aad91ea5d 14-Jun-2010 Glenn Kasten <gkasten@google.com> More work on asynchronous operations.

Improve interface handling.
Interface state is kept using array of 4-bit fields instead of
separate bit-masks; this is simpler and uses less memory.
Better error handling in EffectSend.
Keep track of interfaces that have been gotten.
Asynchronous AddInterface and ResumeInterface.
Closures are now allocated dynamically.
Add resume hook.
Fix 2 bugs introduced during last effort.
Line length 100.
Continue asynchronous DynamicInterfaceManagement.
Implement asynchronous Object::Resume.
AbortAsyncOperation for Realize and Resume phase 1.
Implement asynchronous abort during phase 1.
ThreadPool bug fixes.
When destroying ThreadPool, free memory used by pending closures.
Don't enqueue additional closures while ThreadPool is shutting down.
Update comments and assertions.
Use 8-bits per interface state instead of 4-bits.
List official object states explicitly.
Add comments.
pensles/libopensles/CEngine.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IObject.c
pensles/libopensles/MPH_to.c
pensles/libopensles/ThreadPool.c
pensles/libopensles/ThreadPool.h
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
f973ee6fedad125ff4040ba65be633565527f0e8 15-Jun-2010 Dmitry Shmidt <dimitrysh@google.com> Fix compilation problem - wrong include path

Change-Id: I55b39c1b3e0171328bdce8e4295439d3610c1226
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
pensles/tests/mimeUri/playUri/Android.mk
pensles/tests/mimeUri/playUri2/Android.mk
4c2810815e7317b5d6c0404d40421ad63b4afd28 12-Jun-2010 Glenn Kasten <gkasten@google.com> am aee4409e: Improve platform portability.

Merge commit 'aee4409e59584f8e8d0ddaf7e44dc80ec5b80444'

* commit 'aee4409e59584f8e8d0ddaf7e44dc80ec5b80444':
Improve platform portability.
aee4409e59584f8e8d0ddaf7e44dc80ec5b80444 12-Jun-2010 Glenn Kasten <gkasten@google.com> Improve platform portability.

Change-Id: Ieb7290591730f1be7d201ec4690a805c959f76e0
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/SDL.c
pensles/libopensles/SLSndFile.h
pensles/libopensles/SndFile.c
pensles/libopensles/SndFile.h
pensles/libopensles/sles_allinclusive.h
b919201d00bec59cb6c46a8d764e8e7fb47763c8 12-Jun-2010 Glenn Kasten <gkasten@google.com> am ca4bf6e7: Merge "Make test apps work on host platform." into gingerbread

Merge commit 'ca4bf6e7366991ed2d124b7240a0657e30b8ad39'

* commit 'ca4bf6e7366991ed2d124b7240a0657e30b8ad39':
Make test apps work on host platform.
ca4bf6e7366991ed2d124b7240a0657e30b8ad39 12-Jun-2010 Glenn Kasten <gkasten@google.com> Merge "Make test apps work on host platform." into gingerbread
ade8861ddc01f471733bff8773585a44db52ce62 12-Jun-2010 Glenn Kasten <gkasten@google.com> am 210602c4: Fix printf format bug.

Merge commit '210602c46068065dcd15ad78e4af26593d61f03f'

* commit '210602c46068065dcd15ad78e4af26593d61f03f':
Fix printf format bug.
95364617b16ca2e322a4e0faeda93a2750d29fd6 11-Jun-2010 Glenn Kasten <gkasten@google.com> Make test apps work on host platform.

Change-Id: Ia5ed73b0ff77eb16959b3a539ac33ea9e89a9f4c
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/SndFile.c
210602c46068065dcd15ad78e4af26593d61f03f 11-Jun-2010 Glenn Kasten <gkasten@google.com> Fix printf format bug.

Change-Id: Ic81eea513315ca6465a6cbc5d19731122bbb62ed
pensles/tests/mimeUri/playUri2/slesTestPlayUri.cpp
778fd1ec01c39bf80171ab9c94f52df520833204 11-Jun-2010 Glenn Kasten <gkasten@google.com> am 437f9ab9: Add note about bug in IMuteSolo channel count.

Merge commit '437f9ab9914ea61112aa496a047162a0d22194cd'

* commit '437f9ab9914ea61112aa496a047162a0d22194cd':
Add note about bug in IMuteSolo channel count.
437f9ab9914ea61112aa496a047162a0d22194cd 07-Jun-2010 Glenn Kasten <gkasten@google.com> Add note about bug in IMuteSolo channel count.

Change-Id: Iccb78019bbbffaa98eaa8877258d88a77c979e48

Remove spurious NDEBUG, init in same order as .h.

Change-Id: Ia30b30ce4dbc8f074632c275583b7ef6069141dc

Implement asynchronous Object.Realize

Added ThreadPool mechanism for asynchronous operations.
Fixed off-by-one bug in BufferQueue that didn't use the last buffer.
Added engine hooks for Realize and Destroy.
Realize hook and callback are now called with mutex unlocked.
Added new Object states realizing 1 and realizing 2, mapped to unrealized.
Asynchronous realize on an engine is forced to be synchronous.
Engine initialization now done at Realize, not during CreateEngine.

Change-Id: I9c11461dbeab97aec04f8266f268cfd16086b5a7

Port to Android.

Change-Id: I0fff9f32e4d374230ab940e00fe6b8429b143ed3

Shutdown the sync thread when engine is destroyed.

Change-Id: I197267e5eaa4a49cacb34bc6e6f9c6fa92b381b5

Mutex unlocked during the initialization phase of DynamicInterfaceManagement.AddInterface.

Change-Id: I16000a2c4f1f9e93075f08ac2eaad6a8f12ba9da

Dynamic interface removal is done with mutex unlocked.

Change-Id: I5317d859dee680ca1c96e803388f2475f7795099

Normalize SLboolean input parameters.

Store non-zero boolean value as SL_BOOLEAN_TRUE rather than original value.
Line length 100.

Change-Id: I867ae8dd328b1427be98dfd148e32fcba38ce409

More input parameter checks.

Line length 100.
Fix a few build warnings.

Change-Id: I78fb1415fed649e05a370cf60e015a7fe13ffe8c

Address code review comments.

Change-Id: Ic7f2c70ded42f3d0e5e92f173cf80e084e54fc89
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/I3DCommit.c
pensles/libopensles/I3DDoppler.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/I3DLocation.c
pensles/libopensles/I3DMacroscopic.c
pensles/libopensles/I3DSource.c
pensles/libopensles/IAudioDecoderCapabilities.c
pensles/libopensles/IAudioEncoder.c
pensles/libopensles/IAudioEncoderCapabilities.c
pensles/libopensles/IAudioIODeviceCapabilities.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/ILEDArray.c
pensles/libopensles/IMIDIMessage.c
pensles/libopensles/IMIDIMuteSolo.c
pensles/libopensles/IMIDITempo.c
pensles/libopensles/IMIDITime.c
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IMetadataTraversal.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPitch.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/IPrefetchStatus.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IRatePitch.c
pensles/libopensles/IRecord.c
pensles/libopensles/ISeek.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/IVibra.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/IVisualization.c
pensles/libopensles/IVolume.c
pensles/libopensles/ThreadPool.c
pensles/libopensles/ThreadPool.h
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sync.c
aebee5083e2ee7d151e0e450fd59dc070cc720b9 07-Jun-2010 Glenn Kasten <gkasten@google.com> Add note about bug in IMuteSolo channel count.

Change-Id: Iccb78019bbbffaa98eaa8877258d88a77c979e48

Remove spurious NDEBUG, init in same order as .h.

Change-Id: Ia30b30ce4dbc8f074632c275583b7ef6069141dc

Implement asynchronous Object.Realize

Added ThreadPool mechanism for asynchronous operations.
Fixed off-by-one bug in BufferQueue that didn't use the last buffer.
Added engine hooks for Realize and Destroy.
Realize hook and callback are now called with mutex unlocked.
Added new Object states realizing 1 and realizing 2, mapped to unrealized.
Asynchronous realize on an engine is forced to be synchronous.
Engine initialization now done at Realize, not during CreateEngine.

Change-Id: I9c11461dbeab97aec04f8266f268cfd16086b5a7

Port to Android.

Change-Id: I0fff9f32e4d374230ab940e00fe6b8429b143ed3

Shutdown the sync thread when engine is destroyed.

Change-Id: I197267e5eaa4a49cacb34bc6e6f9c6fa92b381b5

Mutex unlocked during the initialization phase of DynamicInterfaceManagement.AddInterface.

Change-Id: I16000a2c4f1f9e93075f08ac2eaad6a8f12ba9da

Dynamic interface removal is done with mutex unlocked.

Change-Id: I5317d859dee680ca1c96e803388f2475f7795099

Normalize SLboolean input parameters.

Store non-zero boolean value as SL_BOOLEAN_TRUE rather than original value.
Line length 100.

Change-Id: I867ae8dd328b1427be98dfd148e32fcba38ce409

More input parameter checks.

Line length 100.
Fix a few build warnings.

Change-Id: I78fb1415fed649e05a370cf60e015a7fe13ffe8c

Address code review comments.

Change-Id: Ic7f2c70ded42f3d0e5e92f173cf80e084e54fc89
pensles/libopensles/Android.mk
pensles/libopensles/CEngine.c
pensles/libopensles/I3DCommit.c
pensles/libopensles/I3DDoppler.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/I3DLocation.c
pensles/libopensles/I3DMacroscopic.c
pensles/libopensles/I3DSource.c
pensles/libopensles/IAudioDecoderCapabilities.c
pensles/libopensles/IAudioEncoder.c
pensles/libopensles/IAudioEncoderCapabilities.c
pensles/libopensles/IAudioIODeviceCapabilities.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/ILEDArray.c
pensles/libopensles/IMIDIMessage.c
pensles/libopensles/IMIDIMuteSolo.c
pensles/libopensles/IMIDITempo.c
pensles/libopensles/IMIDITime.c
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IMetadataTraversal.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPitch.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/IPrefetchStatus.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IRatePitch.c
pensles/libopensles/IRecord.c
pensles/libopensles/ISeek.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/IVibra.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/IVisualization.c
pensles/libopensles/IVolume.c
pensles/libopensles/ThreadPool.c
pensles/libopensles/ThreadPool.h
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sync.c
8c78ddb7a5378a619eef2349a9074c4e4e1e52a9 10-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> The library for the OpenSL ES implementation is supposed to be name
libOpenSLES, not libopensles.

Change-Id: Icdfb266650abb75a8aaf5670b651bfea1361c3c1
pensles/libopensles/Android.mk
pensles/tests/mimeUri/playUri/Android.mk
pensles/tests/mimeUri/playUri2/Android.mk
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/Android.mk
989480200796912053c905f193d4ccb93ab59fd1 09-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> When updating stereo volume (for panning or balance), verify first
where to get the channel count (AudioTrack vs MediaPlayer).
At the moment MediaPlayer doesn't support querying the audio format,
so assume 1 channel.

Change-Id: I91ca71c7c0b5b2934c9e208db2dbb2c9475b100d
pensles/libopensles/sles_to_android.cpp
d531cc5dec42825ed8003fd98394039c235ac4b2 09-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> New OpenSL ES test+demo application that uses the SLPrefetchStatusItf.
Plays two URIs and pans them left and right.

Change-Id: Ic804c0d666889088db6a4075f5c40029e11273fe
pensles/tests/mimeUri/playUri2/Android.mk
pensles/tests/mimeUri/playUri2/slesTestPlayUri.cpp
af4e73edfb6d9f8ad9d58eee4c9066449dea125f 09-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Merge "OpenSL ES tests shouldn't be built in all builds." into kraken
8b4f4dcd0f216bd71a7dbf02aad2b8245883c15d 08-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> OpenSL ES tests shouldn't be built in all builds.

Change-Id: Ib014c47cb5c25d1348e544ead3e272e4d2194d5f
pensles/tests/mimeUri/playUri/Android.mk
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/Android.mk
0793e68d3c69c490de12633f757d7816fcde5392 08-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement SLPlaybackRateItf

Change-Id: I5f73882a76f8e2c120f68f1b64c374e1950d2356
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
060adae7c9af5b1470ca12f44d8f36a27987efcb 04-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Modify implementation of SLPlayItf to only start prefetching data
when the playstate is set to PAUSED, and notify prefetch status
change and buffer fill level through the SLPrefetchItf callback.
Modify test app to correctly start playing only after a prefetch
status change.

Change-Id: I51482bb5b7db419bdb694be2277282d94ff8234f
pensles/libopensles/IPrefetchStatus.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
99cd40bd94b21ff01fa9391b04d8dd1fa7a05da7 04-Jun-2010 Glenn Kasten <gkasten@google.com> Improve portability.

Change-Id: I67643ff9807fcb0459322b36d2b5406ae15903a7
pensles/include/OpenSLES.h
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/MPH_to.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
d55d250a016c1400cc00b5e1ac5baaa095702585 04-Jun-2010 Glenn Kasten <gkasten@google.com> Continue preparations for implementing async ops.

Centralize object destroy.
Record an object instance ID for use by debugger user interface.
Track all object instances associated with an engine, for use by sync thread and debugger.

Change-Id: Id8b7d0d1acd43f9524443f1bdcfb70ede7b66bfb
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
c4719e89dedc5bc2c02bb204b7f021a5014e132b 04-Jun-2010 Glenn Kasten <gkasten@google.com> Merge "Work in progress towards a Windows port." into kraken
9e5f3e7a9cf9a44b0788e3bb01655d64eac396f7 04-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Use interface exclusive locks when reading and modifying interface
properties.

Change-Id: I666f1e9af00e3ffd89077b68dcf447800d64a7a6
pensles/libopensles/IPlay.c
pensles/libopensles/IVolume.c
226ce6a635c4a333a66b8e0ea28316a6d405ee33 02-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> For audio players with URI data source:
- Modify stereo volume update to also work on a MediaPlayer.
- Add support for completion callback when play event mask
specifies SL_PLAYEVENT_HEADATEND
Before changing a property related to the SLVolumeItf or
SLPlayItf, check that the property has changed before applying
it to avoid useless calls and computations.
Cleanup in playUri test and compile without warnings.
Remove "driver" test content: test app was previously moved
to tests/pcmBufferQueue.
According to spec: initialize periodic update for SLPlayItf
and SLRecordItf to 1s.
Change-Id: I00dad162eac7c0d88b535ab65e2351353b8888d5
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IPlay.c
pensles/libopensles/IRecord.c
pensles/libopensles/IVolume.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
pensles/tests/driver/Android.mk_
pensles/tests/driver/bufferQueue.c
pensles/tests/driver/playSine.cpp
pensles/tests/driver/slesTestBufferQueue.cpp
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
f07fb63150bd6440af8d8159ca58fa4796d021ca 03-Jun-2010 Glenn Kasten <gkasten@google.com> Work in progress towards a Windows port.

Windows supports C89, not C99.
Fix an assignment warning caught by Windows compiler.
Avoid POSIX calls.

Change-Id: I7993d045156233f3c6f20caff05de1f94778041c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/sles.c
09f49a84b259d8b8c49a4d71b42ea801b2a9e8f2 02-Jun-2010 Glenn Kasten <gkasten@google.com> Improve resource recovery.

Better cleanup in AudioPlayer.Destroy.
Avoid mallocs in LEDArray and Equalizer.
Line length 100.

Change-Id: I2d22880b27ccf7e9038b398cae9287781fd82253

Continued work on threading.

Lay the groundwork for true asynchronous realize.
Call all callbacks with mutex unlocked.
C volatile is meaningless.
Start adding support for suspend/resume on interfaces.
Line length 100.

Change-Id: I631cb4f123143e4ef79c6c491d12b1e559857cab
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/ILEDArray.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/classes.c
pensles/libopensles/locks.h
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
4c0d2128c7c0a8b40803026d92083b6affc417d2 02-Jun-2010 Glenn Kasten <gkasten@google.com> Simplify initialization of AudioPlayer.

Clear whole object at initialization. Remove spurious NDEBUG.

Change-Id: Idb116722d95526f8204200d14ca1bafbedd19936
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEngine.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/ISeek.c
pensles/libopensles/IVolume.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SndFile.c
pensles/libopensles/SndFile.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
4953c969d04ebe01add892ea63199375434994d0 02-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement GetDuration and GetPosition in SLPlayItf

Change-Id: I83ae15310c3e473556703e5d373aef5a07e6eda5
pensles/libopensles/IPlay.c
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
a4c5992700e7faffd76af785011ef98dd0514be8 01-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> When calling an OpenSL ES callback after an AudioTrack callback, use
interface locks to retrieve the data for the callback, unlock, and
then use the callback function pointer.

Change-Id: Icf3ca3bad78159ee6c01dd937221477cc2939c1c
pensles/libopensles/sles_to_android.cpp
f6f90fc5202248e2ae0abde6e655d7186cebc6af 29-May-2010 Glenn Kasten <gkasten@google.com> Move platform-specific code to separate files. Use sles_allinclusive.h to really mean all inclusive. MuteSolo check channel count.

Change-Id: I96caab5be55a1f04342eb67b511309babd5a6916

Make a copy of data source and sink parameter to avoid dangling inputs. Pre-process URI scheme and MIME type using a perfect hash. Line length 100.

Change-Id: Icb1e1a7a9c6370eda1e15e61f0dff35c1d59d7fa

Fix merge problem on Android.

Change-Id: I70b724273147f3981550272990729a4a409e1f72

MIME type needs to be completely initialized.

Change-Id: I3766acfb170abc976506cf305fabd5548107f592

Remove MIME lookup and URI scheme lookup.

Change-Id: I7058dfef01c9db509ad5915d9f8099a720e6736b
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IEngine.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/IVolume.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/SDL.c
pensles/libopensles/SndFile.c
pensles/libopensles/SndFile.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_check_audioplayer.c
pensles/libopensles/sles_check_audioplayer.h
pensles/libopensles/sles_check_audioplayer_ext.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
pensles/libopensles/sles_to_android_ext.h
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
9ecb3dfd2397fa1970409f4af1eb5ca1c685ef3b 01-Jun-2010 Jean-Michel Trivi <jmtrivi@google.com> Add command line test to play a URI, to exercise the OpenSL ES
AudioPlayer with a SL_DATALOCATOR_URI as data source. Plays 10s
of the URI.

Change-Id: I24b8ae5293c4efbc372551febd91eb6dafe890eb
pensles/tests/mimeUri/playUri/Android.mk
pensles/tests/mimeUri/playUri/slesTestPlayUri.cpp
0263d22efc4ad9420b367ec61b5a1d1ec72cebb9 27-May-2010 Jean-Michel Trivi <jmtrivi@google.com> First pass at implementing support of SL_DATALOCATOR_URI in an SL ES
audio player data source.

Change-Id: Ie8dc3b88c667035cbb20d2180eed6f699b6e7c2b
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/IEngine.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
pensles/libopensles/sles_to_android_ext.h
188a1af5a1d2e2c339cded3dc5bbd99c2fd89fef 29-May-2010 Glenn Kasten <gkasten@google.com> Continue splitting up source code.

Change-Id: Iad6caa5adf111f50ad1a3aa14fc31efc7d5b285e
pensles/libopensles/Android.mk
pensles/libopensles/CAudioPlayer.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/IEngine.c
pensles/libopensles/IOutputMixExt.c
pensles/libopensles/IPlay.c
pensles/libopensles/IVolume.c
pensles/libopensles/SDL.c
pensles/libopensles/SndFile.c
pensles/libopensles/SndFile.h
pensles/libopensles/classes.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
8a47ad52488855f50b95da649744dde3a254698b 28-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Rename RealizeHook to AsyncHook.

Change-Id: I9a01c438bba7d18a214f90912620847a3d72d3f2
pensles/libopensles/IObject.c
pensles/libopensles/sles_allinclusive.h
4cf440cd9f6106db00571345af7aa02529c9a10a 28-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Add async field to the object-specific implementation of Realize
and Resume functions.

Change-Id: Ib9854a4ba06ebbc6a9e2a58274db2bfe47d46f35
pensles/libopensles/IObject.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
301237a52f7582bb1acde9685ed586ff3cd5c2c1 26-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Add a command line test for PCM buffer queues.
This example is based on the buffer queue sample code from the
OpenSL ES specification.

Change-Id: Ic0730549fe54e7d5cedf1bd7d374e2b81c1e969d
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/Android.mk
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/bufferQueue.c
pensles/tests/pcmBufferQueue/sawtoothBufferQueue/playSawtoothBufferQueue.cpp
ee35e132113602e20012829377d16f0572c61195 27-May-2010 Glenn Kasten <gkasten@google.com> Compile (almost) all .c as C++ for Android.

Change-Id: I2213f8cd615723b5d1dc34ba206bf3f900b44739
pensles/libopensles/Android.mk
pensles/libopensles/IBufferQueue.c
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/devices.h
pensles/libopensles/locks.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_check_audioplayer.c
pensles/libopensles/sles_check_audioplayer.cpp
pensles/libopensles/sles_check_audioplayer.h
pensles/libopensles/sles_check_audioplayer_ext.h
pensles/libopensles/sles_cpp.cpp
pensles/libopensles/sles_to_android.h
pensles/libopensles/sles_to_android_ext.h
20500a14ec6ba820533506298a17dea74ebd6737 27-May-2010 Glenn Kasten <gkasten@google.com> Fix broken build.

Change-Id: I99bea1ced30ea5eb10036e4b8f6450aa469b74c4
pensles/libopensles/sles_allinclusive.h
492fab3a4ef52dcf39e7e7269ea393e4ea93f3d8 26-May-2010 Glenn Kasten <gkasten@google.com> IEngine, IPlay, IVolume are compiled separately. Turn on USE_ANDROID for the whole build.

Change-Id: I28096fa86286cf9ff97ce4ae4164f7cd4a0d6198
pensles/libopensles/Android.mk
pensles/libopensles/IEngine.c
pensles/libopensles/IMetadataTraversal.c
pensles/libopensles/IPlay.c
pensles/libopensles/IVolume.c
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_check_audioplayer.cpp
pensles/libopensles/sles_check_audioplayer.h
pensles/libopensles/sles_check_audioplayer_ext.h
pensles/libopensles/sles_to_android.h
pensles/libopensles/sles_to_android_ext.h
8a307c7272108766eebabc7fa7044d7510d65f77 26-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Corrections to the implementation of SLVolumeItf for an AudioPlayer.
When unmuting an AudioPlayer, update volume in framework, not
implementation-specific code.
Android implementation limits maximum volume to 0.

Change-Id: I2f49a55e33ce58fb3543ca047ec20c04340e8d9f
pensles/libopensles/IVolume.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
050feed71109208b772e5be2e1a637b82f9d05fc 26-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Move OpenSL ES library implementation to the libopensles folder.
Add an Android makefile for libopensles.

Change-Id: I1480bf46c7165cd35bb55aef1f11fb0a04fff88e
pensles/Android.mk_
pensles/I3DCommit.c
pensles/I3DDoppler.c
pensles/I3DGrouping.c
pensles/I3DLocation.c
pensles/I3DMacroscopic.c
pensles/I3DSource.c
pensles/IAudioDecoderCapabilities.c
pensles/IAudioEncoder.c
pensles/IAudioEncoderCapabilities.c
pensles/IAudioIODeviceCapabilities.c
pensles/IBassBoost.c
pensles/IBufferQueue.c
pensles/IDeviceVolume.c
pensles/IDynamicInterfaceManagement.c
pensles/IDynamicSource.c
pensles/IEffectSend.c
pensles/IEngine.c
pensles/IEngineCapabilities.c
pensles/IEnvironmentalReverb.c
pensles/IEqualizer.c
pensles/ILEDArray.c
pensles/IMIDIMessage.c
pensles/IMIDIMuteSolo.c
pensles/IMIDITempo.c
pensles/IMIDITime.c
pensles/IMetadataExtraction.c
pensles/IMetadataTraversal.c
pensles/IMuteSolo.c
pensles/IObject.c
pensles/IOutputMix.c
pensles/IPitch.c
pensles/IPlay.c
pensles/IPlaybackRate.c
pensles/IPrefetchStatus.c
pensles/IPresetReverb.c
pensles/IRatePitch.c
pensles/IRecord.c
pensles/ISeek.c
pensles/IThreadSync.c
pensles/IVibra.c
pensles/IVirtualizer.c
pensles/IVisualization.c
pensles/IVolume.c
pensles/MPH.h
pensles/MPH_to.c
pensles/MPH_to.h
pensles/OpenSLES_IID.c
pensles/OutputMixExt.h
pensles/devices.c
pensles/devices.h
pensles/libopensles/Android.mk
pensles/libopensles/I3DCommit.c
pensles/libopensles/I3DDoppler.c
pensles/libopensles/I3DGrouping.c
pensles/libopensles/I3DLocation.c
pensles/libopensles/I3DMacroscopic.c
pensles/libopensles/I3DSource.c
pensles/libopensles/IAudioDecoderCapabilities.c
pensles/libopensles/IAudioEncoder.c
pensles/libopensles/IAudioEncoderCapabilities.c
pensles/libopensles/IAudioIODeviceCapabilities.c
pensles/libopensles/IBassBoost.c
pensles/libopensles/IBufferQueue.c
pensles/libopensles/IDeviceVolume.c
pensles/libopensles/IDynamicInterfaceManagement.c
pensles/libopensles/IDynamicSource.c
pensles/libopensles/IEffectSend.c
pensles/libopensles/IEngine.c
pensles/libopensles/IEngineCapabilities.c
pensles/libopensles/IEnvironmentalReverb.c
pensles/libopensles/IEqualizer.c
pensles/libopensles/ILEDArray.c
pensles/libopensles/IMIDIMessage.c
pensles/libopensles/IMIDIMuteSolo.c
pensles/libopensles/IMIDITempo.c
pensles/libopensles/IMIDITime.c
pensles/libopensles/IMetadataExtraction.c
pensles/libopensles/IMetadataTraversal.c
pensles/libopensles/IMuteSolo.c
pensles/libopensles/IObject.c
pensles/libopensles/IOutputMix.c
pensles/libopensles/IPitch.c
pensles/libopensles/IPlay.c
pensles/libopensles/IPlaybackRate.c
pensles/libopensles/IPrefetchStatus.c
pensles/libopensles/IPresetReverb.c
pensles/libopensles/IRatePitch.c
pensles/libopensles/IRecord.c
pensles/libopensles/ISeek.c
pensles/libopensles/IThreadSync.c
pensles/libopensles/IVibra.c
pensles/libopensles/IVirtualizer.c
pensles/libopensles/IVisualization.c
pensles/libopensles/IVolume.c
pensles/libopensles/MPH.h
pensles/libopensles/MPH_to.c
pensles/libopensles/MPH_to.h
pensles/libopensles/OpenSLES_IID.c
pensles/libopensles/OutputMixExt.h
pensles/libopensles/devices.c
pensles/libopensles/devices.h
pensles/libopensles/locks.c
pensles/libopensles/locks.h
pensles/libopensles/sles.c
pensles/libopensles/sles_allinclusive.h
pensles/libopensles/sles_check_audioplayer.cpp
pensles/libopensles/sles_check_audioplayer.h
pensles/libopensles/sles_check_audioplayer_ext.h
pensles/libopensles/sles_cpp.cpp
pensles/libopensles/sles_to_android.cpp
pensles/libopensles/sles_to_android.h
pensles/libopensles/sles_to_android_ext.h
pensles/locks.c
pensles/locks.h
pensles/sles.c
pensles/sles_allinclusive.h
pensles/sles_check_audioplayer.cpp
pensles/sles_check_audioplayer.h
pensles/sles_check_audioplayer_ext.h
pensles/sles_cpp.cpp
pensles/sles_to_android.cpp
pensles/sles_to_android.h
pensles/sles_to_android_ext.h
d99183b5bbafc783e0a14ee12ce107326051811b 24-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement the SLVolumeItf and SLPlayItf on an AudioPlayer's AudioTrack.
Iplay.c and IVolume.c are temporarily included in sles.c to circumvent
a build issue.
Change-Id: I213fc1d681ca2e7ff158aff876faf980a88292b5
pensles/Android.mk_
pensles/IBufferQueue.c
pensles/IEngine.c
pensles/IPlay.c
pensles/IVolume.c
pensles/sles.c
pensles/sles_allinclusive.h
pensles/sles_to_android.cpp
pensles/sles_to_android.h
pensles/sles_to_android_ext.h
4c048c5d0d281e4e5777d732fc92a98aee876f71 21-May-2010 Glenn Kasten <gkasten@google.com> Almost done splitting off the interfaces.

Change-Id: I374133ed856b38eb16e59ca3e917ef85d8dd2cf0

Split up MIDI interfaces.

Change-Id: Ife064b0ef6149ab8bcbc93646689cd5197c8c197

Interface initialization.

Change-Id: Iefa67680dab3ac558555462672261f613499a967

Add parameter range checks.

Change-Id: Ie2efba85e2b8ec8c2c6c73e0edf393318833d886
pensles/Android.mk_
pensles/I3DDoppler.c
pensles/I3DGrouping.c
pensles/I3DLocation.c
pensles/IBufferQueue.c
pensles/IDeviceVolume.c
pensles/IEffectSend.c
pensles/IEngine.c
pensles/IEngineCapabilities.c
pensles/IEnvironmentalReverb.c
pensles/IEqualizer.c
pensles/ILEDArray.c
pensles/IMIDIMessage.c
pensles/IMIDIMuteSolo.c
pensles/IMIDITempo.c
pensles/IMIDITime.c
pensles/IMetadataExtraction.c
pensles/IMetadataTraversal.c
pensles/IMuteSolo.c
pensles/IObject.c
pensles/IOutputMix.c
pensles/IPitch.c
pensles/IPlay.c
pensles/IPlaybackRate.c
pensles/IPrefetchStatus.c
pensles/IPresetReverb.c
pensles/IRatePitch.c
pensles/IRecord.c
pensles/ISeek.c
pensles/IVolume.c
pensles/sles.c
pensles/sles_allinclusive.h
15005fc0b676f8b4091528b8a9eb2705dd3820c2 19-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Implement the AudioTrack callback to retrieve audio data from a
BufferQueue interface.
When handing audio data from the buffer queue to the AudioTrack
callback, you cannot give more data than the given size. This
requires the handling of partial buffer consumption, before
the play index is incremented and the buffer queue callback
is called.

Change-Id: I2181afbc509182ff5c38aebbc4784f9b9916a6ae
pensles/sles.c
pensles/sles_allinclusive.h
pensles/sles_to_android.cpp
pensles/tests/driver/Android.mk_
pensles/tests/driver/bufferQueue.c
pensles/tests/driver/slesTestBufferQueue.cpp
23b3f68cab75e480ac93d656a6e4f60b979de6d2 20-May-2010 Glenn Kasten <gkasten@google.com> Continue the split into smaller source files.

Change-Id: I90dd822c4d91a21400e704b7cf3aab91293a35a7
pensles/Android.mk_
pensles/IAudioDecoderCapabilities.c
pensles/IAudioEncoder.c
pensles/IAudioEncoderCapabilities.c
pensles/IAudioIODeviceCapabilities.c
pensles/IDeviceVolume.c
pensles/IDynamicInterfaceManagement.c
pensles/IDynamicSource.c
pensles/IEffectSend.c
pensles/ILEDArray.c
pensles/IMetadataExtraction.c
pensles/IMetadataTraversal.c
pensles/IMuteSolo.c
pensles/IObject.c
pensles/IPitch.c
pensles/IPlaybackRate.c
pensles/IPrefetchStatus.c
pensles/IRatePitch.c
pensles/IRecord.c
pensles/IThreadSync.c
pensles/IVibra.c
pensles/devices.c
pensles/devices.h
pensles/sles.c
pensles/sles_allinclusive.h
82b1fcaca1b9c870c1a7978f0986fdad2fe7d06e 19-May-2010 Glenn Kasten <gkasten@google.com> Move devices to separate files.

Change-Id: I24c7c8d344a747a1b8b0854e6f872dcf8158a932

Move locks to separate file.

Change-Id: I4b5a2c4d497416d009dd6574ff793eaa93b7e9ac

Move 3D interfaces to separate files.

Change-Id: I8a4166301b3ff677784290794a1be8de4d424711

Move more interfaces to separate files.

Change-Id: I253f101663dc493bae4b469746a3ededb0882ae8
pensles/Android.mk_
pensles/I3DCommit.c
pensles/I3DDoppler.c
pensles/I3DGrouping.c
pensles/I3DLocation.c
pensles/I3DMacroscopic.c
pensles/I3DSource.c
pensles/IBassBoost.c
pensles/IEnvironmentalReverb.c
pensles/IEqualizer.c
pensles/IPresetReverb.c
pensles/IVirtualizer.c
pensles/IVisualization.c
pensles/devices.c
pensles/devices.h
pensles/locks.c
pensles/locks.h
pensles/sles.c
pensles/sles_allinclusive.h
pensles/sles_check_audioplayer.cpp
903042393ae2c797ffb6025979b8395a2cd1ff97 18-May-2010 Glenn Kasten <gkasten@google.com> Start adding frame thread (sync).

Change-Id: Ifc163177cd990f1db27886e796ef23cbe420136f

Make test C32 work again on SDL.

Change-Id: I3c4949efbceaa44dc91d988641ce1ecbad977571

Add missing initializer for _3DGroup_class.
Fix uninitialized variables in metadata extraction.
Add missing const for data source and sink.

Change-Id: Iccc5ebc721bbd52167098b5fa04c8a54a8bab6c9

Start adding typedefs I* and C*.

Change-Id: I30d263f22ae0edd4e9f438161670f778a6f0ee96

Start implementing name changes.

Change-Id: I28cae1cd8f69a721251d83efd1ba7cef124201a9
pensles/sles.c
pensles/sles_allinclusive.h
pensles/sles_check_audioplayer.cpp
pensles/sles_check_audioplayer.h
pensles/sles_check_audioplayer_ext.h
pensles/sles_to_android.cpp
pensles/sles_to_android.h
pensles/sles_to_android_ext.h
94a57e48534ddcad46a7f2f565e5db93a70559c0 18-May-2010 Jean-Michel Trivi <jmtrivi@google.com> In Engine_CreateAudioPlayer, only initialize buffer queue depth and
allocate buffer queue array if the AudioPlayer data source is a
buffer queue.

Change-Id: I140174809656cbe252a218d2eb91d099a733b5c5
pensles/sles.c
pensles/sles_check_audioplayer.cpp
pensles/sles_check_audioplayer.h
pensles/sles_check_audioplayer_ext.h
pensles/sles_to_android.cpp
pensles/sles_to_android.h
pensles/sles_to_android_ext.h
0313f3a6a78d722f74636add9b770fd30442ba6c 18-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Add android-specific AudioPlayer Realize function.

Change-Id: Ice8fcc0243a146cdfc7941d72419b4181f9a5909
pensles/sles.c
pensles/sles_to_android.cpp
pensles/sles_to_android.h
pensles/sles_to_android_ext.h
pensles/tests/driver/bufferQueue.c
f2a9b6c9fc2e5a35fd5dc19e82729eb3f894534a 17-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Separate in external functions the checks done on the data source and
sink of an audio player during its creation.

Change-Id: I1d45d40aa0a58f8abcd27764bf557ad6159d468b
pensles/Android.mk_
pensles/sles.c
pensles/sles_allinclusive.h
pensles/sles_check_audioplayer.cpp
pensles/sles_check_audioplayer.h
pensles/sles_check_audioplayer_ext.h
pensles/sles_to_android.cpp
pensles/sles_to_android.h
pensles/sles_to_android_ext.h
d1f90e7f51a10550537ccb1376e2aa6f7cbd0215 17-May-2010 Glenn Kasten <gkasten@google.com> Continue adding locks for multi-threading.

Change-Id: Ia46a71b42983d37677bafba9b55f12058a25db57

Line 212 mDistance needs to be SLmillimeter.

Change-Id: I15ff3c3371f94798b3d04773c9c638c3793c2e40
pensles/sles.c
pensles/sles_allinclusive.h
d8d51367a2ad6005786b5ac904575cc7a4d9b728 14-May-2010 Glenn Kasten <gkasten@google.com> Continued work on multi-threading.

Change-Id: I0eaf56540a93ae1dbda9f626faf38361c8ef9728
pensles/sles.c
pensles/sles_allinclusive.h
193ed0e1816bfbdf71325b6a617aa2636d8fcb21 14-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Remove all new type definitions into a separate header.
New files to host the implementation of Android media framework
resource allocation.

Change-Id: I71de03a595add1a44e3e86a944382d73fde0c1bd
pensles/sles.c
pensles/sles_allinclusive.h
pensles/sles_to_android.cpp
pensles/sles_to_android.h
pensles/sles_to_android_ext.h
c191066ec54eb7b1edee3af49551d0e644a03af2 14-May-2010 Glenn Kasten <gkasten@google.com> Continued work on multi-threading, and sketch out remaining interfaces.

Change-Id: Ib8549ae96909bd7f8a0c23149dcfce8457000107
pensles/sles.c
563e7f9455d8f9ab80c821d09e139cac597b236c 12-May-2010 Glenn Kasten <gkasten@google.com> Continuation of previous changelist.

Change-Id: I249049747109c4ae281632a08e4099ebecd12442
pensles/sles.c
56dfa5ca8ae9eef18490d0faa786fd5e2031d03f 12-May-2010 Glenn Kasten <gkasten@google.com> Continue on multi-threading support.

Clean up audio codec capabilities.
First cut at ThreadSync, LED, Vibra, EffectSend.

Change-Id: Id3130fef774a7b5bcb725fb41dfc91a58ebf60dd
pensles/sles.c
95bb37a571bcc564d172dd24d47363697147b608 10-May-2010 Glenn Kasten <gkasten@google.com> Start adding mutex locks.

Change-Id: I507211b0ff6cd11c8110be18bf4ba44af848c55d
pensles/sles.c
d35f7f752a20644a779c99b37d67e69b7b2de42b 08-May-2010 Glenn Kasten <gkasten@google.com> First audio output using Android AudioTrack.

Change-Id: Id18de8f51a73d9c801dbc79c1e8a19845b6045c2
pensles/Android.mk_
pensles/sles.c
pensles/tests/driver/Android.mk_
pensles/tests/driver/bufferQueue.c
pensles/tests/driver/playSine.cpp
d4ac180347d2be1f4fe1d9ff4354e0157d83cd7b 03-May-2010 Glenn Kasten <gkasten@google.com> Continuing framework to support more interfaces and build with C++.

Change-Id: I218a28e3cab708ea45e74d4bb011e6018dbe51ef
pensles/Android.mk_
pensles/MPH.h
pensles/MPH_to.c
pensles/MPH_to.h
pensles/OpenSLES_IID.c
pensles/OutputMixExt.h
pensles/sles.c
pensles/sles_cpp.cpp
42c87515ab1f27c223a1f5d0af0f294e10964a41 28-Apr-2010 Glenn Kasten <gkasten@google.com> Continued implementation, move all C files to top.

Change-Id: I33bc95ba7a27d53e2fa87e0e994a2c0007be6726
pensles/OpenSLES_IID.c
pensles/include/OpenSLES_IID.c
pensles/sles.c
33b73d3e28d2232fafdbda81654c2dec207fc5a9 27-Apr-2010 Glenn Kasten <gkasten@google.com> Delete obsolete 1.0 specification.

Change-Id: I018e56a8436a840ffc108aeaef9f539fef65aa4d
pensles/doc/OpenSL_ES_Specification_1.0.pdf
2db047b8ea347b2e33fa44e71a40eebdc9ada419 27-Apr-2010 Glenn Kasten <gkasten@google.com> OpenSL ES 1.0.1 documents and headers as downloaded from Khronos.

Change-Id: Ie9cf1df5018b26e5148eb1666dcd546d450b43e6
pensles/doc/OpenSL_ES_Specification_1.0.1.pdf
pensles/include/OpenSLES.h
pensles/include/OpenSLES_IID.c
pensles/include/OpenSLES_Platform.h
4e160575be0f1599abe3462508f40c28a895a2bf 27-Apr-2010 Glenn Kasten <gkasten@google.com> OpenSL ES 1.0 documents and headers as downloaded from Khronos.

Change-Id: Ifd948d08eb0493cf09c08657635c61d5e835a37e
pensles/doc/OpenSL_ES_Specification_1.0.pdf
pensles/doc/README.txt
pensles/include/OpenSLES.h
pensles/include/OpenSLES_IID.c
pensles/include/OpenSLES_Platform.h
500ae413de15c8c1687da0ca6ca8d60b7ceccbe6 27-Apr-2010 Glenn Kasten <gkasten@google.com> Fix problems found during code review on 2010/04/16, and committed on 2010/04/21.

Change-Id: I709f327e23904716b48da1e7dd36e7785725df73
pensles/sles.c
fdb7ddeae7782e8b44a54b8c8b7e6a4e31c9a9ff 27-Apr-2010 Glenn Kasten <gkasten@google.com> Initial version of 2010/04/15.

Change-Id: I2fa40b0bdd87df8fc3ae13f1b475b96ed6f9efda
pensles/sles.c
ae87eb144deaa96de5f1ba97c126d62f8698a664 27-Apr-2010 Nico Sallembien <nsallembien@google.com> new project, first commit