b1eb1a0dd38a36dd0c0626d3d57043dbd0042a92 |
23-Oct-2012 |
Eric Laurent <elaurent@google.com> |
stagefright: discard audio at start of capture The new camcorder start sound is longer than previous one and we must discard more audio when capture starts. Ideally, camcorder should use synchronous record start. Bug 7394330. Change-Id: I219b4e231aba706776dc7ccc4f1c996eaf22f61a
ediaProfiles.cpp
|
d7086030fcf731e4bcef6c033cc6418cd04e6b91 |
10-Oct-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Support querying active record sources Add support for querying whether there is currently a recording underway from the specified audio source. Bug 7314859 Change-Id: I986b231a10ffd368b08ec2f9c7f348d28eaeb892
udioSystem.cpp
AudioPolicyService.cpp
|
cc0f1cfb69ce8b8985fc2c0984847a06a13ad22d |
24-Sep-2012 |
Glenn Kasten <gkasten@google.com> |
Implement android.media.AudioManager.getProperty() Bug: 6635041 Change-Id: I3386a4a6c226bc4eceaf65556119e4fb15f73224
udioSystem.cpp
AudioFlinger.cpp
|
207e18540fefbaf530a4fdf506d266f34ddec84f |
21-Sep-2012 |
Andreas Huber <andih@google.com> |
Remove legacy code and APIs in wifi display related code. Change-Id: Ia010e7a00534f9356b3247369d0ffd65591d91aa
MediaPlayerService.cpp
|
efbb781c15abf8e085f5ab8d39710bd58ea0b6e4 |
18-Sep-2012 |
Andreas Huber <andih@google.com> |
HDCP module binderized Change-Id: I866768b1e3f3b232f1934a35b65f66befc12f3f6
MediaPlayerService.cpp
|
896adcd3ae6a1c7010e526327eff54e16179987b |
13-Sep-2012 |
Eric Laurent <elaurent@google.com> |
audioflinger: send priority request from a thread When creating a fast AudioTrack, a request is sent to SchedulingPolicyService to elevate the requesting thread priority. This generates a binder call into system_server process and to a JAVA service via JNI. If the thread from which the track was created is in the system_server process and does not have the "can call java" attribute, a crash occurs because the binder optimization reuses the same thread to process the returning binder call and no JNI env is present. The fix consists in sending the priority change request from the AudioFlinger mixer thread, not from the binder thread. This also reverts the workaround in commit 73431968 Bug 7126707. Change-Id: I3347adf71ffbb56ed8436506d4357eab693078a3
udioTrack.cpp
|
73431968e3c5cf420b5d63c54cf72d10ff7ee7bc |
13-Sep-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Workaround for track recreation bug Ignore thread can call Java parameter to work around bug where AudioTrack instance gets recreated when key clicks are enabled and WFD gets turned on, with the wrong parameters. Change-Id: Ia42c8704b46fe3ffea560b05b60939fa2e4b29e1
udioTrack.cpp
|
fd48021dfc3278b048ba99ecffe7f996751fb440 |
10-Sep-2012 |
Elliott Hughes <enh@google.com> |
am e7c992c6: am 5abc91d6: Merge "Fix libmedia and libstagefright to get expat header files from the approved location." * commit 'e7c992c675e0075cd60b0b11c06d5956e3ddd7a3': Fix libmedia and libstagefright to get expat header files from the approved location.
|
e7c992c675e0075cd60b0b11c06d5956e3ddd7a3 |
10-Sep-2012 |
Elliott Hughes <enh@google.com> |
am 5abc91d6: Merge "Fix libmedia and libstagefright to get expat header files from the approved location." * commit '5abc91d61718e334e05c6d4858bd868bd5a5769c': Fix libmedia and libstagefright to get expat header files from the approved location.
|
e8057dd8208f0a185109992339a995c518b12780 |
09-Sep-2012 |
Elliott Hughes <enh@google.com> |
Fix libmedia and libstagefright to get expat header files from the approved location. Found during a libexpat upgrade. Change-Id: I9e5abd502a884975d898486edde374fb2519164e
ndroid.mk
ediaProfiles.cpp
|
261fd2119c70fda3af64453881a6346dd48eb956 |
07-Sep-2012 |
Eric Laurent <elaurent@google.com> |
Merge "AudioRecord: Fix minimum frame count calculation." into jb-mr1-dev
|
6f744d75d3439f7984245e3c489cc7cf91cea41c |
06-Sep-2012 |
Eric Laurent <elaurent@google.com> |
AudioRecord: Fix minimum frame count calculation. AudioRecord::set() was calling getMinFrameCount() with a channel count instead of a channel mask. Change-Id: Iabace7686426430fd53deac0c71b0c36aa64171c
udioRecord.cpp
|
455d02eca342d8159637af317a5d83219d267812 |
06-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Update remote display API. Renamed disconnect() to dispose() to emphasize the fact that this method is intended to clean up the IRemoteDisplay completely, not just temporarily disconnect the current client (which might be useful someday). Other minor tweaks. Change-Id: I1209639eb0cd8af09c724206642d7e52aab48257
RemoteDisplay.cpp
|
e104596061b219e9bce6d4db49a9d15242f8d2e5 |
05-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Implement remote display service stubs. Change-Id: I582ed000026bba6d116db8304e15a3c52f8a9a01
ndroid.mk
MediaPlayerService.cpp
RemoteDisplay.cpp
RemoteDisplayClient.cpp
|
cd89e8014368af1bbdfa08406d5d2eb0bbbfcca1 |
31-Aug-2012 |
Andreas Huber <andih@google.com> |
Merge "Added an additional virtual method IStreamSource::flags()." into jb-mr1-dev
|
da7ff5321539ac07ec76d0d03bd1b9b09a1823bf |
31-Aug-2012 |
Andreas Huber <andih@google.com> |
Added an additional virtual method IStreamSource::flags(). Change-Id: I89e62d84328e12f08c8f73cbfd53cfb42569de97
StreamSource.cpp
|
c3ae93f21280859086ae371428ffd32f39e76d50 |
30-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Update audio comments Change-Id: Ie7504d0ddb252f7e4d4f99ed0b44cfc7b1049816
udioTrack.cpp
|
bcf09f8c995221e75c7cd328f25c7cc6d2b5f7c9 |
30-Aug-2012 |
Andreas Huber <andih@google.com> |
Only run the wifi display RTSP server on demand, and only on the wifi direct interface. Change-Id: I7d3c44cb79cd40e73499f2d7ccf35c69b628e6d7
MediaPlayerService.cpp
|
d8ee4e56f92eeb44ddc0997efe280b9f28ad814d |
30-Aug-2012 |
Andreas Huber <andih@google.com> |
Merge "Initial checkin of support for acting as a wifi display source" into jb-mr1-dev
|
d7bee3a9d2ad76d073d91f0ee36d5ac5f9df480c |
29-Aug-2012 |
Andreas Huber <andih@google.com> |
Initial checkin of support for acting as a wifi display source Change-Id: I08f17efa0c7d007e17408feb7d4fbef0a19f531a
MediaPlayerService.cpp
|
1b19c9d120869c3182373a9b06a1ed98898df882 |
29-Aug-2012 |
Andreas Huber <andih@google.com> |
Preliminary support for HDCP as a binder service for wifi display support. Change-Id: Ie0de1c086c629a668d1c7863992eef56fb94157c
ndroid.mk
HDCP.cpp
|
6a8ea471a9f3b001bd0ffa3381eba12975dfc59f |
21-Aug-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Revert "Swap the order of creating IAudioTrack and thread"" into jb-mr1-dev
|
44a7e42f0310831e6a846d1b6bb40bf3a399bf6d |
22-Jun-2012 |
John Grossman <johngro@google.com> |
Add the ability to dynamicaly register MediaPlayer types. Add the ability to dynamically register low level MediaPlayer factories which will be probed at setDataSource time to determine the proper MediaPlayerBase to instantiate. This change is in preparation for moving libaah_rtp out of frameworks/base and into phantasm platform directory. Change-Id: Icf8904db3ab9e3c85df6e780d5546d9988cb9076 Signed-off-by: John Grossman <johngro@google.com>
MediaPlayer.cpp
|
a997e7a7c5aa2fc7e95316218316f8b7b98786ba |
07-Aug-2012 |
Glenn Kasten <gkasten@google.com> |
Revert "Swap the order of creating IAudioTrack and thread" This reverts commit 5d464eb0b8cffb994a754ff108795e858a882414. It caused the wrong thread ID -1 to be passed to IAudioFlinger::createTrack(). Change-Id: Ic221d2bb4af572d3d2d752af19238c52f6728e3a
udioTrack.cpp
|
5d464eb0b8cffb994a754ff108795e858a882414 |
23-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Swap the order of creating IAudioTrack and thread Simplifies the error recovery in case IAudioTrack fails. Change-Id: I6aee41a2ac747a5689fb4836b04174e6107bf32f
udioTrack.cpp
|
0ec23ce0d1ff79566c402bc30df3074f6e25a22b |
10-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up start() parameters Document where int is used instead of AudioSystem::sync_event_t (probably because of a header file dependency). TrackBase::start() and RecordTrack::start() don't need default parameters. Change-Id: I82f4a4d078be900f3aa4bd926697e32f5ed68ec8
AudioRecord.cpp
|
58e5aa34f01d663654d8bafad65db1dda42161ff |
20-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
effect_descriptor_t const correctness Change-Id: Iad008f20d35a18acf500f773900164552fd0c19e
udioSystem.cpp
AudioPolicyService.cpp
|
955e78180ac6111c54f50930b0c4c12395e86cf7 |
21-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord locking Fix race conditions for EVENT_MARKER and EVENT_NEW_POS callbacks. Marker and new position update fields are protected by lock. getSampleRate() doesn't need a lock because it reads from shared memory control block. Enforce that the parameter passed with EVENT_MARKER and EVENT_NEW_POS cannot not be changed by the callback handler, and will not change during the call by another thread. Session ID should never change; log if it does. Change-Id: Ia2c63cf1a71b10bb06c37981bd76437f83fffa91
udioRecord.cpp
|
a189a6883ee55cf62da1d7bf5bf5a8ab501938a4 |
20-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Use struct assignment instead of explicit memcpy for POD structs effect_descriptor_t and effect_config_t Change-Id: Ib2fc47f85fb65ed91b0abb1f87217c49b5eb571d
udioEffect.cpp
|
28b76b334f92a15a2be3cc9e2f7d229a3275d1ac |
04-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t for channel mask Change-Id: I1c1896da48983aa9f1462a4b471f910498816f60
udioTrack.cpp
AudioFlinger.cpp
|
dcda3b325f465aa6ec2be11db1c56c8a5e867f33 |
16-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord::stop() return void"
|
2bdb2f25861f3a3ac9cf3b7af561975fc9b9eead |
14-Jul-2012 |
Edwin Wong <edwinwong@google.com> |
am 190313ec: am 65e8d62a: Merge "Fixed sample video corrupted in MediaCodec mode." into jb-dev * commit '190313ec68e81c10d200ff3c20ac152cf90760d6': Fixed sample video corrupted in MediaCodec mode.
|
d64cd233eef39430561c1e1df423336a199cc5d7 |
21-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord::stop() return void like AudioTrack::stop() Change-Id: Iab62f4665151345f1ad5874c97a21d1a331f0154
udioRecord.cpp
|
190313ec68e81c10d200ff3c20ac152cf90760d6 |
14-Jul-2012 |
Edwin Wong <edwinwong@google.com> |
am 65e8d62a: Merge "Fixed sample video corrupted in MediaCodec mode." into jb-dev * commit '65e8d62a5b243518795cdafa498df4a49baf6940': Fixed sample video corrupted in MediaCodec mode.
|
68337edf595a0c345ba4b8adcd4f1e541a1d7eb7 |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord client threading cleanup Rename ClientRecordThread to AudioRecordThread to be more similar to AudioTrack naming. Only create the thread once, and use resume() and pause() for start() and stop(). This will allow us to have a known client callback thread tid that we can pass to AudioFlinger before start(). mActive: Made mActive a bool not int. mActive is protected by mLock; volatile is meaningless. Fixed a few places where mActive was accessed without a lock: - stopped() - processAudioBuffer() These aren't used internally, so no need for _l() versions. Change-Id: I4b8a5c90f3a22d3894b344564cb1c5aef4f1fda2
udioRecord.cpp
|
fa2b8f243eb048fb2b8e5a14356190f69eb31a36 |
11-Jul-2012 |
Edwin Wong <edwinwong@google.com> |
Fixed sample video corrupted in MediaCodec mode. Change-Id: I50c5660072d40f6e297e58fd026ea04c89d6a70a related-to-bug: 6732061
Crypto.cpp
|
04cd0186305e2b59d23c9147787046c6662029cc |
25-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
getMinFrameCount error handling Convention is for "get" APIs that directly return status_t and indirectly return a value via a pointer, to return BAD_VALUE if the pointer is NULL. Also indirectly return 0 for other errors. Change-Id: I1599f20ecb26e9723f9fb384ffbf911ff3a2ce1c
udioRecord.cpp
udioTrack.cpp
|
5f0033d27b75fead593ed7ca2b86f5b6f5adf6cc |
13-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead code in libmedia"
|
1879fff068422852c1483dcf8365c2ff0e2fadfc |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Add tid parameter to IAudioFlinger::openRecord Not yet implemented Change-Id: I35523fb15ad71727ecc9f4bb870f07e4b7397dc4
udioRecord.cpp
AudioFlinger.cpp
|
d4070955e28ae62aa4be1657f9d32acde104bb86 |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead code in libmedia Change-Id: I7d8201590cda29c9fa99662a4fdba222091febfe
udioTrack.cpp
isualizer.cpp
|
bf04a5d7f287fc712e0ed91849dc85c90c1e182d |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioRecord::getInputFramesLost() This also fixes a benign race in reading mActive without a lock. Change-Id: I19e953d4f275e5c266ca1ca3fece7b6c02ad1707
udioRecord.cpp
|
254af180475346b6186b49c297f340c9c4817511 |
03-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t more places Use it in AudioSystem::getOutput(), AudioSystem::getInput(), IAudioPolicyService::getOutput(), IAudioPolicyService::getInput(), and various other places in AudioFlinger. Not done: AudioTrack and OutputDescriptor. Change-Id: I70e83455820bd8f05dafd30c63d636c6a47cd172
udioSystem.cpp
AudioPolicyService.cpp
|
f89a0deef1ecafcba164045b76d4d6c7bf8eb24d |
10-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Move declarations of local variables to first use"
|
dd8104cc5367262f0e5f13df4e79f131e8d560bb |
02-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t more consistently In IAudioFlinger::createTrack() and IAudioFlinger::openRecord(), declare input parameter to use correct type audio_channel_mask_t. In IAudioFlinger::getInputBufferSize(), input parameter is now channel mask instead of channel count. Remove unused IAudioFlinger::channelCount(audio_io_handle_t). In AudioRecord::getMinFrameCount() and AudioSystem::getInputBufferSize(), input parameter is channel mask instead of channel count. Change-Id: Ib2f1c29bea70f016b3cfce83942ba292190ac965
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
|
20010053daabfa43fcfe781bbf004473b4c08538 |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Remove acoustics from AudioSystem::getInput() Change-Id: I29fb3ee5664c1f0ee0409c1bb2be087ecca637db
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
624a7fcb377f2a40109c16de5109ae8ea1f67a69 |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t in AudioRecord Change-Id: I9e1b918b2635d961604a4a9d88eb1c7179a167a7
udioRecord.cpp
|
868a6a357018e5872e064b7a13a9b891e2078962 |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Include what you use Change-Id: I12ef9367d05dbe069c037b1b4acd6347a8cf3ece
udioRecord.cpp
|
f92eec53f886f43e4374a36195be55f2a7bbcf36 |
07-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Remove AudioRecord record_flags Change-Id: I021ddcc1bcb63132a4597d13e3d09db2a5f2c628
udioRecord.cpp
|
d3a9ff4b725de612bf0354c035ba8f8564dbc6e8 |
21-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Move declarations of local variables to first use Change-Id: I48b193a742b32b6746aa938b84dc405124a6a5c3
udioTrack.cpp
|
4ebbabda6584aeb5ad2714e7db1702d00e84dad4 |
14-Jun-2012 |
Eric Laurent <elaurent@google.com> |
am 192cbbad: Fix audio track pause. * commit '192cbbad773979a6fe3b5a0c223356de4fc3309c': Fix audio track pause.
|
192cbbad773979a6fe3b5a0c223356de4fc3309c |
13-Jun-2012 |
Eric Laurent <elaurent@google.com> |
Fix audio track pause. AudioTrack::pause() should signal the control block condition to release threads waiting for available buffers in obtainBuffer(). Otherwise the behavior relies on the timout on the condition or the fact that audioflinger will mix a new audio buffer while executing the pause. Bug 6653769. Change-Id: I5f8f73c471fe306070f30b814f32fd4b4dc1d575
udioTrack.cpp
|
48a0bfa6f731386f2794ff36d6677d56e98fc6ea |
14-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
am 49dd5cf3: Merge "Log track name on obtain/releaseBuffer warnings" into jb-dev * commit '49dd5cf3469cd755321f8ec10013ad4fcfaf723d': Log track name on obtain/releaseBuffer warnings
|
0c9d26d187017f7fb028ab52a0fbc6395142faa4 |
31-May-2012 |
Glenn Kasten <gkasten@google.com> |
Log track name on obtain/releaseBuffer warnings This should help diagnose problems by allowing us to correlate the logs with the dumpsys media.audio_flinger output. Change-Id: I8c7c592b4f87d13b0f29c66ce7a2f301a0f063c9
udioTrack.cpp
|
ea5008d8abfdf1479b4efa266cdb7c842d168aa9 |
08-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
am 28ed2f93: Reduce underruns in screen off, esp. with EQ * commit '28ed2f93324988767b5658eba7c1fa781a275183': Reduce underruns in screen off, esp. with EQ
|
28ed2f93324988767b5658eba7c1fa781a275183 |
07-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Reduce underruns in screen off, esp. with EQ Add MonoPipe APIs to specify setpoint. Use screen state to configure pipe setpoint. Fix a long-standing bug where pipe sleep time was excessive, which interacted poorly with governor and low clock frequencies. Now it deducts the elapsed time since last write(), which was significant when there was EQ and low clock frequency. Bug: 6618373 Change-Id: I6f3b0072c2244aeb033ef0795ad164491a164ff5
udioParameter.cpp
|
721e18b75824eae3f3e79c915f4800ecad5dac80 |
01-Jun-2012 |
Eric Laurent <elaurent@google.com> |
am 27d33134: Merge "Do not keep audio wake lock when apps underrun." into jb-dev * commit '27d33134130379cc91d936cdc742700311901a9d': Do not keep audio wake lock when apps underrun.
|
df839841d2db4cb8e2acb10205b3942622b3e7a2 |
31-May-2012 |
Eric Laurent <elaurent@google.com> |
Do not keep audio wake lock when apps underrun. Do not automatically restart an AudioTrack after an underrun if the callback is executed but no data is written by the app. Bug 6541286. Change-Id: I11e7ab8dc968d7ff087058fec68f44490d3a7731
udioTrack.cpp
|
3c8889e827d95b195fe5ba077a01cb5b6042e534 |
29-Mar-2012 |
Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org> |
libmedia: Fix build with gcc 4.7 gcc 4.7 doesn't like the redefinition of n in the same scope: for(size_t n=...;;) { size_t n = 2; // <-- duplicate definition } Change-Id: Idfc2e768a0eb85a3dacccd3431b4ad44775432a4 Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
ediaProfiles.cpp
|
2986460984580833161bdaabc7f17da1005a8961 |
09-May-2012 |
Eric Laurent <elaurent@google.com> |
Fix issues with synchronous record start. - Added a timeout in case the trigger event is never fired. - Extend AudioRecord obtainBuffer() timeout in case of synchronous start to avoid spurious warning. - Make sure that the event is triggered if the track is destroyed. - Reject event if the triggering track is in an incompatible state. Also fix a problem when restoring a static AudioTrack after a mediaserver crash. Bug 6449468. Change-Id: Ib36e11111fb88f73caa31dcb0622792737d57a4b
udioRecord.cpp
udioTrack.cpp
|
093000f7d11839b920e8dfaa42ed1d09f48e24b8 |
03-May-2012 |
Glenn Kasten <gkasten@google.com> |
Don't allow AudioTrack frameCount to decrease This is a workaround for bug that client can cache return value of frameCount(), and is not notified when this value changes due to automatic re-recreation of the underlying IAudioTrack. A better long-term fix would be to notify clients when these kinds of parameters change, and to fix assumptions in client code that they are constant (e.g. in SoundPool and maybe obtainBuffer). Also, once a fast track request is denied, don't request it again. Bug: 6431187 Change-Id: I55b4ff30bbd9ed3a402e39452a38de52cdea53a9
udioTrack.cpp
|
f4022f90db5acb680870db8c1150b673cdd211d9 |
02-May-2012 |
Glenn Kasten <gkasten@google.com> |
Fix race in AudioTrack destruction Bug: 6427369 Change-Id: Id3b4487406235b881f6f0b4b95c5a02a9b797e75
udioTrack.cpp
|
31dfd1db7a4d2228d9642008af6f3dd744368eb6 |
01-May-2012 |
Glenn Kasten <gkasten@google.com> |
Disable fast track log spam except for "denied by client" and "denied by server" Change-Id: I133ab747933729cc1f386813ee06ece055bdb294
udioTrack.cpp
|
1477e92867a950016579a644e74f803ed1d90cbb |
01-May-2012 |
Glenn Kasten <gkasten@google.com> |
Enable fast track for SoundPool Change-Id: Ia80b3a7738e4c5dbe2bd5b0f55f0ca49943e2f64
oundPool.cpp
|
98f153091e8f4190b35b9ce15250f308baf4805c |
25-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Re-enable fast track for ToneGenerator Change-Id: If4152169778df124c750dc45023322ee23c80587
oneGenerator.cpp
|
f60c660f048d5f5e2458cff243c20400d73757a7 |
29-Apr-2012 |
Dave Burke <daveburke@google.com> |
Added support for HE-AAC recording Fixed bug in decoder related to sample rates / channel counts Made decoder follow Fraunhofer pattern Log if bitrate not available Bug: 6275957 Change-Id: I47a8e29358fa4a88ebc73fe02d46a2bfb96c64fe
ediaProfiles.cpp
|
aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b |
19-Apr-2012 |
Dave Burke <daveburke@google.com> |
Add Fraunhofer AAC encoder with AAC-ELD support. Change-Id: I6cd499d257d72f50a5b508bed97796a591a51506
ediaProfiles.cpp
|
e0fa467e1150c65a7b1b1ed904c579b40f97c9df |
24-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Move frame count calculations for fast tracks For fast tracks: move the default and minimum frame count calculations from client to server. If accepted, the default and minimum frame count is the fast mixer (HAL) frame count. If denied, the default and minimum frame count is the same as it currently is for normal tracks. For normal tracks: there is no change yet, preserve legacy behavior for now but add a FIXME to change this later. Bug fix: the test for buffer alignment matches channelCount was wrong. Bug fix: check for 8-bit data in shared memory, which isn't supported. Optimizations: - in set(), only call AudioSystem::getOutputSamplingRate() when needed - in createTrack_l(), only call AudioSystem::getSamplingRate() and AudioSystem::getFrameCount() when needed Change-Id: I79d2fe507db1a8f7bb094c71da8a129951dbb82f
udioTrack.cpp
|
a636433cbd09c0708b85f337ef45c0cdef3bcb4d |
19-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Use C APIs instead of C++ APIs for policy The C++ APIs are going away. Note: we use tid == 0 which is not supported yet by the C APIs, do not submit this until that is added. Change-Id: I0e90789e6c81c69f2544e899c52421ea5d1342be
udioRecord.cpp
udioTrack.cpp
|
ca8b28013c0558a4a3323a1a0f58520277200086 |
23-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Fix regression in AudioTrack::pause() Bug: 6379646 Change-Id: I12b53bc4118499ddc73a53a981f3f56328140868
udioTrack.cpp
|
1d685d767a5dd1003eb62f6ad1a26b39645a474f |
23-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Fix ToneGenerator regression Bug: 6378847 Change-Id: Ib3324c7a5951ac95f99993bfae27ea02bfda08ff
oneGenerator.cpp
|
3acbd053c842e76e1a40fc8a0bf62de87eebf00f |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Configure policy of mediaserver threads Change-Id: Ifd825590ba36996064a458f64453a94b84722cb0
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioRecord.cpp
AudioTrack.cpp
|
1948eb3ea6eee336e8cdab9b0c693f93f5f19993 |
14-Apr-2012 |
Eric Laurent <elaurent@google.com> |
Add support for deep audio buffers Allow AudioSink to use deep audio buffering when the source is audio only and its duration is more than a certain threshold. This helps improve battery life but implies higher audio latency. Change-Id: Ie79915b61c370292f05aabda9779356570e03cbb
udioTrack.cpp
|
5b8987e7de9d04b09153f329c680d2316cdb44ec |
19-Apr-2012 |
Andreas Huber <andih@google.com> |
Allow propagation of error information and description from the CryptoPlugin to the higher layers. Change-Id: I9f434ad55cdf575803c208bedf47b607baff2330 related-to-bug: 6365261
Crypto.cpp
|
2d359a85ef5b72f1cb47df227b44fe4f3c5fbd60 |
19-Apr-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge "Add support for scaling mode parameter"
|
3476de62fb10e76412452ef4c6bd71936c9f7db1 |
16-Apr-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for scaling mode parameter Support VISUALIZER_PARAM__SCALING_MODE parameter. Modify process() function to use new volume scaling parameter, used to set whether captured values are maximized by current headroom in the buffer (default existing behaviora) or left as is and thus affected by volume. Modify AudioEffect to allow subclasses to override the following events: control status changed, enable status changed, command executed. In Visualizer class (a subclass of AudioEffect), reset the scaling mode and capture size on the actual effect as cached when control is regained. This will allow the effect to be properly configured whenever Visualizers with different scaling modes or capture sizes are released (e.g. from java release() method). Change-Id: I05cb9f925a296dceca91bafa9fe294ef2b2c2bd5
isualizer.cpp
|
0ca3cf94c0dfc173ad7886ae162c4b67067539f6 |
18-Apr-2012 |
Eric Laurent <elaurent@google.com> |
rename audio policy output flags Change-Id: I27c46bd1d1b2b5f96b87af7d05b951fef18a1312
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
etPlayer.cpp
oundPool.cpp
oneGenerator.cpp
|
eee482b84bb456e87fa42e8ad02fd2d803839586 |
17-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "ToneGenerator requests fast track"
|
2120fe5bd4e14b53d8bef4a220e8a32830cf8cf9 |
11-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
ToneGenerator requests fast track Also add comments to AudioTrack::set() parameter list Change-Id: I28c76e9d813778d86b15d75cf7f01a17c258b6d9
oneGenerator.cpp
|
77d837ae86c791c46ce019b58e09ac62780bf973 |
16-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Order of evaluation of parameters is not specified Change-Id: Id545e54c2ec8ed2f70ede630542ed999a9b2c5e2
AudioRecord.cpp
|
705868c0f2a6e85a39addefe4db9f2130627c219 |
12-Apr-2012 |
Andreas Huber <andih@google.com> |
Make it possible to pass empty opaque data as (NULL, 0) to ICrypto. Change-Id: Ifee1744890b645e008c9aff3783625a7bfbcff27 related-to-bug: 6275919
Crypto.cpp
|
4b75a9c8b93a90749bc5d22912ad0d96c12f4ecf |
06-Apr-2012 |
Andreas Huber <andih@google.com> |
New API to support submitting encrypted buffers to the decoder. Change-Id: I69dd60e43078c4211c6123cf6e0ce90e676bf873 related-to-bug: 6275919
Crypto.cpp
|
a4c5a550e2a3bc237179b8684e51718e05894492 |
29-Mar-2012 |
Eric Laurent <elaurent@google.com> |
audio policy: load audio hw modules. Audio HW modules are now loaded upon request from audio policy manager according to the configuration in audio_policy.conf. Removed hard coded HW module loading by AudioFlinger at init time. Added methods to IAudioFlinger and AudioPolicyInterface to control the loading of audio HW modules. Added methods to open an output or input stream on a specific hw module. Change-Id: I361b294ece1a9b56b2fb39cc64259dbb73b804f4
AudioFlinger.cpp
|
1a9ed11a472493cac7f6dfcbfac2064526a493ed |
21-Mar-2012 |
Eric Laurent <elaurent@google.com> |
audio policy: add configuration file removed outputs to stream mapping cache in audio system: the output for a given stream type must always be queried from audio policy manager as the cache is not always updated fast enough by audioflinger callback. removed AudioFlinger::PlaybackThread::setStreamValid() not used anymore if stream to output mapping is not cached. Change-Id: Ieca720c0b292181f81247259c8a44359bc74c66b
udioSystem.cpp
udioTrack.cpp
|
1bd139a2a68690e80398b70b27ca59550fea0e65 |
03-Apr-2012 |
Andreas Huber <andih@google.com> |
New Crypto services talking to the new crypto "HAL". Change-Id: I69ed31e7a8b4d69d1209d2d516f94d258f072566 related-to-bug: 6275919
Crypto.cpp
|
2d6486f9112a6f0d23f17eaaad94bac62e16caab |
02-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update AudioParameter"
|
4a4a0959bca78e03e3c3f486ba17829c28314d8c |
19-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack client fast policy Change-Id: I42ce691df3f586ac061b62237f35a263a0116f1f
udioTrack.cpp
|
edf47a8cba2d1d8985b64bf4a4fac661ba34f35a |
01-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Update AudioParameter Use definitions for AUDIO_PARAMETER_STREAM_* from <hardware/audio.h> instead of repeating these constants. String constants are const char * const. Change-Id: I1c9ebe0bc9c827d719d3181aea55251c6db28ec4
udioParameter.cpp
|
a1472d9883e35edd280201c8be3191695007dfd4 |
30-Mar-2012 |
Marco Nelissen <marcone@google.com> |
Make AudioTrack/AudioRecord handle more than 2^32 frames b/6160363 Change-Id: I471815012c6a113ec2c4dd7676e8fa288a70bc76
udioRecord.cpp
udioTrack.cpp
|
a011e35b22f95f558d81dc9c94b68b1465c4661d |
30-Mar-2012 |
Eric Laurent <elaurent@google.com> |
implemented synchronous audio capture Added the infrastructure to support the synchronization of playback and capture actions on specific events. The first requirement for this feature is to synchronize the audio capture start with the full rendering of a given audio content. The applications can further be extended to other use cases (synchronized playback start...) by adding new synchronization events and new synchronous control methods on player or recorders. Also added a method to query the audio session from a ToneGenerator. Change-Id: I51f1167290d9cafdf2fbcdf9e4785156973af44c
udioRecord.cpp
AudioRecord.cpp
|
559bf2836f5da25b75bfb229fec0d20d540ee426 |
28-Mar-2012 |
James Dong <jdong@google.com> |
AV Android make files changes o plus a few file relocation: ActivityManager.cpp/h, SoundPool.h, etc o remove some runtime dependencies to libandroid, libandroid_runtime, etc Change-Id: I047a47c5fb361dd5cf85cd98798c39f629a75d10
oundPool.cpp
oundPool.h
oundPoolThread.h
|
15147270aa1c56503902b424f946389294875665 |
26-Mar-2012 |
Andreas Huber <andih@google.com> |
Merge "Provisional support for secure decryption of media streams."
|
ed3e3e046840d5bf1ca84a8c0cc097425e89d6d6 |
26-Mar-2012 |
Andreas Huber <andih@google.com> |
Provisional support for secure decryption of media streams. Change-Id: Ib3982a9c960bfdb0cb7e1b174440b141b194cfbe
ndroid.mk
Crypto.cpp
MediaPlayerService.cpp
|
131c36ef343a604e9aee10c830ebe9c55a743379 |
26-Mar-2012 |
Eric Laurent <elaurent@google.com> |
Merge "reorganize SoundPool and JetPlayer code."
|
1f08900408927bd2b3bef59aaa15ab68ec765c06 |
26-Mar-2012 |
Colin Cross <ccross@android.com> |
Merge changes Ib4d0e0c0,Iea8f4a23 * changes: libmedia: remove skia include stagefright: remove dependency on skia
|
2e66a7896c9a9da3a15fc6cff9be28b4174d8719 |
26-Mar-2012 |
Eric Laurent <elaurent@google.com> |
reorganize SoundPool and JetPlayer code. Reorganize SoundPool and JetPlayer code to be ready for the creation of libmedia_native. Split SoundPool between libsoundpool (JNI) and libmedia(sound pool implementation). Remove dependencies on nativehelper/jni.h from JetPlayer. Change-Id: I130c6014173b714329929dd82c5dfb70b757a610
ndroid.mk
etPlayer.cpp
oundPool.cpp
oundPool.h
oundPoolThread.cpp
oundPoolThread.h
|
b83d38feeeb88a8a2a6219e1fca2480b5a14fb0d |
26-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "IAudioFlinger::createTrack and openRecord flags"
|
60d3a4160f3edb38fa6168237f3275f4d6d9e019 |
25-Mar-2012 |
Colin Cross <ccross@android.com> |
libmedia: remove skia include skia is not used in this file, remove the unnecessary include. Change-Id: Ib4d0e0c0090c6b37ff8cfb816c0d8ba82a9638a4
MediaMetadataRetriever.cpp
|
3ee26944b082def647fe5bb2b75116ffb0267059 |
24-Mar-2012 |
James Dong <jdong@google.com> |
Remove JNI in LOCAL_C_INCLUDE from non-JNI related Android.mk files. o related-to-bug: 6214141 Change-Id: Ic88d1732b3e014af47532a0809e01f6086e8464d
ndroid.mk
|
ef36d496477d1e2ae99c3cd43eee5cf7e82b0883 |
23-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Revert "Split libmedia into libmedia and libmedia_native""
|
78b5e82f421bfdf5c1c72bd0ca2fb7f3bc1a45ff |
23-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Revert "Split libmedia into libmedia and libmedia_native" This reverts commit 0a3edd38df0743dcc7091bb7ebf29e7e7dadc7cb
ndroid.mk
|
a411f779465504ff3e1a59c8ffa43d18385852b8 |
22-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove enforceFrameCount"
|
c524ffda17017d8467a237a1eddfd7e7c03c6617 |
21-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Split libmedia into libmedia and libmedia_native This is still in the old location Change-Id: Ic1be549b5b607cfd519cb4cecc581624510a4ee1
ndroid.mk
|
291f4d505aff81969e6666049d3cc3446f836af2 |
19-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Remove enforceFrameCount It was only used to decide whether to issue a warning. The warning was issued the first time track was created but not at re-creation. Now it is a verbose message every time, not a warning since it happens all the time with key clicks on A2DP. Change-Id: I9d39f53c0a7eb84b666e55b1b76ff830cf8f37ba
udioTrack.cpp
|
63c1faa8dea7feb90255d31ef2a133d8f2818844 |
21-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update comments"
|
7153494670bdac8b650cb10b8b1838651e0ca418 |
21-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Whitespace"
|
ea7939a079b3600cab955760839b021326f8cfc3 |
14-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Whitespace Fix indentation, and add blank lines in key places for clarity Change-Id: I57a0a8142394f83203161aa9b8aa9276abf3ed7c
udioTrack.cpp
|
1bb8e81b066a2311fd238fc6dae8f026e33ed99e |
20-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Add libmedia_native"
|
17a736c3e1d062d7fc916329eb32aef8935614af |
14-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Update comments Change-Id: I327663a020670d0a72ff57bd0b682e2ce0528650
udioTrack.cpp
etPlayer.cpp
|
a075db4ff9b086ac2885df77bb6da0869293df92 |
06-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
IAudioFlinger::createTrack and openRecord flags createTrack and openRecord don't need the "old" flags parameter, which was either audio_policy_output_t or audio_in_acoustics_t shifted left by 16 bits. But they do need "new" flags, which are defined by the application use case. Initially, the only application use case flag is timed output, but others are planned. For output, the audio_policy_output_t flags are passed to AudioSystem::getOutput, which returns an audio_io_handle_t, and that handle is then passed to createTrack. So createTrack doesn't need the old flags parameter. For input, the audio_in_acoustics_t flags are passed to AudioSystem::getInput, which returns an audio_io_handle_t, and that handle is then passed to openRecord. So openRecord doesn't need the old flags parameter. Change-Id: I18a9870911846cca69d420c19fe6a9face2fe8c4
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
|
b12153e36ae5e514d96c77d660b327d1a8f5000f |
16-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Add libmedia_native Change-Id: Ib8cff8abd73723b793f08da99ad59549f219e0e7
ndroid.mk
|
ab334fd351ae5a0e18903da123d63e565b536874 |
14-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
audio_channel_in/out_mask_from_count and avoid ambiguous term "channels" where it might be confusing as to whether it is a channel mask or channel count Change-Id: I744fa08ccb6001a98c97bd638d2c9d56836c4234
etPlayer.cpp
|
33b383948e8f270bff30378476f00dce289004eb |
13-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dependency on audio_* location Change-Id: I4bc66115fcb9ba22b057bd72db3f561dcb18a0d8
ndroid.mk
|
36a4d2cc7a44eb42d0d9ef5fe50b6747a7a34cab |
13-Mar-2012 |
Marco Nelissen <marcone@google.com> |
Merge "Gapless playback, step 1."
|
6b74d671a1321a6ecc4a40b6c87beedfecc1ec44 |
29-Feb-2012 |
Marco Nelissen <marcone@google.com> |
Gapless playback, step 1. Currently able to play Ogg Vorbis, PCM WAV and other lossless files seamlessly by reusing the initial AudioTrack for subsequent players. Change-Id: Ie7cf6b9076bdf4f9211574456d192c02c04fecc7
MediaPlayer.cpp
ediaplayer.cpp
|
5e7616cc0e5493241211333134555d74aec89982 |
13-Mar-2012 |
James Dong <jdong@google.com> |
Merge "Switched to use the header files in /frameworks/native and deleted the duplicate header files in /frameworks/base"
|
e53b9ead781c36e96d6b6f012ddffc93a3d80f0d |
13-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Whitespace and indentation Fix indentation to be multiple of 4. Make it easier to search: sp< not sp < to "switch (...)" instead of "switch(...)" (also "if" and "while") Remove redundant blank line at start or EOF. Remove whitespace at end of line. Remove extra blank lines where they don't add value. Use git diff -b or -w to verify. Change-Id: I966b7ba852faa5474be6907fb212f5e267c2874e
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
AudioRecord.cpp
AudioTrack.cpp
Effect.cpp
EffectClient.cpp
MediaDeathNotifier.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
MediaRecorderClient.cpp
etPlayer.cpp
ediaProfiles.cpp
ediaScanner.cpp
ediaScannerClient.cpp
etadata.cpp
oneGenerator.cpp
isualizer.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
6c6b4d0d2b98a7ceee8b697daaf611f8df3254fb |
12-Mar-2012 |
James Dong <jdong@google.com> |
Switched to use the header files in /frameworks/native and deleted the duplicate header files in /frameworks/base o related-to-bug: 6044887 Change-Id: I17e0692d9a9b5c8796ded36677c833ca8ab36795
ndroid.mk
ediaProfiles.cpp
|
18868c5db2f90309c6d11e5837822135e4a0c0fa |
07-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_policy_output_flags_t consistently This affects: - IAudioFlinger::openOutput - AudioTrack::AudioTrack - AudioTrack::set - apps that call these Change-Id: I26fb281bac6cb87593d17697bc9cb37a835af205
udioTrack.cpp
AudioFlinger.cpp
etPlayer.cpp
oneGenerator.cpp
|
f2015b625cd6bea86da7401e725332c35b90e7cf |
10-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use AudioRecord::record_flags consistently"
|
679ab0b0792846a89162ce41c953819d70030112 |
07-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Use AudioRecord::record_flags consistently Change-Id: I6f369a2b99eb515603bc7d5629a07db2b96783fe
udioRecord.cpp
|
a19ffb656616feec70613ba67ddfe15a504a4e76 |
09-Mar-2012 |
Eric Laurent <elaurent@google.com> |
Merge "audio policy: use audio_devices_t when appropriate"
|
6374252107fd6539397598195ea6defd5870fafb |
08-Mar-2012 |
Eric Laurent <elaurent@google.com> |
audio policy: use audio_devices_t when appropriate Change-Id: I1b3a5879e81c789fb53d356af3d3a1ee2dca955f
udioSystem.cpp
AudioPolicyService.cpp
|
b81cc8c6f3eec9edb255ea99b6a6f243585b1e38 |
01-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
IAudioFlingerClient::ioConfigChanged param2 const The 3rd parameter (param2) to AudioFlingerClient::ioConfigChanged is used as an input. So changed it from void * to const void *. It is then cast to const OutputDescriptor * or const audio_stream_type_t * depending on the event. Change-Id: Ieec0d284f139b74b3389b5ef69c7935a8e5650ee
udioSystem.cpp
AudioFlingerClient.cpp
|
d8d6185c978c9b27ca69e7791785e0983ed9e8b8 |
06-Mar-2012 |
Eric Laurent <elaurent@google.com> |
AudioTrack: relax check on minimum buffer size Current AudioTrack implementation enforces that the requested audio buffer size is at least corresponding the audio latency. This requirement is too strong and leads to problems with current stagefright and AudioSink implementations when playing over output streams with long latency. Ultimately, the AudioSink design should be changed to specify a minimum buffer size in time or frames units but not in buffer count units. Change-Id: I8ba603956f92ac49143a8249572665aa548f2f0f
udioTrack.cpp
|
c795b64060c3af9d7961fc1371e4ccfa8ee3e450 |
23-Feb-2012 |
John Grossman <johngro@google.com> |
Switch the way we configure for MediaPlayer retransmission. This is a cherry-pick of I6ab07d89b2eeb0650e634b8c3b7a0b36aba4e7dd with merge conflicts addressed by hand and additional changes made in response to code review feedback. Move in the direction of a more publishable API for configuring a media player for retransmission. It used to be that we used a custom invoke and a modified URL (prefixed with aahTX://). There are many issues with this technique and it was never meant to stand the test of time. This CL gets rid of all that. A new (but currently hidden) method was introduced to the java level MediaPlayer API, called setRetransmitTarget(InetSocketAddress), which allows an app writer to set the retransmit target. For now, this method needs to be called before a call to setDataSource (which is pretty unusual for the MediaPlayer API) because this mid level code uses this as a cue to instantiate an aahTX player instead of relying on the data source to select a player. When retranmit functionality becomes part of the existing android player implemenation, this set-retrans-before-set-data-source behavior can go away, along with the aahTX player itself. Change-Id: I3b46c5227bbf69acb2f3cc4f93cfccad9777be98 Signed-off-by: John Grossman <johngro@google.com>
MediaPlayer.cpp
ediaplayer.cpp
|
e8286332f3817a8b7cc4cfd8f6450a3913533660 |
29-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Shorten thread names"
|
480b46802bef1371d5caa16ad5454fce04769c57 |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Shorten thread names prctl(PR_SET_NAME) limits to 15 characters. Before we had names like "Binder Thread #" and the counter was cut off :-( Also remove redundant "thread" at end of name; it's always a thread. Change-Id: I1f99c2730ba0787ed9b59c15914356cddf698e2f
udioRecord.cpp
udioTrack.cpp
|
606ee61616efdba4696ae591ad10a4be33d8c946 |
25-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord const methods Change-Id: Ifae4fd7820b650aaca2b13c8658c292db1c46c0f
udioRecord.cpp
|
df712ea86e6350f7005a02ab0e1c60c28a343ed0 |
26-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix libgui header location Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
MediaPlayer.cpp
MediaRecorder.cpp
OMX.cpp
ediaplayer.cpp
ediarecorder.cpp
|
f063b49e95c28d63a58215ebda892a5fee4204cc |
18-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Fix build warning warning: pointer of type 'void *' used in arithmetic warning: enumeral and non-enumeral type in conditional expression Change-Id: I7b8d626a636145ef648e3b5d0e77068216dd012e
udioEffect.cpp
|
af7d8189f91c45ab919a6c9ac386b268c8d91168 |
11-Jan-2012 |
John Grossman <johngro@google.com> |
Enhance Visualizer behavior in the case of mediaserver death. Bring the Visualizer class into line with the SDK documentation by returning ERROR_DEAD_OBJECT instead of ERROR_INVALID_OPERATION when the Visualizer loses its binder connection to the mediaserver because of a mediaserver restart. Also add a new callback interface to allow clients to be asynchronously notified in the case of server death. Right now, the interface definition and the registration method are flagged as hidden pending API council review/approval. See http://b/issue?id=5717519 for details. Change-Id: Ic15856f27ed5a950a583ac11ca81f79bd7e9b1a0 Signed-off-by: John Grossman <johngro@google.com>
udioEffect.cpp
Effect.cpp
isualizer.cpp
|
4ff14bae91075eb274eb1c2975982358946e7e63 |
09-Feb-2012 |
John Grossman <johngro@google.com> |
Upintegrate Audio Flinger changes from ICS_AAH Bring in changes to audio flinger made to support timed audio tracks and HW master volume control. Change-Id: Ide52d48809bdbed13acf35fd59b24637e35064ae Signed-off-by: John Grossman <johngro@google.com>
udioTrack.cpp
AudioFlinger.cpp
AudioTrack.cpp
|
d9b9b8d09e7471b0ffa21cfa9f944ef4ad300a71 |
14-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update comments"
|
99e53b86eebb605b70dd7591b89bf61a9414ed0e |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Update comments We no longer put the filename at start of file. Change-Id: Ic435b159a23105681e3d4a6cb1ac097bc853302e
udioTrack.cpp
AudioTrack.cpp
oneGenerator.cpp
ediaplayer.cpp
|
ed15977476a3d53103866e6d527fa3fb65d4166c |
14-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead code AudioTrack::getLoop"
|
6dbc1359f778575d09d6da722b060a6d72c2e7c5 |
02-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord and AudioTrack client tid Inform AudioFlinger of the tid of the callback thread. Change-Id: I670df92dd06749b057238b48ed1094b13aab720b
udioRecord.cpp
udioTrack.cpp
AudioRecord.cpp
AudioTrack.cpp
|
9f1d4448050a4df7118c90c0c0d3e6f9c4b82f3b |
10-Feb-2012 |
James Dong <jdong@google.com> |
Merge "Move away from MediaDebug and use ADebug instead"
|
9d1f02d74fd395ec4de6861147da289423f0ab6f |
09-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Follow raw pointer and sp<> conventions Unconditional delete for raw pointers. Use "if (sp != 0)" not "if (sp.get() != 0)" or "if (sp != NULL)". Use "if (raw != NULL)" not "if (raw)". Change-Id: I531a8da7c37149261ed2f34b862ec4896a4b785b
AudioFlinger.cpp
etPlayer.cpp
oneGenerator.cpp
|
f1d5aa162c02a16b7195a43a9bcea4d592600ac4 |
07-Feb-2012 |
James Dong <jdong@google.com> |
Move away from MediaDebug and use ADebug instead Change-Id: I963a3b6f79a7292891973cbeeaf3378b38629f08
ediaProfiles.cpp
|
90bebef5669a9385c706b042d146a31dca2e5d9b |
28-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
No newline or space at end of ALOG format string Change-Id: I0bef580cbc818cb7c87aea23919d26f1446cec32
udioEffect.cpp
ediaProfiles.cpp
ediaScanner.cpp
ediaScannerClient.cpp
oneGenerator.cpp
|
38f5d71e72f3b76c5b519614d27f051d53cd2712 |
08-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead code AudioTrack::getLoop Change-Id: I868329c52f31bc20125f068500d8f892b4ec9796
udioTrack.cpp
|
72ef00de10fa95bfcb948ed88ab9b7a177ed0b48 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_io_handle_t consistently instead of int Other: - add a comment to nextUniqueId - made ThreadBase::mId const, since it is only assigned in constructor. Change-Id: I4e8b7bec4e45badcde6274d574b8a9aabd046837
udioSystem.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
|
5e92a7861196ddae14638d4b7a63fc4892b7ef59 |
30-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Effect UUID inputs passed by pointer are const Change-Id: I1f5c338bcb7368e3dd8cd5f804b2e6d9fbe087f8
udioEffect.cpp
AudioFlinger.cpp
|
4f9b0c54011eb8fd2ccfb393c2dcd51cd07800e0 |
08-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead mutex in AudioTrack/AudioRecord thread"
|
f22147e5d2982e0c461f7ce8058c2d596d518bd4 |
08-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioTrack declare more methods const"
|
a5224f319e2ba4b51ddb4287705ccf8d4b8ecc51 |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack declare more methods const Change-Id: I4999e984460893961d0d8092cff17f3cf07d7214
udioTrack.cpp
|
f587ba5b991c7cd91e4df093d0d796bd419e5d67 |
27-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Declare more IAudioFlinger methods const This is just documentation, as C++ method const-ness doesn't mean anything for a binder API. Instead, here const means "no side effects". Change-Id: Iaa9cd2fe477db10ae9a40cac4f79f0faa9b4e5e6
udioEffect.cpp
AudioFlinger.cpp
|
787bae0578fbaab6219ebf23494866b224d01438 |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_in_acoustics_t consistently"
|
ff3c83e04ae459c4252b86dd4440b4e37ee92c16 |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use ToneGenerator::tone_type consistently"
|
a0d68338a88c2ddb4502f95017b546d603ef1ec7 |
28-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use NULL not 0 for raw pointers Use if (p != NULL) instead of if (ptr) Change-Id: Iaec3413a59ccbf233c98fcd918cc7d70ac5da9fa
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
oneGenerator.cpp
|
62da7fbd60bee2dd57f503126266e9f04311d400 |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Make AudioTrack control block volume field private"
|
457d4c01ec0e922771ef57158431f48e4d267905 |
02-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "More audio_stream_type_t"
|
0e265cf36d201a7ccc0238b5c60b50f43d1dc450 |
02-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead mutex in AudioTrack/AudioRecord thread The client callback threads had mutexes called AudioTrackThread::mLock and ClientRecordThread::mLock. These mutexes were only used by start() and stop(), and were unused by the thread itself. But start() and stop() already have their own protection provided by AudioTrack::mLock and AudioRecord::mLock. So the thread mutexes can be removed. Change-Id: I098406d381645d77fba06a15511e179a327848ef
udioRecord.cpp
udioTrack.cpp
|
d459b485c61bd3e7fd81c5cd3af8ada27fc3e8d3 |
31-Jan-2012 |
Andreas Huber <andih@google.com> |
Slighly improve the API to discover if the OMX stack is running in the local process. Change-Id: Idd3c2f0d4a9542af01a3fdfd3b0bfab90e083505
OMX.cpp
|
211eeaf17e5565b68447d29799dbf158a33cf4cf |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
More audio_stream_type_t Change-Id: I1260259efe0aa3fc1ef13de69758aaa592e1f815
udioSystem.cpp
|
3d2f877c1cb4e4ae4ddde7f57f4353de9341f11b |
28-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use ToneGenerator::tone_type consistently Also remove defaults in startToneCommand(), they're not needed and the default for tone type was nonsense. Change-Id: I70fa8cee4f3dbb8c66ceb3719c8d3d2f447f05b9
oneGenerator.cpp
|
de9719b3ec71472e6bf75117152176af51d1a515 |
27-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_in_acoustics_t consistently Change-Id: I0a9dd668fb2e57b1c3ece3190588194974b99062
AudioFlinger.cpp
|
eba51fb3a361f67a6a64d5a16eba6084fe27d60e |
23-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_source_t consistently Was a mix of audio_source_t, uint8_t, and int. Related fixes: - fix comments in MediaRecorder.java - AudioPolicyService server side was not checking source parameter at all, so if the client wrapper was bypassed, invalid values could be passed into audio HAL - JNI android_media_AudioRecord_setup was checking source for positive values, but not negative values. This test is redundant, since already checked at Java and now checked by AudioPolicyService also, but might as well make it correct. Change-Id: Ie5e25d646dcd59a86d7985aa46cfcb4a1ba64a4a
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
83d86538c4c479a9225c75ab27938e8f05abb9c8 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Make AudioTrack control block volume field private This is part of the process of abstracting the control block to make it easier to maintain. Change-Id: Idb8f461e68dab3bcf268159cc0781651c6fb7094
udioTrack.cpp
|
af0b82748ed900efab48068137114740cc84ee8f |
21-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix warning for redundant typedef"
|
58f30210ea540b6ce5aa6a46330cd3499483cb97 |
12-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_format_t consistently, continued Was int or uint32_t. When AudioFlinger::format can't determine the correct format, return INVALID rather than DEFAULT. Init mFormat to INVALID rather than DEFAULT in the constructor. Subclass constructors will set mFormat to the correct value. Change-Id: I9b62640aa107d24d2d27925f5563d0d7407d1b73
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
4a98a7c95f3c7d1e8c2913086ce35533a7d5cbf3 |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix typos in string constants"
|
d967f0a099db2b71597a3127134afd4a46287a4a |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove redundant get()"
|
05bfe50e13793404a78c20c850d467d17734d496 |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Move memcpy_to_i16_from_u8 to audio_utils"
|
7fc9a6fdf146ded90b51c52f4a05d797294dcb85 |
10-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Remove redundant get() get() is almost always unnecessary, except in a LOG. Also no need to check for != 0 before calling get(). Change-Id: Ib06e7a503f86cf102f09acc1ffb2ad085025516d
udioSystem.cpp
MediaDeathNotifier.cpp
ediametadataretriever.cpp
|
112ab3e11b9992814363e0f9c629ef7fba86950b |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix warning for redundant typedef frameworks/base/media/libmedia/autodetect.cpp:22: warning: 'typedef' was ignored in this declaration Change-Id: I8c7404b9f5aa515c0fe92a5a46f24248d6fe96bf
utodetect.cpp
|
ea3cc3bca949139e401b77f2ac0cce7ac6e76f8f |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead setRingerMode(mode, mask)"
|
9096f3471434d7f0d2419ac0ee2a618045489718 |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix typos in string constants These were copy/paste errors in code that was copied from AudioTrack. Change-Id: I64a04d6026667884ddb1fefba67a71d69c691d62
isualizer.cpp
|
27a0d83f53ddbfd6449ab0e3c786742a2cd135a9 |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix incorrect includes of AudioTrack.h"
|
241fc78866b2aefd75cd1890df5a75b7008728e8 |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify range check for audio_mode_t (continued)"
|
a3f1fa308728976fc9ca1b4f37d26e633b32b9ac |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix incorrect includes of AudioTrack.h Remove unnecessary includes of AudioTrack.h. Use forward declaration of class names in preference to #include when possible. Change-Id: I12982811fa75c2c7695d8bbfa595a7aaec047dc0
ediaplayer.cpp
|
347966c827883711d1ec631f204e4a6ab74e9d99 |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify range check for audio_mode_t (continued) Missed one place in earlier CL of same name Change-Id: I0dd25364d0b8d5d731c02d352f139a0c8d4df1a8
udioSystem.cpp
|
0b07b8085d7b837b4dd5f09e0c8c39408f6bdbf7 |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead setRingerMode(mode, mask) Change-Id: Ia4cc8be8424a40b3dcb7ebd0264fdff4e5247f7f
udioSystem.cpp
AudioPolicyService.cpp
|
c813985abd8ba61e999b3505f6a332574f87a1be |
18-Jan-2012 |
Andreas Huber <andih@google.com> |
Temporarily restore AudioSystem/AudioTrack APIs with their former signatures until we get updated prebuilts from vendor. Change-Id: I8aae81d2513edca0ab268053a11c8c4206879e61
udioSystem.cpp
udioTrack.cpp
|
04eaf3e5f20d7faa956c0d672024ffb5117f4c26 |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Track volume cleanup"
|
63ad6aacc6ce6b729bf25f41376cfea731a2c1eb |
18-Jan-2012 |
Eric Laurent <elaurent@google.com> |
Merge "audio framework: manage stream volume per device"
|
b1cf75c4935001f61057989ee3cf27bbf09ecd9c |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Track volume cleanup Always read and write track volumes atomically. In most places this was already being done, but there were a couple places where the left and right channels were read independently. Changed constant MAX_GAIN_INT to be a uint32_t instead of a float. It is always used as a uint32_t in comparisons and assignments. Use MAX_GAIN_INT in more places. Now that volume is always accessed atomically, removed the union and alias for uint16_t volume[2], and kept only volumeLR. Removed volatile as it's meaningless. In AudioFlinger, clamp the track volumes read from shared memory before applying master and stream volume. Change-Id: If65e2b27e5bc3db5bf75540479843041b58433f0
udioTrack.cpp
|
511754b5839fd9b09fc56b89ae007fbc39084a33 |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Move memcpy_to_i16_from_u8 to audio_utils This will make it easier for this kind of code to be optimized for each target architecture. Change-Id: I9efd27d6c0175b00b9a784353244805cec63c0b8
udioTrack.cpp
|
83844cc2f95dc279015b47fd1e18c7cb4eabe9a1 |
19-Nov-2011 |
Eric Laurent <elaurent@google.com> |
audio framework: manage stream volume per device Improve volume management by keeping track of volume for each type of device independently. Volume for each stream (MUSIC, RINGTONE, VOICE_CALL...) is now maintained per device. The main changes are: - AudioService now keeps tracks of stream volumes per device: volume indexes are kept in a HashMap < device , index>. active device is queried from policy manager when a volume change request is received initalization, mute and unmute happen on all device simultaneously - Settings: suffixes is added to volume keys to store each device volume independently. - AudioSystem/AudioPolicyService/AudioPolicyInterface: added a device argument to setStreamVolumeIndex() and getStreamVolumeIndex() to address each device independently. - AudioPolicyManagerBase: keep track of stream volumes for each device and apply volume according to current device selection. Change-Id: I61ef1c45caadca04d16363bca4140e0f81901b3f
udioSystem.cpp
AudioPolicyService.cpp
|
3f6448e020969be59ad4d8df99c5296f237ffbd9 |
16-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Move fixed_fft to system/media/audio_utils Change-Id: If8a03911434862a872539c313f54825ffb2cc672
ndroid.mk
isualizer.cpp
ixedfft.cpp
|
0696400a6bb9abbed62b3b9c6aa105495dc600a2 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_mode_t consistently"
|
a9b21c5a7c24fe14d20372263c0bf5faf3d3e348 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Rename Visualizer::mLock This avoids confusion with parent class AudioEffect's mLock which is protected. Change-Id: I2ae0b0869fe3c606f682252973795b34477951d0
isualizer.cpp
|
613882293184e575a44bff681a3decaefe889e69 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use size_t for frame size"
|
0107954f72153db747a3727dc1157e9236dfed90 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_stream_type_t consistently"
|
05632a5fa4b88ca474294887fc92a9fcdf0e2352 |
03-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack and AudioFlinger send level cleanup Add an API to control block for getting/setting send level. This allow us to make the mSendLevel field private. Document the lack of barriers. Use 0.0f to initialize floating-point values (for doc only). Change-Id: I59f83b00adeb89eeee227e7648625d9a835be7a4
udioTrack.cpp
|
b9980659501d0428d65d8292f3c32da69d37fbd2 |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use size_t for frame size except in the control block, where we don't have room. In AudioFlinger::ThreadBase::TrackBase::getBuffer, read the frame size from control block only once. Change-Id: Id6c4bccd4ed3e07d91df6bbea43bae45524f9f4e
udioRecord.cpp
udioTrack.cpp
|
fff6d715a8db0daf08a50634f242c40268de3d49 |
13-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_stream_type_t consistently At native level it was a mixture of audio_stream_type_t, int, uint32_t, and uint8_t. Java is still int. Also fixed a couple of hard-coded -1 instead of AUDIO_STREAM_DEFAULT, and in startToneCommand a hard-coded 0 instead of AUDIO_STREAM_VOICE_CALL. Change-Id: Ia33bfd70edca8c2daec9052984b369cd8eee2a83
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
MediaPlayer.cpp
oneGenerator.cpp
ediaplayer.cpp
|
4cc55d53d542c4f4ed645738cebb65b9e7eb6c44 |
12-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_format_t consistently"
|
f78aee70d15daf4690de7e7b4983ee68b0d1381d |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_mode_t consistently It was int or uint32_t. Also make getMode() const. Change-Id: Ibe45aadbf413b9158e4dd17f2b3bcc6355288d37
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
83bc7f3cf78b28a818417f40a4f0c00593993366 |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
libmedia new can't fail on Android Change-Id: Ie79dd5abb8078b35474bf0f1b3a6ff994a3a3360
udioRecord.cpp
udioTrack.cpp
etPlayer.cpp
ediaScannerClient.cpp
oneGenerator.cpp
isualizer.cpp
|
3bba0e0a60b15895134bc2c731d21fd7ebd28784 |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix race in AudioSystem::getInputBufferSize"
|
544096247a907bc55688e5c03d5586ba5219d82a |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix bug in JetPlayer::loadFromFile"
|
e3a067f8bc98134941ee1a4da8c2a92a15aaa9cc |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify range check for audio_mode_t"
|
0132e12ded92529b1520ad62f5134fa31361c90b |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Declare IAudioTrack methods in binder opcode order"
|
f8c1a6f7ef515810356816b50bfe18af95f3ec32 |
10-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix race in AudioSystem::getInputBufferSize It was caching the recording parameters without a mutex. Change-Id: Ic4b9f621cbc080d224c2233cf3ca3454fc0f19bd
udioSystem.cpp
|
0049acfc8b1c33eb90afc925dacd08a487618e17 |
10-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix bug in JetPlayer::loadFromFile A long pathname would corrupt the heap due to incorrect use of strncpy. Also was using hard-coded constant 256 instead of PATH_MAX. Change-Id: Iba382bbb38624fbc41fec91449f9814f77d4ac0d
etPlayer.cpp
|
930f4caa1e311ef7ff538c421a324396157eb24f |
07-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify range check for audio_mode_t AudioSystem::setMode previously allowed negative modes, but these were then rejected by AudioFlinger. Now negative modes (including AUDIO_MODE_INVALID and AUDIO_MODE_CURRENT) are explicitly disallowed. Change-Id: I0bac8fea737c8eb1f5b6afbb893e48739f88d745
udioSystem.cpp
|
5c7b3bcc88e2b472f1f7b416d89222714b96a567 |
09-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Clean up AudioTrack::mActive and stopped()"
|
29357bc2c0dd7c43ad3bd0c8e3efa4e6fd9bfd47 |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
MediaDeathNotifier.cpp
etPlayer.cpp
ediaProfiles.cpp
ediaScannerClient.cpp
etadata.cpp
oneGenerator.cpp
isualizer.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
1099586bd48a8a90bb1cc4e7c279703bc7259214 |
03-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Declare IAudioTrack methods in binder opcode order This makes it easier to match up the declarations. Change-Id: I0996c20b2903b778b356dfe52b07b0ec634855dd
AudioTrack.cpp
|
5ff1dd576bb93c45b44088a51544a18fc43ebf58 |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaDeathNotifier.cpp
OMX.cpp
ediaProfiles.cpp
ediaScanner.cpp
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
|
e1c3962e268ffc12bfd1bd9ea84da1f135f36960 |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_format_t consistently Was int, uint32_t, uint16_t, and uint8_t with 2-bit bitfield. Also replace 0 by AUDIO_FORMAT_DEFAULT and replace 1 by AUDIO_FORMAT_PCM_16_BIT. Change-Id: Ia8804f53f1725669e368857d5bb2044917e17975
udioTrack.cpp
MediaPlayerService.cpp
etPlayer.cpp
ediaplayer.cpp
|
9a2aaf927e56a4b4acab23ef16b3f133a9f48a63 |
03-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up AudioTrack::mActive and stopped() mActive is protected by mLock; volatile is meaningless on SMP. Fixed a couple of places where mActive was accessed without a lock: - stopped() - processAudioBuffer() Added stopped_l() for cases where we already hold the lock. Made mActive a bool not int. Moved down a lock in setPosition that was being acquired too early. Change-Id: I73ff368e991c0db9f9472df0b3f96fd33fcc7311
udioTrack.cpp
|
a2a0a5d7d56baa831870f4bf2a0d942a477d92ef |
05-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use the standard CC_LIKELY and CC_UNLIKELY macros"
|
f6b1678f8f508b447155a81b44e214475ab634a8 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Use the standard CC_LIKELY and CC_UNLIKELY macros Several source files privately defined macros LIKELY and UNLIKELY in terms of __builtin_expect. But <cutils/compiler.h> already has CC_LIKELY and CC_UNLIKELY which are intended for this purpose. So rename the private uses to use the standard names. In addition, AudioFlinger was relying on the macro expanding to extra ( ). Change-Id: I2494e087a0c0cac0ac998335f5e9c8ad02955873
udioRecord.cpp
udioTrack.cpp
|
b8a805261bf0282e992d3608035e47d05a898710 |
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
udioSystem.cpp
ediaScanner.cpp
ediaplayer.cpp
|
42968939dfce0954d6540011199045ec4ed7de80 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix indentation and whitespace"
|
2eda60a8485cfe70a60e72156beffdc470ecb093 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Audio C++ comments"
|
c5ac4cb3a5124860ccfc7e4ff66251c55a5595ca |
12-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Fix indentation and whitespace Use git diff -w to verify. Change-Id: Ib65be0a1ecf65d6cad516110604e3855bf68a638
udioTrack.cpp
|
1d334101f1289cf4c8967af6e78ac22619175982 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove unnecessary this->"
|
b299dc4ded29a226daac07f195d1558e660d2f9f |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove redundant clear()"
|
362c4e697d8e9c034e964ac7b40227e054491547 |
14-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Audio C++ comments Change-Id: I84906ebb9dfcfa5b96b287d18364b407f02a30c1
udioTrack.cpp
|
91eb8bfbe253a6b6fe1aa23fb884a601c28991c4 |
13-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Remove redundant clear() Change-Id: Ie5e4e63cbc8fa85ef50451dddf8f149fa864b132
udioTrack.cpp
|
9054897ab9ffb307fadae81b774a1fc61cb542e7 |
13-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Remove unnecessary this-> Change-Id: I72038f5d4568f0633d3e4ab90f4b67e2dd22c332
udioTrack.cpp
|
f0c495012bad92230604a9a12a907812ec49ee8f |
30-Nov-2011 |
Glenn Kasten <gkasten@google.com> |
AudioTrack::setVolume check range Change-Id: Ie182bf0f741f1f49f68c02a1e7437a2a34d34fc5
udioTrack.cpp
|
c089d02cf2bddf1bba6eaa2b2fcce149dc44633e |
30-Nov-2011 |
Andreas Huber <andih@google.com> |
am 074133b2: am 351143fb: Merge "Updated (internal) API for IStreamSource to signal discontinuities" into ics-mr1 * commit '074133b260f8d12e484e93b9aa5a33a4983b7349': Updated (internal) API for IStreamSource to signal discontinuities
|
bfcc8d8ab7c56bc013bd221a29e1ecf3a6390813 |
29-Nov-2011 |
Andreas Huber <andih@google.com> |
Updated (internal) API for IStreamSource to signal discontinuities Change-Id: Idd4b9d8e7cec16b3e3c91c70e75144d42be30f96 related-to-bug: 5553055
StreamSource.cpp
|
6f5cc45c48c02173bfae8d54b54a92c9bae256a1 |
19-Nov-2011 |
Marco Nelissen <marcone@google.com> |
am d4b22ab4: status_t != bool * commit 'd4b22ab4889f9b1885bfc0dc45667c846a171a98': status_t != bool
|
91e2c7d2988c4947aca8a637f88a2179d905b970 |
18-Nov-2011 |
Marco Nelissen <marcone@google.com> |
status_t != bool b/5567433 Change-Id: I255ab8c3b0b5e0ea6a5cc7c05df757c667f3855e
ediaScannerClient.cpp
|
153cefdf4acab25355f590d7760ebf73ef6096a9 |
18-Nov-2011 |
Marco Nelissen <marcone@google.com> |
status_t != bool b/5567433 Change-Id: I255ab8c3b0b5e0ea6a5cc7c05df757c667f3855e
ediaScannerClient.cpp
|
528312c36a3ded860ead1a512df51663d03767ff |
17-Nov-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "JetPlayer uses C++ Thread not createThreadEtc"
|
a23856c0ad1f49a6ebcb71d3f63f329edc999a72 |
24-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
JetPlayer uses C++ Thread not createThreadEtc This permits leveraging future improvements to Thread. Change-Id: I60deed8565ed54f13d9f770c76504e411b154276
etPlayer.cpp
|
879135196fd1c97deefc538c888037c56c2879a7 |
23-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 4903178 Restore priority and cgroup on stop On AudioTrack and AudioRecord stop or failed start, restore the priority and cgroup of the caller to their previous values, rather than forcing to NORMAL. Dependent on new thread APIs. Also fixes bug where priority was set to AUDIO but cgroup not set. Change-Id: Ib83893918fb4fdf57c6b87884b51038997a631d8
udioRecord.cpp
udioTrack.cpp
|
5c052218128013d630b4d9a84393ebfbff11f3e8 |
15-Nov-2011 |
Hong Teng <hongteng@google.com> |
am 716747f7: am 481ffa50: Merge "Fix for issue 5309336 -add videoeditor maximum prefetch YUV frames in media_profiles.xml to limit the total memory usage." into ics-mr1 * commit '716747f7cb29b45e41c2870f12d39095f4ed80c8': Fix for issue 5309336 -add videoeditor maximum prefetch YUV frames in media_profiles.xml to limit the total memory usage.
|
3a9cefebd2c5d2157aefaed01c54f151dc64a5b3 |
10-Nov-2011 |
Hong Teng <hongteng@google.com> |
Fix for issue 5309336 -add videoeditor maximum prefetch YUV frames in media_profiles.xml to limit the total memory usage. Change-Id: I41ffbc192fcce4c7635e5b0a1f2835852e5ee509
ediaProfiles.cpp
|
471af5aaea2d2491a77dba379771f7c96b9ca3c3 |
08-Nov-2011 |
Andreas Huber <andih@google.com> |
resolved conflicts for merge of 26f70db9 to master Change-Id: Ib1536b1a4c9eeff80e0726b3e61cee12057cd120
|
3901e5d87573447db33fb9930871a1f5266a9b2c |
25-Oct-2011 |
Andreas Huber <andih@google.com> |
Remove surface legacy APIs and code. All surfaces are now supported through surface textures. Change-Id: I95dd823e7099c0c32a48a1121624149dcc29d9c6
MediaPlayer.cpp
ediaplayer.cpp
|
4b8bb4ee7d1d64dc1cd5478a3772f97e4a4a00d7 |
28-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
am fc9592f8: am 08479cee: Merge "Stagefright: ANW::connect in MediaPlayerService" into ics-mr0 * commit 'fc9592f8a5f2f75207e5e532655ac294eb2b334b': Stagefright: ANW::connect in MediaPlayerService
|
7dae00baa6e8957be15523c46bb948bd1dde64c3 |
27-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
Stagefright: ANW::connect in MediaPlayerService This change moves the ANativeWindow connect and disconnect logic from MediaPlayer to MediaPlayerService::Client. Bug: 5502654 Change-Id: Ifc43b98b01ad8f35d62d7ece43110724ec7fda3d
ediaplayer.cpp
|
3856b090cd04ba5dd4a59a12430ed724d5995909 |
20-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
udioEffect.cpp
udioParameter.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
Effect.cpp
EffectClient.cpp
MediaDeathNotifier.cpp
MediaMetadataRetriever.cpp
MediaRecorder.cpp
etPlayer.cpp
ediaProfiles.cpp
ediaScanner.cpp
oneGenerator.cpp
isualizer.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
b1d666f5cb555d135eb69e005e88a03330bbb54c |
20-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
Stagefright: idle OMX after ANW errors This change fixes an issue in Stagefright where the state of an OMXCodec object can get out of sync with the state of the OMX component. In particular, if one of the ANativeWindow functions failed and put the OMXCodec into the ERROR state, this would cause Stagefright to skip doing the Executing -> Idle transition. Without this transition the freeBuffersOnPort call would never be made, and the MediaBuffers would end up being leaked (which would also leak the Gralloc buffers they reference). Bug: 5333695 Change-Id: I85ea0cf92d18e7ef6d35c7d1e2a7b4e2c9745d34
OMX.cpp
|
669012d77b00a2aacb6fd12837f2870f9ec17865 |
20-Sep-2011 |
James Dong <jdong@google.com> |
Add QVGA resolution to CamcorderProfile Change-Id: Icebbafb68d8164370f98a2c36699845d10ef081b related-to-bug: 5145483
ediaProfiles.cpp
|
6de6b48237423a65ec041288c90e3f78fd3fce48 |
14-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Issue 5298399: Lost speech after a crash in gTalk."
|
cfe2ba6b01a258e39f9c215ffc7b750e0b68f708 |
14-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Issue 5298399: Lost speech after a crash in gTalk. Fixed problem in AudioTrack::restoreTrack_l() causing a permanent failure if the IAudioTrack interface to AudioFlinger could not be restored at the first attempt. Change-Id: I039d4fe2dca8d3baf71f1a6c51119f27a67b6611
udioTrack.cpp
|
fb6f03425a791dcc4188462c860becf6ca6be4ea |
08-Sep-2011 |
Guang Zhu <guangzhu@google.com> |
Make MediaScanner skip certain directories The list of directories to skip are configurable via setprop. The main motivation is that some test data folder takes long time to scan, and media scanner may compete for CPU time against perf tests therefore skewing the results. Bug: 5263115 Change-Id: I568213e2a4babf6033021c1d336ef0347c0e3315
ediaScanner.cpp
|
98afd841e8f0803a00d1970e4a28ea8999e9c498 |
09-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Merge "AudioTrack: extend callback thread sleep time"
|
2267ba18d0d2b2d4bd7f5411821ad89ac2659a88 |
07-Sep-2011 |
Eric Laurent <elaurent@google.com> |
AudioTrack: extend callback thread sleep time Do not force wake up the AudioTrack thread every 10ms if no timed events (loop, markers..) have to be processed. This will help reduce power consumption. Change-Id: Icb425b13800690008dd07c27ffac84739e3dbba3
udioTrack.cpp
|
8d65510a2e9ff7b64f2f35bfe3cd745a717c9533 |
07-Sep-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5270905 fix MediaPlayer with IStreamSource Change-Id: Ia8a6381a6c88b4a0a1378aab03f5275f0fa1125a
MediaPlayer.cpp
|
a4f73a9e0e0863a567cc06defa0d9e0269388d4e |
06-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Issue 5247986: Battery drain due to audio wakelock"
|
408b8dc3c0a364c6f6b4991d15da9e6bcc2b8008 |
06-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Issue 5247986: Battery drain due to audio wakelock The problem occurs when activating or deactivating A2DP connection while SoudPool has a channel active. This can happen quite frequently now that the UI sound effects are enabled by default. If PCM data is remaining in the AudioTrack buffer when it is restroyed and re-created on the new AudioFlinger output thread, this data is flushed. As a consequence, no underrun or request for new data callback is sent to SoundPool and the sound channel remains active for ever as the end of the sample is never detected. Change-Id: I13e0c11e4ce3f83bff7f58d347ca814b6a86712b
udioTrack.cpp
|
0662067b06658a4a56a8416c676f6cce8ccddb53 |
06-Sep-2011 |
Dave Burke <daveburke@google.com> |
Handle setDataSource failures properly. #5261671 Change-Id: Iea0aa474d1939db23da9aabdfae2081e834f30d9
ediaplayer.cpp
|
71b63e3ef687c379368be6b02e70bd2feb0b6b8d |
02-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 5252593: any app can restart the runtime Replace null device address string by empty sting. Change-Id: I285c35f3345334e6d2190493b1a8a5aca1a361a4
udioSystem.cpp
|
d681bbb1767bed09415e050ba78975df214bcd68 |
30-Aug-2011 |
Dave Burke <daveburke@google.com> |
Require INTERNET permission for network-based content. Bug #1870981 Change-Id: Ia3ad166390c4d60cea19c3783895b078a2c4c15f
MediaPlayer.cpp
MediaPlayerService.cpp
ediaplayer.cpp
|
9f6530f53ae9eda43f4e7c1cb30d2379db00aa00 |
30-Aug-2011 |
Eric Laurent <elaurent@google.com> |
226483: A2DP connected, but music out to speaker When the A2DP headset is connected, there is a possible race condition when the audio tracks are moved from the mixer thread attached to the speaker output to the thread attached to A2DP output. As the request to clear the stream type to output mapping cache in the client process is asynchronous, it is possible that the flag indicating to the client audio track to re-create the IAudioTrack on the new thread is processed before the cache is invalidated. In this case, the track will be attached to the old thread and music will continue playing over the device speaker instead of being redirected to A2DP headset. Change-Id: Ib2ce1eb5320eaff83287b93779061bf4e7a330df
udioSystem.cpp
udioTrack.cpp
|
cd07594333cbe8b2c86c6609cce01a74d6cc33f8 |
26-Aug-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 4364249 Play position is 0 after flushing AudioTrack AudioTrack::stop() is not synchronous, so a stop() followed by flush(), which is synchronous, will not always report a playhead position of 0 after being called. This CL adds a flag to mark a track as flushed, and report the correct playhead position in this state. Bug 5217011 has been created to address the real issue in the future, where flush could be made synchronous, to properly address bug 4364249. Change-Id: Icf989d41a6bcd5985bb87764c287f3edb7e26d12
udioTrack.cpp
|
8f74b712fbf5c24de8bc799b7129dc802747a6f4 |
13-Aug-2011 |
Rajneesh Chowdury <rajneeshc@google.com> |
Fix for 4142219 Don't hard code platform-specific limitations (Jni/ Java) Also fixes 5118207 add other video codec support for video editor export. Change-Id: If72427173bd8ff684af07ba00f4425c1deef29c6
ediaProfiles.cpp
|
db7c079f284f6e91266f6653ae0ec198b1c5006e |
10-Aug-2011 |
Eric Laurent <elaurent@google.com> |
Audio effects: track CPU and memory use separately Before this change, CPU and memory usage for an audio effect were registered and checked against the limit by audio policy manager upon effect instantiation. Even if an effect was not enabled it would prevent another effect to be created if the CPU load budget was exceeded, which was too restrictive. This change adds a method to register/unregister CPU load only when an effect is enabled or disabled. It also adds a mechanism to place all effects on the global output mix in suspend state (disabled) when an effect is enabled on a specific session. This will allow applications using session effects to have the priority over others using global effects. Also fixes some issues with suspend/restore mechanism: - avoid taking actions when an effect is disconnected and was not enabled. - do not remove a session from the suspended sessions list when corresponding effect chain is destroyed. Change-Id: I5225278aba1ae13d0d0997bfe26a0c9fb46b17d3
udioSystem.cpp
AudioPolicyService.cpp
|
3a34befc6fb04a4945a849e8bda8b84e4bf973fe |
02-Aug-2011 |
Marco Nelissen <marcone@google.com> |
Keep effects sessions active when the caller dies. Don't remove effects until the session they are in goes away or all AudioEffects have been explicitly released. This allows the control panel process to die without stopping the effects. Change-Id: I4496e5df080230ca1af149dec95c1309ab8ea888
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
ediaplayer.cpp
|
746d7c7f577b549b8a56862b73ae4f4f1247c593 |
02-Aug-2011 |
Gloria Wang <gwang@google.com> |
Merge "Fix ordering assumption of argument evaluation."
|
c3da3434cb57f47284ea06bb9065eaa2fe033efb |
30-Jul-2011 |
Mathias Agopian <mathias@google.com> |
connect/disconnect is now called from our EGL wrapper the original connect/disconnect hooks are deprecated and replace by api_connect/api_disconnect. the original hooks are no no-ops. api_connect/api_disconnect is now only called from the android framework. Bug: 5057915 Change-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a
ediaplayer.cpp
|
de162ff337723798381890151247b129c4fbe314 |
01-Aug-2011 |
Gloria Wang <gwang@google.com> |
Fix ordering assumption of argument evaluation. No specific order is specified in the C++ standard, but the order of the calls to Parcel read commands matters. Move any calls with multiple reads to local variables. Fix for bug 5104979. Change-Id: I709aa040e990d2659e7a3a089f7a42ae812de9ff
MediaPlayer.cpp
|
d1a243e41caffa8fd346907eed4625c9c47c1a86 |
27-Jul-2011 |
Eric Laurent <elaurent@google.com> |
AudioRecord: Fix getInput() AudioRecord::getInput() was issuing a query to get a new input stream from audio policy service instead of returning the cached input stream in AudioRecord. Change-Id: Ice324b7c60bc0898149023797bcb56a72091b9d3
udioRecord.cpp
|
6e6e8a6cc9ab99ab299929fa0246e6ced64f8ce3 |
25-Jul-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Added APIs for audio preprocessing"
|
57dae99c9fcd6becd2b5ed0c53f277ba4d7dbcfc |
24-Jul-2011 |
Eric Laurent <elaurent@google.com> |
Added APIs for audio preprocessing Added APIs to control pre processes applied on captured audio. Those APIs are still hidden until reviewed by API council. Three types of standard pre processes are supported: - Automatic Gain Control (AGC) by AutomaticGainControl class - Acoustic Echo Cancellation (AEC) by AcousticEchoCanceler class - Noise Suppression (NS) by NoiseSuppressor class A method is added to AudioEffect class to query audio pre processings applied by default by the platform on a given AudioRecord session ID. Change-Id: I0b9fceeb8c704dd06319c3b52b85c96fe871d51d
udioEffect.cpp
AudioPolicyService.cpp
|
3cecf640c4daf2df616b278bd9986018c8182908 |
30-Jun-2011 |
James Dong <jdong@google.com> |
Do not support still image capture mode for timelapse video recording related-to-bug: 4973779 Change-Id: Ica665217ab10247b2242acc4e93d4fe9f83e3f45
MediaRecorder.cpp
ediarecorder.cpp
|
b33f3407bab0970a7f9241680723a1140b177c50 |
02-Jul-2011 |
Pannag Sanketi <psanketi@google.com> |
Connect MediaRecorder Native to SurfaceMediaSource Making a connection from MediaRecorder Native layer to the SurfaceMediaSource for the purpose of encoding GL Frames. This will be called from the java side inside the Mobile Filter Framework. The mediarecorder native layer (client), when set the videosource to option VIDEO_SOURCE_FRAMES, asks the StageFrightRecorder on the mediaserver side to create a SurfaceMediaSource object and pass it back as a sp<ISurfaceTexture> object. Using that, the client side will dequeue and queue buffers. Connecting the GL Frames to the obtained sp<ISurfaceTexture> is not part of this CL. Related to bug id: 4529323 Change-Id: I651bec718dd5b935779e7d7a050b841c2d0b0fcd
MediaRecorder.cpp
ediarecorder.cpp
|
5bc965b1ff21c64e5f30130957bfe96300e15ed3 |
22-Jul-2011 |
James Dong <jdong@google.com> |
Merge "Log setVideoSurface() and setVideoSurfaceTexture() failures."
|
fada58a21be01913a8e3f25c898d26d2fc8ba630 |
22-Jul-2011 |
James Dong <jdong@google.com> |
Log setVideoSurface() and setVideoSurfaceTexture() failures. Change-Id: Iaea34e74a0cf569fc85b926949253dea6baa6142 related-to-bug: 5063370
ediaplayer.cpp
|
a1d92359056176b6f6646efc918e0587e3de2b6f |
21-Jul-2011 |
Hong Teng <hongteng@google.com> |
Merge "fix for issue 4142219 Don't hard code platform-specific limitations-jni/java part"
|
3a1f8a404b38aaa82d57c77cb83e48665e66e553 |
21-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Untangle MediaScanner error handling. Bug: 5056917"
|
0cd7889d37cc60300dceaa975dab041fd35e34fd |
21-Jul-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Audio framework: support for audio pre processing"
|
7188e55f54a43c55fd6b96454720c447f1dc454e |
21-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Untangle MediaScanner error handling. Bug: 5056917 Change-Id: I1a7a73579e3ba4e9709459329fc1901a28b0f4b1
ediaScanner.cpp
ediaScannerClient.cpp
|
cabd5f867ec69c0dfe8333cba46323cb58917402 |
07-Jul-2011 |
Hong Teng <hongteng@google.com> |
fix for issue 4142219 Don't hard code platform-specific limitations-jni/java part Change-Id: Icde261b1caf29a8cf552884c97f3c9d0b41741a3
ediaProfiles.cpp
|
bea47bc22b2939b324b47fd0d70e6c7e6fbc82d2 |
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
MediaPlayer: add a disconnect from ANativeWindow This change makes MediaPlayer::disconnect disconnect from the ANativeWindow once the player has been disconnected. Change-Id: I6744559030d1edc520cf77402d1f5ce841742340
ediaplayer.cpp
|
4a621e6d3438876eb1d9001719c688a2329ee675 |
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "MediaPlayer: add ANativeWindow (dis)connect calls"
|
7c7f10bd4fda9a084e5e7f0eb3a040dfcbf01745 |
18-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Audio framework: support for audio pre processing Audio effect framework is extended to suport effects on output and input audio path. AudioFlinger: Support for audio effects and effect chains is moved from PlaybackThread class to ThreadBase class so that RecordThread can manage effects. Effects of type pre processing are allowed on record thread only. When a pre processing is enabled, the effect interface handle is passed down to the input stream so that the audio HAL can call the process function. The record thread loop calls the effect chain process function that will only manage the effect state and commands and skip the process function. AudioRecord: The audio session is allocated before calling getInput() into audio policy serice so that the session is known before the input theead is created and pre processings can be created on the correct session. AudioPolicyService: default pre processing for a given input source are loaded from audio_effects.conf file. When an input is created, corresponding effects are created and enabled. Change-Id: Id17119e0979b4dcf189b5c7957fec30dc3478790
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
61c7ef5bde2c7ed94a078396aa65da67b47e5402 |
13-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
MediaPlayer: add ANativeWindow (dis)connect calls This change makes MediaPlayer connect to the ANativeWindow to which it is going to render video frames and disconnect when it is done. Change-Id: I88ab5c2fe62493aabdc84a283ff31634f795d415
ediaplayer.cpp
|
42e549e4ab54802d788c43e3a04a85b7a1a95e97 |
13-Jul-2011 |
Andreas Huber <andih@google.com> |
Enable signalling of a stream discontinuity involving a format-change through IStreamListener. Change-Id: Ic0409cdc4891ad26b61f2f98bdda3c7fb2e2de6a related-to-bug: 5022434
StreamSource.cpp
|
5e0067b486c3862316aa1f293cf9690c0cf54bda |
12-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Remove the simulator target from all makefiles. Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
ndroid.mk
|
6d8b694d999e9be7d5dcc336535832a80fb6f61f |
24-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: Icfc2264bfd013cab0395d7e310ada636b9fe3621
ndroid.mk
isualizer.cpp
|
4ca2c7c913f8bd4ada13aca56d36045d42d1e00f |
01-Jun-2011 |
Wu-cheng Li <wuchengli@google.com> |
Add framework support for camcorder zoom. The purpose of ICameraRecordingProxy and ICameraRecordingProxyListener is to allow applications using the camera during recording. Camera service allows only one client at a time. Since camcorder application needs to own the camera to do things like zoom, the media recorder cannot access the camera directly during recording. So ICameraRecordingProxy is a proxy of ICamera, which allows the media recorder to start/stop the recording and release recording frames. ICameraRecordingProxyListener is an interface that allows the recorder to receive video frames during recording. ICameraRecordingProxy startRecording() stopRecording() releaseRecordingFrame() ICameraRecordingProxyListener dataCallbackTimestamp() The camcorder app opens the camera and starts the preview. The app passes ICamera and ICameraRecordingProxy to the media recorder by MediaRecorder::setCamera(). The recorder uses ICamera to setup the camera in MediaRecorder::start(). After setup, the recorder disconnects from camera service. The recorder calls ICameraRecordingProxy::startRecording() and passes a ICameraRecordingProxyListener to the app. The app connects back to camera service and starts the recording. The app owns the camera and can do things like zoom. The media recorder receives the video frames from the listener and releases them by ICameraRecordingProxy::releaseRecordingFrame. The recorder calls ICameraRecordingProxy::stopRecording() to stop the recording. The call sequences are as follows: 1. The app: Camera.unlock(). 2. The app: MediaRecorder.setCamera(). 3. Start recording (1) The app: MediaRecorder.start(). (2) The recorder: ICamera.unlock() and ICamera.disconnect(). (3) The recorder: ICameraRecordingProxy.startRecording(). (4) The app: ICamera.reconnect(). (5) The app: ICamera.startRecording(). 4. During recording (1) The recorder: receive frames from ICameraRecordingProxyListener.dataCallbackTimestamp() (2) The recorder: release frames by ICameraRecordingProxy.releaseRecordingFrame(). 5. Stop recording (1) The app: MediaRecorder.stop() (2) The recorder: ICameraRecordingProxy.stopRecording(). (3) The app: ICamera.stopRecording(). bug:2644213 Change-Id: I15269397defc25cbbcae16abc071c8349c123122
MediaRecorder.cpp
ediarecorder.cpp
|
8e51d58fca9b7669f271378f9245e180f4360cbc |
23-Jun-2011 |
Gloria Wang <gwang@google.com> |
- Public part of the Metadata API. - Modify the media framework test for Metadata. Change-Id: Ib8fa4991f114e1bb88a17ca662844b9b8e1d0faf
etadata.cpp
|
68cbeba4e21aa53f52fb99b74dfa1910af31a3eb |
23-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix warnings for uninitialized local variables"
|
eddf9ef9235608e0231379a7bc614853bf5bcfa3 |
23-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Added audio_bytes_per_sample() helper function"
|
d0965dde97f2815ae0a15fe6b40946f8a741a81e |
23-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Fix warnings for uninitialized local variables Change-Id: Ic9b03b0fd215444e76c7b7bebb385f7831c557e0
udioRecord.cpp
udioTrack.cpp
|
671a636931295d9c33ffca74551a804479d01241 |
17-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Added audio_bytes_per_sample() helper function Change-Id: Ibfcd75c4c241a53d5f052c25ada091904991048a
udioRecord.cpp
udioTrack.cpp
|
b8e9897b8ad5d722e424d7a7e256153307ecbd93 |
15-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Remove unneeded #include <sys/resource.h> Suggested in code review for previous change. Change-Id: Ic3225b240367dc6c9bf56fb4498fb8a0f9f806ec
oneGenerator.cpp
|
7394a4f358fa9908a9f0a7c954b65c399f4268e6 |
14-Jun-2011 |
Dima Zavin <dima@android.com> |
audio: update for audio/audio_policy header names/locations Change-Id: I36c49352eee57559403cd1597f56a8485a360289 Signed-off-by: Dima Zavin <dima@android.com>
udioTrack.cpp
|
62dfda30f41d33682ee96038c404ab59995684e0 |
10-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
am 15e9d474: am 88748e6d: am d86302df: Quiet the log. * commit '15e9d474d1033adbedc8632309df26c3d6dfaee3': Quiet the log.
|
767ad02b2ca9e6ad02b8cf56098cffad52970642 |
10-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Quiet the log. Change-Id: Ie814b579997bb555eae014c22da0f41f1a46940f
ediaScanner.cpp
|
0512ab559d4670c2204078470d7ef5d376811c57 |
05-May-2011 |
Glenn Kasten <gkasten@google.com> |
Remove dead code related to gettid The gettid system call is always available now. Change-Id: Ib78b41781eda182dc8605daf456bbea7ff7c2dc0
udioSystem.cpp
MediaMetadataRetriever.cpp
etPlayer.cpp
|
c6854100cea4fcd0f20cb2ac8235c02d1849b3a1 |
02-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Remove unnecessary level of priority indirection Change-Id: I942d43973c20a7ace8b0d3f78b4da97e45e996c6
udioRecord.cpp
udioTrack.cpp
|
d217a8c4632b3e3065f8c2a26b9ce4dc4c97171f |
02-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Revert "Use AudioTrack::event_type not int in callback" This reverts commit 2225e4b7049fa3fb9d39a068b8268b63c952d7c1
oneGenerator.cpp
|
013b5a67d6f8e12a1b06e74863daec1bee4d99c1 |
05-May-2011 |
Glenn Kasten <gkasten@google.com> |
Use AudioTrack::event_type not int in callback Change-Id: Ifefc708d46874e04fd0d01cb6e2d43b987ee796c
oneGenerator.cpp
|
0d255b2d9061ba31f13ada3fc0f7e51916407176 |
25-May-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Use channel mask instead of channel count for track creation Record and playback objects (resp AudioRecord and AudioTrack) are created using a channel mask, but this information is lost in the mixer because only the channel count is known to AudioFlinger. A channel count can always be derived from a channel mask. The change consists in: - disambiguiting variable names for channel masks and counts - passing the mask information from the client to AudioFlinger and the mixer. - when using the DIRECT ouput, only verifying the format of the track is compatible with the output's for PCM. Change-Id: I50d87bfb7d7afcabdf5f12d4ab75ef3a54132c0e
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
|
65580f9adf6c4d98449ad0716488f9fe3869aa5a |
28-May-2011 |
Eric Laurent <elaurent@google.com> |
Removed interface to load audio effects libraries Removed unused functions allowing dynamic loading of audio effects libraries from effects factory API. Change-Id: I06cc5a51dc10aca87c7a8687bbb874babd711eca
udioEffect.cpp
AudioFlinger.cpp
|
9b1e4f1a18ac2489e24b4272a0a7ccfd0018efcc |
14-May-2011 |
James Dong <jdong@google.com> |
Merge "Add support for platform-specific recording start time offset"
|
64760240f931714858a59c1579f07264d7182ba2 |
11-May-2011 |
Dima Zavin <dima@android.com> |
update for new audio.h header location Change-Id: Ic4c62c4037800802427eb7d3c7f5eb8b25d18876 Signed-off-by: Dima Zavin <dima@android.com>
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
ediaplayer.cpp
|
0f056290cb16763453f18bbef80cde673041dbbc |
10-May-2011 |
James Dong <jdong@google.com> |
Add support for platform-specific recording start time offset o This start time offset is used in the media framework to eliminate the recording sound in the recorded file. Change-Id: I97926a74f0743b8a4f985d51334e8d1486a318ea related-to-bug: 4390777
ediaProfiles.cpp
|
1a65546a55d019335655464ad895361ba9f89252 |
02-May-2011 |
Mike Lockwood <lockwood@android.com> |
DO NOT MERGE MediaScanner: Fix bug in "no media" handling logic Don't let the "no media" status of one directory leak to the remaining files and directories in the same parent. Bug: 4364077 Change-Id: Ie756ccd06b1962b06143fc02a1a3927c3aba143a Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
462accab9dbcf8d1597de999328fa74337b3b88c |
24-Apr-2011 |
Mike Lockwood <lockwood@android.com> |
DO NOT MERGE MediaScanner: reimplement the ".nomedia" feature for hiding files from the media provider Previously we ignored any files and directories that had name started with '.' and ignored any directories that contained a ".nomedia" file. Now to support transferring any file via MTP, we now add these previously ignored files to the media database, but will not mark them as audio, video, image or playlist files. That way they will be included in the files table but will be hidden from the audio, video, images and playlist views that are used by apps like Music and Gallery. Bug: 3405327 Change-Id: Ibb37bb2856a0684ce9f685ed565ad35347622834 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
c777a8526a6517e5fbfa713651da280fd1bdd502 |
02-May-2011 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: Fix bug in "no media" handling logic Don't let the "no media" status of one directory leak to the remaining files and directories in the same parent. Bug: 4364077 Change-Id: I30943222dc292818cff00ee8169be7a695eed174 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
4f9e47f2c03ce36261c4717cd7e131d7940bb068 |
26-Apr-2011 |
Gloria Wang <gwang@google.com> |
Add setParameter/getParameter to MediaPlayer API. for bug 1982947 Change-Id: If3f40e4f18cbba155af29944af38bdc627f8cd53
MediaPlayer.cpp
ediaplayer.cpp
|
fce7a473248381cc83a01855f92581077d3c9ee2 |
20-Apr-2011 |
Dima Zavin <dima@android.com> |
audio/media: convert to using the audio HAL and new audio defs Change-Id: Ibc637918637329e4f2b62f4ac7781102fbc269f5 Signed-off-by: Dima Zavin <dima@android.com>
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
etPlayer.cpp
oneGenerator.cpp
isualizer.cpp
ediaplayer.cpp
|
db5cb14318bb24cd6ea14ff7ceea0d5e1f83d903 |
20-Apr-2011 |
Dima Zavin <dima@android.com> |
libmedia: move AudioParameter out of AudioSystem Change-Id: I9eb7e002d141936258050d4fa4f0ccd8202bfc54 Signed-off-by: Dima Zavin <dima@android.com>
ndroid.mk
udioParameter.cpp
udioSystem.cpp
|
f87d18a374f0275b1adb89a495931390f7407fd2 |
25-Apr-2011 |
James Dong <jdong@google.com> |
Merge "Return status code from invoke()"
|
c5182e31b23dc381d21ef43b7f7d682ffc54bd79 |
24-Apr-2011 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: reimplement the ".nomedia" feature for hiding files from the media provider Previously we ignored any files and directories that had name started with '.' and ignored any directories that contained a ".nomedia" file. Now to support transferring any file via MTP, we now add these previously ignored files to the media database, but will not mark them as audio, video, image or playlist files. That way they will be included in the files table but will be hidden from the audio, video, images and playlist views that are used by apps like Music and Gallery. Bug: 3405327 Change-Id: I2d7285bd32e06c1a5c4ef6a8a15f8f8b2c33b39b Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
b483c4724846c0b8d4e82afcbb7c17f671bae81c |
12-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. - Add OnTimedTextListener in the MediaPlayer For feature request 800939. Change-Id: I65072c27acb4c0037109a72be38c73e9f667420f
MediaPlayerClient.cpp
ediaplayer.cpp
|
cc8ace7989f663fe6c6c1ed0febca0d9d1f19c7a |
07-Apr-2011 |
Eric Laurent <elaurent@google.com> |
Do not disable effect in AudioEffect destructor. Current implementation of AudioEffect class destructor disables the effect before disconnecting from IAudioEffect interface. This is problematic when more than one client has a handle on the same effect engine as destroying one handle will disable the effect which is not the intended behavior. Change-Id: I10eacf981506469a7ef4eb9a1650813f0848de5d
udioEffect.cpp
|
040e4a14ef9cafd5d08d9a180e6237fb79687995 |
07-Apr-2011 |
James Dong <jdong@google.com> |
Return status code from invoke() Change-Id: Ie64b418d2a1f44e07942399c285b460c68f8e14f related-to-bug: 4199781
MediaPlayer.cpp
|
38ccae2c0324daa305f3fe77d25fdf5edec0b0e1 |
29-Mar-2011 |
Eric Laurent <elaurent@google.com> |
New fix for issue 4111672: control block flags The first fix (commit 913af0b4) is problematic because it makes threads in mediaserver process block on the cblk mutex. This is not permitted as it can cause audio to skip or worse have a malicious application prevent all audio playback by keeping the mutex locked. The fix consists in using atomic operations when modifying the control block flags. Also fixed audio_track_cblk_t::framesReady() so that it doesn't block when called from AudioFlinger (only applies when a loop is active). Change-Id: Ibf0abb562ced3e9f64118afdd5036854bb959428
udioRecord.cpp
udioTrack.cpp
|
5f7fcf29a7475a20cf38bf72da67746135d504c3 |
26-Mar-2011 |
Mathias Agopian <mathias@google.com> |
merge libsurfaceflinger_client into libgui this is the first step in unifying surfacetexture and surface. for this reason the header files were not moved, as most of them will eventually go away. NOTE: currently we keep libsurfaceflinger_client.so as an empty library to workaround prebuilt binaries wrongly linking against it. Change-Id: I130f0de2428e8579033dc41394d093f4e1431a00
ndroid.mk
|
0511969950188634f4212fcf63680c43207baedd |
21-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 3483718: audio streaming and A2DP."
|
9b7d950f1f3b0c526712b713dbceb0e22762c015 |
21-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3483718: audio streaming and A2DP. The problem is that when switching from A2DP to device speakers or headset, The AudioTrack binder interface to AudioFlinger must be destroyed and restored to accomodate new buffer size requirements. Current AudioTrack implementation did not restore properly the PCM buffer write index which caused a mismatch between the written frame count in the mediaplayer renderer and the AudioTrack. The renderer could then believe the AudioTrack buffer was full and stop writing data preventing the AudioTrack to reach a bufffer full condition and resume playback. The rendered was also modified to refresh the AudioTrack frame count (buffer size) inside the write loop in NuPlayer::Renderer::onDrainAudioQueue() as this count can change from one write to the next. Also modified AudioTrack::obtainBuffer() to check for track invalidated status before querying for available space in the buffer. This avoids writing to the old track's buffer until full before detecting the invalidated condition and create a new track. Change-Id: I16a857e464e466880847f52f640820aa271539ad
udioTrack.cpp
|
af8791e112c8072452bd14ef3c43a47511d19542 |
21-Mar-2011 |
Andreas Huber <andih@google.com> |
Support passing headers to MediaMetadataRetriever's setDataSource API Change-Id: Ib1a5c08fc5034cac05034db27007a35c9b660b26 related-to-bug: 3506316
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
1caf58cd652edab4e05bfef8ccaa1497c450f5e9 |
18-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 4111672: AudioTrack control block flags"
|
33797ea64d067dfeaacbfd7ebe7f3383b73961b5 |
17-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 4111672: AudioTrack control block flags Make sure that all read/modify/write operations on the AudioTrack and AudioRecord control block flags field are protected by the control block's mutex. Also fix potential infinite loop in AudioTrack::write() if the written size is not a multiple of frame size. Change-Id: Ib3d557eb45dcc3abeb32c9aa56058e2873afee27
udioRecord.cpp
udioTrack.cpp
|
c901f74404435cc1cf2717016e2b0092b6dcea24 |
17-Mar-2011 |
James Dong <jdong@google.com> |
am 782ffe91: am 9c0c5b56: am 2f1f2248: Fix missing AOSP copyright headers for a bunch of media framework files * commit '782ffe91da665c6b1fb9e297faa6e0dc6035f40c': Fix missing AOSP copyright headers for a bunch of media framework files
|
27c174483a8ae9688d5d4897c19074f62c7f1701 |
17-Mar-2011 |
James Dong <jdong@google.com> |
Fix missing AOSP copyright headers for a bunch of media framework files bug - 4119349 Change-Id: If5924e16a5f596d5d73d9beb66eaf5ac9a6f0e50
OMX.cpp
|
c21359d332ea2ac5258f86e1cf46db9e0faf3e4b |
16-Mar-2011 |
James Dong <jdong@google.com> |
resolved conflicts for merge of 1cbf8493 to master Change-Id: Ifea2ba8b02ecf291fbd1612973647a95a70511c4
|
8031ec79eb657a0ae84325410578ea87f50eeb54 |
16-Mar-2011 |
James Dong <jdong@google.com> |
Add the default camera id to mCameraIds for emulator and those devices without media_profiles.xml configuration file. bug - 4109530 Change-Id: Ib83be7a7f767a4b20ac338734ada1581e7a4c5bf
ediaProfiles.cpp
|
8635b7b095fbf7ffc63d3ce791891a9116ace1f6 |
15-Mar-2011 |
James Dong <jdong@google.com> |
Add memory leak tracking/debugging code to drm server bug - 4099038 Change-Id: I6c048eaf3d7f34bc144b8daaa5fdef1ed474af66
ndroid.mk
emoryLeakTrackUtil.cpp
|
2aac40fe9d42a15dab0af6a0efea7a2468cd9e4f |
09-Mar-2011 |
Eric Laurent <elaurent@google.com> |
am 2dc78477: am cc34967f: Merge "Fix issue 3439872: video chat and bluetooth SCO" into honeycomb-mr1 * commit '2dc78477364bd4accb9a603baaafca9a5523dcec': Fix issue 3439872: video chat and bluetooth SCO
|
1703cdfee717b1b312bf8979816a9e2f16a82e5d |
07-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3439872: video chat and bluetooth SCO This change fixes the stability problems experienced when using a bluetooth headset supporting both A2DP and SCO. Problems occur when starting the video chat at which time the A2DP output is being stopped to start SCO. At that time, active AudioTracks are invalidated by AudioFlinger so that a new AudioTrack binder interface can be recreated by the client process on the new mixer thread with correct parameters. The problem was that the process to restore the binder interface was not protected against concurrent requests which caused 2 binder interfaces to be created sometimes. This could lead to permanent client deadlock if one of the client threads was waiting for a condition of the first created binder interface while the second one was created (as the AudioFlinger would only signal conditions on the last one created). This concurrent request situation is more likely to happen when a client uses the JAVA AudioTrack as the JNI implementation uses simultaneously the native AudioTrack callback and write push mechanisms. By doing so, the code that checks if the binder interface should be restored (in obtainBuffer()) is much more likely to be called concurrently from two different threads. The fix consists in protecting the critical binder interface restore phase with a flag in the AudioTrack control block. The first thread acting upon the binder interface restore request will raise the flag and the second thread will just wait for a condition to be signaled when the restore process is complete. Also protected all accesses to the AudioTrack control block by a mutex to prevent access while the track is being destroyed and restored. If a mutex cannot be held (e.g because we call a callback function), acquire a strong reference on the IAudioTrack to prevent its destruction while the cblk is being accessed. Modified AudioTrack JNI to use GetByteArrayElements() instead of GetPrimitiveArrayCritical() when writing audio buffers. Entering a critical section would cause the JNI to abort if a mediaserver crash occurs during a write due to the AudioSystem callback being called during the critical section when media server process restarts. Anyway with current JNI implementation, either versions do not copy data most of the times and the criticial version does not guaranty no data copy. The same modifications have been made to AudioRecord. Change-Id: Idc5aa711a04c3eee180cdd03f44fe17f3c4dcb52
udioRecord.cpp
udioTrack.cpp
|
d3ee677783864d933cd8bc82c14666bd135d43bd |
08-Mar-2011 |
James Dong <jdong@google.com> |
Add the default back-facing camera to the MediaProfile camera vector As a result, missing media_profiles.xml will be still allowed. Change-Id: Ie6c1bbfdfd4e971f1d5d0e031a913e757f3863a7
ediaProfiles.cpp
|
32f3cefa373cd55e63deda36ca9d07c7fe22eaaf |
03-Mar-2011 |
Andreas Huber <andih@google.com> |
Allow optional specification of a PTS timestamp when signalling a discontinuity. If present, rendering will be suppressed until reaching the timestamp. Change-Id: Ic64bdf4225063c5a4d042ea9809960b843a46d19 related-to-bug: 3489454
StreamSource.cpp
|
2a7e0a1eb29306982fd77bdc64d324464a48a2b9 |
01-Mar-2011 |
James Dong <jdong@google.com> |
Get rid of redundant media profiles bug - 3330679 Change-Id: Idc55aea32746c0c57552c5e15a289681421aa859
ediaProfiles.cpp
|
e2ce6458659c6e1bad420357b61dc10cd8bbe2ab |
24-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Add an OMX IL API for querying buffer usage flags. This change defines an OpenMAX IL API for querying from the IL component the gralloc buffer usage flags that should be used to allocate the buffers. It also adds the Stagefright plumbing for using the new OMX IL API. Change-Id: I046b5e7be70ce61e2a921dcdc6e3aa9324d19ea6 Related-Bug: 3479027
OMX.cpp
|
1173118eace0e9e347cb007f0da817cee87579ed |
09-Feb-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 3438258 Add SurfaceTexture as MediaPlayer sink This change enables the use of a SurfaceTexture in place of a Surface as the video sink for an android.media.MediaPlayer. The new API MediaPlayer.setTexture is currently hidden. This includes: - New Java and C++ interfaces - C++ plumbing and implementation (JNI, Binder) - Stagefright AwesomePlayer and NuPlayer use ANativeWindow (either Surface or SurfaceTextureClient) Change-Id: I2b568bee143d9eaf3dfc6cc4533c1bebbd5afc51
ndroid.mk
MediaPlayer.cpp
ediaplayer.cpp
|
51b9a8b53eaa1a0188be95d4d6a749424787e0d6 |
23-Feb-2011 |
Gloria Wang <gwang@google.com> |
Merge "- Add method in MediaPlayerService to collect and pull codec usage (duration) for the battery app - Collect MediaPlayer decoding usage data"
|
7cf180c9bff69e5cc4a2f4e53b432db45ebbebab |
20-Feb-2011 |
Gloria Wang <gwang@google.com> |
- Add method in MediaPlayerService to collect and pull codec usage (duration) for the battery app - Collect MediaPlayer decoding usage data Change-Id: I0ef4e32b6a041ba1fe73c19f9c67185c61d03965
MediaPlayerService.cpp
|
f1d985081cff2a6aa2397c5341da8432db753211 |
22-Feb-2011 |
James Dong <jdong@google.com> |
Check file descriptor before passing it through binder calls bug - 3476613 Change-Id: I858933fd2fe4c095c0bd58bf50344c47fc104be9
ediarecorder.cpp
|
6b2718c67aa7b1a8e3b0f25a73a0d5f72c59ffc3 |
04-Feb-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 3352047 Wrong message when adjusting volume Add hidden AudioManager.getDevicesForStream and output device codes. Change-Id: I4d1c1d3b6a077cd117720817d1f733dda557b947
udioSystem.cpp
AudioPolicyService.cpp
|
eda6c364c253ba97ee45a3adeb8c2b45db1f81db |
02-Feb-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3371080 Modified default volume control logic in AudioService: 1 IN_CALL volume if in video/audio chat 2 NOTIFICATION if notification is playing or was playing less than 5s ago. 3 MUSIC Modified silent mode: - now also affect MUSIC stream type - entering silent mode when VOL- hard key is pressed once while selected stream volume is already at 0 (except for VOICE_CALL stream). - exiting silent mode when pressing VOL+ hard key while in silent mode Play sound FX (audible selections, keyboard clicks) at a fixed volume. Modified audio framework: - isStreamActive() method now implemented in AudioPolicyManagerBase (previously AudioFlinger) - iStreamActive() now specifies a time window during which the stream is considered active after it actually stopped. Change-Id: I7e5a0724099450b9fc90825224180ac97322785f
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
cce3a1107ef5bf9c8c8dbbaf922a2b33f24abfe6 |
29-Jan-2011 |
Marco Nelissen <marcone@google.com> |
am c929677e: Merge "Increase the number of useful bits in the spectrum." into gingerbread * commit 'c929677e017759047d94599faa1b80ebe278fefb': Increase the number of useful bits in the spectrum.
|
209821c7b7ead3ac58743d0a6d21dd05a2e77708 |
19-Jan-2011 |
Marco Nelissen <marcone@google.com> |
Increase the number of useful bits in the spectrum. Change-Id: I3efc2ac8db689285566df35cb6f594aab41141db
isualizer.cpp
|
b391290130f263441334ee4525a5832f0bea2ef0 |
19-Jan-2011 |
Andreas Huber <andih@google.com> |
Make parameter blocks read/writable even for SET_PARAMETER/SET_CONFIG requests. Refactor the logic a little. Change-Id: Idd7a26678d846c96b0b11f096305e7467381bda3
OMX.cpp
|
95304d5488ba465f19cc788f1c7394218c2ea2d1 |
03-Dec-2010 |
James Dong <jdong@google.com> |
Squash commits of the following patches, cherry-picked from other branch - do not merge. o Prepare for publishing MediaMetadataRetriever as public API step one: o replaced captureFrame with getFrameAtTime o removed getMode o Replace MediaMetadataRetriever.captureFrame() with MediaMetadataRetriever.getFrameAtTime() as part of the preparation for publishing MediaMetadataRetriever as public Java API o Remove captureFrame from MediaMetadataRetriever.java class It has been replaced by getFrameAtTime() method o Replace extractAlbumArt() with getEmbeddedPicture() in MediaMetadataRetriever.java o Publish MediaMetadataRetriever.java as public API o Removed setMode() methods and related mode constants o Removed some of the unused the metadata keys o Updated the javadoc o part of a multi-project change. bug - 3309041 Change-Id: I2efb6e8b8d52897186b016cb4efda6862f5584c4
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
7f7d52ac18dfc3c6d8f6267dad29306613e9bd0e |
06-Jan-2011 |
James Dong <jdong@google.com> |
Publish MediaMetadataRetriever.java as public API o Removed setMode() methods and related mode constants o Removed some of the unused the metadata keys o Updated the javadoc o part of a multi-project change. bug - 2433195 Change-Id: I5ed167f1fd6a53cb143b7dc385b149431d434438
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
145e68fc778275963189b02a1adcbe27cce4d769 |
12-Jan-2011 |
Andreas Huber <andih@google.com> |
Increase cache size and low-watermark threshold, also MediaPlayer now sends out MEDIA_INFO,MEDIA_INFO_VIDEO_TRACK_LAGGING messages to the JAVA client informing it how much (if at all) the video lags behind audio (arg2 is the media delay in ms). Change-Id: I6933f573d8597a35112e4b5ee0fcb826a7f6ddd1 related-to-bug: 3335220
ediaplayer.cpp
|
3e9f9f1596d4225ddd9288b4f7b24a15221374dc |
16-Dec-2010 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: Add support for scanning empty directories Currently the media scanner does not create database entries for directories unless they contain a file that is scanned. Fixing this so we provide a consistent view of the world to MTP. Change-Id: Ia776acfeae23192183e7192d63cdc34d830ea889 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
0f01764099d7a65b8921725df3340140f9fc4cd5 |
16-Dec-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO. The problem is that when an input stream is opened for record over bluetooth SCO, the kernel mono audio device should be opened in RW mode to allow further use of this same device by an output stream also routed to bluetooth SCO. This does not happen because of a bug in AudioSystem::isBluetoothScoDevice() that does not return true when the device is DEVICE_IN_BLUETOOTH_SCO_HEADSET (input device for blurtooth SCO). Change-Id: Ic78bf324b4a68e65721d763dc7682ce7a8f14f75
udioSystem.cpp
|
14acc736e336cbd6026df781d4f411e908831815 |
06-Dec-2010 |
Andreas Huber <andih@google.com> |
API Support for both synchronous and queued commands, optionally associated metadata. Change-Id: Idb90d64cb638942210c5822b3cba2f05b087d601
ndroid.mk
StreamSource.cpp
|
16afe2fb439cab6125bb46a07a8078d4ce1c1ea5 |
03-Dec-2010 |
James Dong <jdong@google.com> |
Prepare for publishing MediaMetadataRetriever as public API step one: o replaced captureFrame with getFrameAtTime o removed getMode bug - 2433195 Change-Id: I38a8cecef29014692f0b08b8818326e3ebb40a12
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
c75872920cd2de02d04bdc132ad5cf6d78c0578f |
01-Dec-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 4f93f08d: am 683a7ff9: Merge "Visualizer: Fix the conversion from 8-bit sample to 16-bit sample." into gingerbread * commit '4f93f08d8c8b8067ff2176d9ec15c76c0e4cc0c2': Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.
|
ecd0a4f0b5bdd51bc35097b402202d6349f016ba |
30-Nov-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 683a7ff9: Merge "Visualizer: Fix the conversion from 8-bit sample to 16-bit sample." into gingerbread * commit '683a7ff922409d2aa6c944bc4e08de32029e80e5': Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.
|
879e9cb6b4e8b09a5c7d4942ce36125193deadde |
30-Nov-2010 |
Chia-chi Yeh <chiachi@android.com> |
Merge "Visualizer: Fix the conversion from 8-bit sample to 16-bit sample." into gingerbread
|
e2b1028852120bcfded33b8f06f66b780437fe92 |
23-Nov-2010 |
Andreas Huber <andih@google.com> |
Support streaming data across binder boundaries. Change-Id: Ifbac61406dcb81343765f99ccba08bd90f9274cc
ndroid.mk
MediaPlayerService.cpp
StreamSource.cpp
|
f5aafb209d01ba2ab6cb55d1a12cfc653e2b4be0 |
18-Nov-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 3157123. Use a Mutex wherever atomic operations were used in AudioTrack, AudioRecord, AudioFlinger and AudioEffect classes. Change-Id: I6f55b2cabdcd93d64ef19446735b8f33720f8dbc
udioEffect.cpp
udioRecord.cpp
udioTrack.cpp
|
a1680bce73ea1b051cc92e0df651a53944b104ee |
18-Nov-2010 |
James Dong <jdong@google.com> |
Fix an issue wherre error notification will not be sent after mediaplayer reset bug - 3198642 Change-Id: Ieab13e12af9fdd0ad0873c522885e1350e7cd24c
ediaplayer.cpp
|
0a5ca668c6f7d45706e9aec4a1dfec0aacc6d233 |
16-Nov-2010 |
Andreas Huber <andih@google.com> |
Remove all traces of legacy renderer support in stagefright. Change-Id: I17b8e0dbf53fca37c96830c41131b4bc0c24ca6d
MediaPlayer.cpp
OMX.cpp
ediaplayer.cpp
|
56ecd20263d7f63476f756fc5d8b043b325c7bfb |
09-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for audio recording source in generic audio policy mgr. Update the platform-independent audio policy manager to pass the nature of the audio recording source to the audio policy client interface through the AudioPolicyClientInterface::setParameters() method. Change-Id: I6b4fd0f8a3acea0d7d30bbad98edd1977dc012bf
udioSystem.cpp
|
3baff73198ce852fa60080bd32703028298b4d65 |
08-Nov-2010 |
Andreas Huber <andih@google.com> |
resolved conflicts for merge of 31dc911a to gingerbread-plus-aosp Change-Id: I2f51b2120b3c552566d91a7dc498a5e8b130205f
|
85d9b4225d024bb0d602b48bd6d5219cbebd7b8e |
04-Nov-2010 |
Andreas Huber <andih@google.com> |
Support post-decode video rotation. Change-Id: Ia371316e73a57e44610de86adce3eaa560afbf84
OMX.cpp
|
6b6a736ec71c692c165952fe653a7766075e94bb |
01-Nov-2010 |
Chia-chi Yeh <chiachi@android.com> |
Visualizer: Fix the conversion from 8-bit sample to 16-bit sample. Change-Id: Ie6d77b0f61a37333e05cdcdb6ef29d6f6c345a9d
isualizer.cpp
|
05ea6434ed399395e2dbe9f68abb44f04b274cb0 |
29-Oct-2010 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 0d5694ba2d399dd0869532a4d6256448185a1be0 Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:59:23 2010 -0700 suspend() and resume() methods on VideoView are back but don't do anything. They need to be back because they were public before. Change-Id: Iddfd1021ffcf341f26e8d55ba761fd33701e2425 commit 16192891ed7d349ee97e47d1729d20a2d0d247b8 Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:47:05 2010 -0700 Revert "New API on VideoView widget to suspend/resume a session. Do not release the MediaPlayer client for video suspending/resuming." This reverts commit 2e1818a4d16c3309660f27286c77d8d1eee95a25. Conflicts: api/current.xml Change-Id: I68dd1d05871044faf3f832d0838aa40bc7f890e5 commit 8f934dc1a3ae4e60f0790fcf97671e063fa20fad Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:44:16 2010 -0700 Revert "Release mediaplayer if the current state is not suspending. Fix for bug 2480093." This reverts commit efb882cf75eef39ecaf9f8920ed302a019fa629f. commit f2ed03550887986f39d36b5dabcd9e919949c7cf Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:44:08 2010 -0700 Revert "Release MediaPlayer if suspend() returns false." This reverts commit 047212fd4ea360675e94d3ce83c7f5544f65b268. commit 441ecce678bd24e9660a72c8627b5bd94433ff8b Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:40:46 2010 -0700 manually. Change-Id: I4fdd43c9f7c8b3eedddb31a196da4984e1c58e87 Change-Id: I60d4b10e7a9e4ed8d9a796f1711618f557eb6e89
MediaPlayer.cpp
ediaplayer.cpp
|
e870772a78ffe08b1c14a791e368f1499f1be0f3 |
21-Oct-2010 |
James Dong <jdong@google.com> |
OMX extension to support storing meta data in video input buffers during recording bug - 3042125 Change-Id: I7543809fa4ff61d48da35eec6c2bd5eaa7e8cead
OMX.cpp
|
8ac0cb9dc8a46f9b2badabc91cb5f7871e2215a9 |
18-Oct-2010 |
Jean-Baptiste Queru <jbq@google.com> |
Merge fb474872 from gingerbread-plus-aosp Change-Id: I1bbb845a86a7b7df44ea175df3af22e5f47c44e3
|
06fa2bcce5dd80b406a23f980d8c9fac1524ebfd |
16-Oct-2010 |
Andreas Huber <andih@google.com> |
am b04f356d: Merge "Include the framework copy of the OpenMAX headers instead of referencing external/opencore." into gingerbread Merge commit 'b04f356d86eec74217fca8e3b85d801c4fcaa678' into gingerbread-plus-aosp * commit 'b04f356d86eec74217fca8e3b85d801c4fcaa678': Include the framework copy of the OpenMAX headers instead of referencing external/opencore.
|
56cfa2376ae87cba730ea7ce4a9e0ca4f0d07627 |
15-Oct-2010 |
Andreas Huber <andih@google.com> |
Include the framework copy of the OpenMAX headers instead of referencing external/opencore. Change-Id: I762f59acf5e1f770e4d7c2d89af362bfffebefa6 related-to-bug: 3101573
ndroid.mk
|
3e8742fa4a5f0f8b185274763f6ec4e6c3a89344 |
15-Oct-2010 |
Andreas Huber <andih@google.com> |
am 27c7fb1a: am 90d59d18: Merge "Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that." into gingerbread Merge commit '27c7fb1a861776b4fdc2632697e4e25eee83617f' * commit '27c7fb1a861776b4fdc2632697e4e25eee83617f': Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.
|
f9f083e2853740c97588f4db82c24645ae5880e4 |
15-Oct-2010 |
Kenny Root <kroot@google.com> |
resolved conflicts for merge of a127c07c to master Change-Id: Ifdfc6681cba00f36456eaf7a97f34a75b9d0c086
|
8cde59da2dd8540466aff5e94e9a6e5f74df1f10 |
14-Oct-2010 |
Andreas Huber <andih@google.com> |
am 90d59d18: Merge "Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that." into gingerbread Merge commit '90d59d180bd963f00161e6bfaabfda432960cab6' into gingerbread-plus-aosp * commit '90d59d180bd963f00161e6bfaabfda432960cab6': Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.
|
2959a5a5b4d151e14da3abe0289c15693409eb84 |
14-Oct-2010 |
Andreas Huber <andih@google.com> |
Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that. Change-Id: I48175666857ab0fb1519777bdb6f7f0b6b5cc599 related-to-bug: 3073955
etadata.cpp
|
e4edd632d48720b44f7878273f46d192d5703150 |
13-Oct-2010 |
Andreas Huber <andih@google.com> |
am 312644cd: Merge "Support for writing to MPEG2 transport stream files." into gingerbread Merge commit '312644cdbb39522fe9cac028b15b907ce0e8e0f7' into gingerbread-plus-aosp * commit '312644cdbb39522fe9cac028b15b907ce0e8e0f7': Support for writing to MPEG2 transport stream files.
|
59b7dc39ea8332d3418a599e51447d7edb612ac4 |
12-Oct-2010 |
Andreas Huber <andih@google.com> |
Support for writing to MPEG2 transport stream files. Change-Id: If3b7a807bc224a4b1cb2236537c3ebdc5aee0d97
ediarecorder.cpp
|
2eeadf9ded4b5770a713496e9887d668889987bc |
11-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am 4f21e517: am b37fcbfd: Merge "Added getter for session Id to AudioSink" into gingerbread Merge commit '4f21e517d09b9d793d20d64547df330fba705b3c' * commit '4f21e517d09b9d793d20d64547df330fba705b3c': Added getter for session Id to AudioSink
|
74684081846ee6e68325fa5aba5c45b7447fd368 |
08-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am b37fcbfd: Merge "Added getter for session Id to AudioSink" into gingerbread Merge commit 'b37fcbfd7f9d65b90b43e0242903030c5a6517b5' into gingerbread-plus-aosp * commit 'b37fcbfd7f9d65b90b43e0242903030c5a6517b5': Added getter for session Id to AudioSink
|
8c563ed9ca8a863a66965330b5d14bb4b4ab59d4 |
08-Oct-2010 |
Eric Laurent <elaurent@google.com> |
Added getter for session Id to AudioSink Added a method to expose the audio session id at AudioSink interface so that the AudioPlayer in stagefright can retrieve it. Also: - Fixed audio effect send level not being initialized in mediaplayer. - Fixed compilation error when LOGV is enabled in mediaplayer JNI Change-Id: I4bb55454fd63d646e0e677692d737c4843fb05fb
ediaplayer.cpp
|
9ad6e8bd9fab860e639f6ce95479e4b2a9b03ff5 |
01-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am de12c3cf: am 220ab887: Merge "Issue 3032913: improve AudioTrack recovery time" into gingerbread Merge commit 'de12c3cf56e3f27b2efc60eeae8b5e422747f2b9' * commit 'de12c3cf56e3f27b2efc60eeae8b5e422747f2b9': Issue 3032913: improve AudioTrack recovery time
|
b3788b6d0f5a003d3d3e621ad605e2f3f4cb11e8 |
01-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am 220ab887: Merge "Issue 3032913: improve AudioTrack recovery time" into gingerbread Merge commit '220ab8877b234e6807b7f6d9028ba55d23220301' into gingerbread-plus-aosp * commit '220ab8877b234e6807b7f6d9028ba55d23220301': Issue 3032913: improve AudioTrack recovery time
|
44d9848d6656777a18019223e0d35f2fcc67719a |
01-Oct-2010 |
Eric Laurent <elaurent@google.com> |
Issue 3032913: improve AudioTrack recovery time This issue showed that when an AudioTrack underruns during a too long period of time and is therefore disabled by audioflinger mixer, it takes an additional delay of up to 3 seconds to recover. This fix adds a simple mechanism to recover immediately when the client application is ready to write data again in the AudioTrack buffer Also throttle warnings on record overflows Change-Id: I8b2c71578dd134b9e60a15ee4d91b70f3799cb3d
udioTrack.cpp
|
c425ffbfdca80c663b16a875228c15a1147a75f4 |
27-Sep-2010 |
Eric Laurent <elaurent@google.com> |
am 1b37df95: am 9627847d: Merge "Fix error in AudioEffect command status reporting." into gingerbread Merge commit '1b37df95ec9d03aaa5f4055c6cd86db42f9c9727' * commit '1b37df95ec9d03aaa5f4055c6cd86db42f9c9727': Fix error in AudioEffect command status reporting.
|
da4b9bdd4682fb3a20964908cb18d02c943b7f35 |
27-Sep-2010 |
Eric Laurent <elaurent@google.com> |
am 9627847d: Merge "Fix error in AudioEffect command status reporting." into gingerbread Merge commit '9627847d588cd969f60dcc79d165209184a90069' into gingerbread-plus-aosp * commit '9627847d588cd969f60dcc79d165209184a90069': Fix error in AudioEffect command status reporting.
|
0fa449cc475580d995e9d56756c3da5507d2b6f6 |
24-Sep-2010 |
Eric Laurent <elaurent@google.com> |
Fix error in AudioEffect command status reporting. AudioEffect::command() should not interpret the status returned in pReplyData unless the command is ENABLE or DISABLE. Also fixed: - bug in Visualizer::getWAveForm() status reporting. - wrong initialization value for capture buffer in visualizer engine. Change-Id: I60fb0011f9dba96ee74661dec1e8ef441edcaf35
udioEffect.cpp
isualizer.cpp
|
d44b51d9fcb0b5d891d2abece83a551e71ebb73b |
18-Sep-2010 |
Marco Nelissen <marcone@google.com> |
am 5c9f3579: am f30fae63: Merge "Add a check to track a problem the monkey script has been triggering." into gingerbread Merge commit '5c9f35799422d818f34f814c76c2acd8c939a40c' * commit '5c9f35799422d818f34f814c76c2acd8c939a40c': Add a check to track a problem the monkey script has been triggering.
|
6901625dcb847871e23f04b9a282dc5d313a1d57 |
18-Sep-2010 |
Marco Nelissen <marcone@google.com> |
am f30fae63: Merge "Add a check to track a problem the monkey script has been triggering." into gingerbread Merge commit 'f30fae63389a2216faf55636b95a08f35b5c3620' into gingerbread-plus-aosp * commit 'f30fae63389a2216faf55636b95a08f35b5c3620': Add a check to track a problem the monkey script has been triggering.
|
1c1503cf47c0a37a30e7acac2c5d29140fc61a5f |
18-Sep-2010 |
Marco Nelissen <marcone@google.com> |
Add a check to track a problem the monkey script has been triggering. Change-Id: If3896946d993cbab2442e17740f18efd7e753a3b
ediaplayer.cpp
|
d5672bc7162fa49abf9bb5844195887e911aa7ce |
17-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Adding default profiles for specific levels. The low and high profiles should each match one of the specific profiles. So we need to add the specific profiles corresponding to the low/high profiles. This makes the default profile compliant to documentation + cts. Also fixed javadoc to account time lapse profiles. Change-Id: I34e7307d00ce261c69dc10ead2900025c7f6d428
ediaProfiles.cpp
|
c59ad085c9737e8d56328732be6864de302acae9 |
10-Sep-2010 |
Mike Lockwood <lockwood@android.com> |
Media scanner support for tracking files of arbitrary type. The native media scanner no longer filters files based on file extension. Audio, video, image and playlist files are handled as before, but non-media files are now inserted into the "files" table, which was originally added to support MTP. Change-Id: I9053218fb6d2671a3bb181405c34442b94678afc Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
9783ed8f85af3d7c72030098acfed7e1d6638349 |
11-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Exposing specific profile levels + hasProfile(). - Exposing the specific resolution profile levels QUALITY_{QCIF,CIF,480P,720P,1080P} and the new time lapse profiles QUALITY_TIME_LAPSE_{LOW,HIGH,QCIF,CIF,480P,720P,1080P} - Unhiding the hasProfile() function used to test if a given profile exists. Change-Id: I5d8b9e1ba61718f304235e76d85244e428e68643
ediaProfiles.cpp
|
1a02fabca518806222212bdc708b36a37a7c3925 |
11-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Merge "Adding hasProfile."
|
a0d472f114bb6a74005aaf61e91e3569ae061630 |
10-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Merge "Added specific resolution and time lapse profiles."
|
8bb5603cc735315c8691dc9b7a81b4ad4d6e253e |
10-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Adding hasProfile. - Added hasProfile to CamcorderProfile and JNI. - Added hasCamcorderProfile to MediaProfiles. - using android.hardware.Camera.CAMERA_ID_DEFAULT for default camera in get(). Change-Id: Ib57bb49ae79492d7cbc0ec6c7b6efcbf74f80013
ediaProfiles.cpp
|
c0a84782589eececdfa7e723e8aa0e572d0d79f5 |
07-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Added specific resolution and time lapse profiles. - Added enums QUALITY_{QCIF,480P,720P,1080P} QUALITY_TIME_LAPSE_{LOW,HIGH,QCIF,480P,720P,1080P} in CamcorderProfile and corresponding ones in MediaProfiles. - Added functions createDefaultCamcorderTimeLapseLowProfile, createDefaultCamcorderTimeLapseHighProfile to set default values. - Moved javadoc for constants to the get() function. Change-Id: Ib8b3f8d29395dff77a397d1e6b44cfaf8c481d4d
ediaProfiles.cpp
|
83750eaf5a3f38c243a9e7eb81d4b2421e3a0d88 |
31-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Add the new Stagefright ANativeWindow OMX codec API. This change defines the two OMX_SetParameter calls that enable OMX codecs to interact with ANativeWindows. It also adds the plumbing to the IOMX, OMX, and OMXNodeInstance classes to use these new APIs. This is try 2 for this change, after reverting the first one because it broke the build. Change-Id: I94249b72bdb5d5719360f03d7935fcca4ece5028
OMX.cpp
|
9f2d258645826c999a93a4206df157fec2e3b0f2 |
01-Sep-2010 |
Jamie Gennis <jgennis@google.com> |
Revert "Merge "Add the new Stagefright ANativeWindow OMX codec API."" This reverts commit 8a643b411e1802977f742709113ce01b06a18e12, reversing changes made to 73ea9beaf8eb3d0027e78cbc0ac5e626c3f8deb4.
OMX.cpp
|
9dd4931cca8e4a2fcbcabf4eb7078648e1c029cd |
01-Sep-2010 |
Jamie Gennis <jgennis@google.com> |
Merge "Add the new Stagefright ANativeWindow OMX codec API."
|
559dc605bfe2deb73ad718e0d5c5dc55e27c45df |
31-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Add the new Stagefright ANativeWindow OMX codec API. This change defines the two OMX_SetParameter calls that enable OMX codecs to interact with ANativeWindows. It also adds the plumbing to the IOMX, OMX, and OMXNodeInstance classes to use these new APIs. Change-Id: Ibfbf893dc3513db0b3d3221bec5708c77287cddc
OMX.cpp
|
5d6aca5d86e86af3f8f597be573d4563d69ceb85 |
27-Aug-2010 |
Nipun Kwatra <nkwatra@google.com> |
Added setAuxiliaryOutputFile to MediaRecorder and JNI added setAuxiliaryOutputFile to allow setting of an auxiliary output file. Also added the JNI support. Change-Id: I8c3335192bd6f7fcbfdfc8552cfd0848f2ad2a5d
MediaRecorder.cpp
ediarecorder.cpp
|
6865ddb29fc7e7a14104d73c65b71074502bb6c7 |
31-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 1577e629: am 12006013: fixedfft: Only includes cpu-features.h when __arm__ is defined. Merge commit '1577e629866b2700e31c9467478e05ebffcc69a1' * commit '1577e629866b2700e31c9467478e05ebffcc69a1': fixedfft: Only includes cpu-features.h when __arm__ is defined.
|
eebcf36cf2db2563af8ef479e01747321aa959e8 |
31-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 12006013: fixedfft: Only includes cpu-features.h when __arm__ is defined. Merge commit '12006013cc2cd0a076855ed068f5f782b24631c3' into gingerbread-plus-aosp * commit '12006013cc2cd0a076855ed068f5f782b24631c3': fixedfft: Only includes cpu-features.h when __arm__ is defined.
|
5edae619a6ad7337a3d14b53f7665ff17ec3ee84 |
30-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
fixedfft: Only includes cpu-features.h when __arm__ is defined. Change-Id: Ifb6c03b38eff3c94a507ceb5043fcc48b364c25c
ixedfft.cpp
|
e7c0899a7b7549ea342af67e7ab525f81672cfa5 |
25-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am 74ede9e4: am 67b50606: Merge "Fix the simulator build." into gingerbread Merge commit '74ede9e4fd3f5ab3c139abd95a22abf9f33c2d64' * commit '74ede9e4fd3f5ab3c139abd95a22abf9f33c2d64': Fix the simulator build.
|
dd8b35d2f7911bb1e12010f143c5b8c1b621f2ed |
25-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am 67b50606: Merge "Fix the simulator build." into gingerbread Merge commit '67b506065e9fe3c56e3d1b47eedfa01170d574f9' into gingerbread-plus-aosp * commit '67b506065e9fe3c56e3d1b47eedfa01170d574f9': Fix the simulator build.
|
625981ec8417528cbea67c86dcbe32a9e79a79be |
25-Aug-2010 |
Eric Laurent <elaurent@google.com> |
Fix the simulator build. Fixes the sim build broken by commit 58d3bd08107f44cba79938dd8430e69c0fda4202. Change-Id: I5a63623363d558783dc5254fdd322080cc2f3525
ixedfft.cpp
|
ef6c8c0324be75dfac3d6a4025ec3b3a7ca23826 |
24-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am a102871c: am b80e610b: Merge "Visualizer: replace the FFT implementation with a faster one." into gingerbread Merge commit 'a102871c7cbb74ebddc53231a871145de61351b0' * commit 'a102871c7cbb74ebddc53231a871145de61351b0': Visualizer: replace the FFT implementation with a faster one.
|
4b79168835965cf0fc41ebe2a367e22b4cb20d08 |
11-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Change the framework to use the new camera preview path. This change makes the camera HAL interface take an ANativeWindow interface from which all the camera preview buffers will be allocated. The framework code running in application processes now passes a Surface object rather than an ISurface to the camera server via Binder when setting the preview surface. The camera server then forwards that Surface object (which implements the ANativeWindow interface) to the camera HAL, which uses it to communicate with SurfaceFlinger to allocate the camera preview buffers. Change-Id: Ie438f721559cd7de5e4f848a26d96360dda07b5f
MediaRecorder.cpp
ediarecorder.cpp
|
5daeb129a2c2ba3d14ccd94af283b5f561c783ea |
16-Aug-2010 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 35cc68814a9537c31fde146e171e7b0bbdfe211e Author: Andreas Huber <andih@google.com> Date: Mon Aug 16 08:48:42 2010 -0700 Only enable support for yuv to yuv conversion on passion, where it's available, use the slower yuv->rgb565 path everywhere else. commit d8ac5a8814103e60d11d2acf61997fc31a1dc58d Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 13:56:44 2010 -0700 The software renderer takes over all rendering, converting from yuv to yuv if possible and rgb565 otherwise. commit 684972074b74318bdcb826ed9b5b0864d2d2e273 Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 09:34:35 2010 -0700 A first shot at supporting the new rendering APIs. Change-Id: Iea9b32856da46950501f1a700f616b5feac710fd
MediaPlayer.cpp
ediaplayer.cpp
|
7be0434ce8d4139e9ca4b1f374153de0c75ac049 |
23-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am b80e610b: Merge "Visualizer: replace the FFT implementation with a faster one." into gingerbread Merge commit 'b80e610b070c2cec98a228a8aec450dc24a5f90a' into gingerbread-plus-aosp * commit 'b80e610b070c2cec98a228a8aec450dc24a5f90a': Visualizer: replace the FFT implementation with a faster one.
|
dbd2b7e4ebfe7a586b1db4459cf6aa032a7f8719 |
19-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
Visualizer: replace the FFT implementation with a faster one. This implementation uses fixed points instead of floating points. It is slightly inaccurate compared to the old one but still perfect for visualization purpose. It runs 40% faster on passion, 5 times faster on sholes, and of course 14 times faster on sapphire. Change-Id: I1e868417bcffda091becf106a7b941d02813faec
ndroid.mk
isualizer.cpp
ixedfft.cpp
|
4a3935898893f955403021fe41cf2bfa3a32dde2 |
18-Aug-2010 |
Jean-Baptiste Queru <jbq@google.com> |
resolved conflicts for merge of 0b7bd95d to gingerbread-plus-aosp Change-Id: I55c1689c7d0737c943efec28d8164d6a5360621c
|
f1a97e53a58f47afa17a9b0d3a5cc9abf7e5ed19 |
17-Aug-2010 |
Rene Bolldorf <xsecute@googlemail.com> |
Fix compilation errors in libmedia, libstagefright. (invalid conversion from 'const char*' to 'char*') Change-Id: Idef85606b7cff629b2778ed8134c79c892af54c2
ediaScanner.cpp
|
2dac90da3ea5120b52844a6ee38c300301de5756 |
12-Aug-2010 |
James Dong <jdong@google.com> |
am 0386d04b: am 581581fe: Merge "Fix all fd leaks in authoring engine" into gingerbread Merge commit '0386d04b19619b03b6bce830010e11d31d3f8a5c' * commit '0386d04b19619b03b6bce830010e11d31d3f8a5c': Fix all fd leaks in authoring engine
|
25d83125cee222993673d3ba261ae1186bcad8c2 |
12-Aug-2010 |
James Dong <jdong@google.com> |
Fix all fd leaks in authoring engine Change-Id: I17798543f9dd41cc8bef6f6086e66932f9f97be8
MediaRecorder.cpp
|
bc417c0531332635df9525df4683274a08fb987f |
10-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am 1ece7d68: am 2a6b80bc: Fixed several audio effects problems. Merge commit '1ece7d6873027068a3e7b055597045e9387b217c' * commit '1ece7d6873027068a3e7b055597045e9387b217c': Fixed several audio effects problems.
|
8569f0d3bf4c6787707e348a7cf73b9c4199cb32 |
30-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Fixed several audio effects problems. - Fixed constant inversions in AudioEffect.java - Do not return error when enabling an already enabled effect - Update cached effect state in native AudioEffect class when effect is enabled/disabled by command() method - Remove click when restarting effect during disable sequence - Fixed problem in master mute management when volume control is delegated to effect. Change-Id: I6df4ce9fcc54fdc7345df858f639d20d802d6712
udioEffect.cpp
|
982a93173bc84f005172152d823cbb59dfcbeb12 |
05-Aug-2010 |
Andreas Huber <andih@google.com> |
am 1f513d88: am c17f35dd: Merge "Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation." into gingerbread Merge commit '1f513d8821670a33d6361ea521b6756163a3f9bf' * commit '1f513d8821670a33d6361ea521b6756163a3f9bf': Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation.
|
aa68b49a53a874a1813e65752663f19d18149e2c |
05-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am eec3fca6: am 7629e8dd: Merge "Fix issue 2876124." into gingerbread Merge commit 'eec3fca6277296f354ee2b1af0f4b3dceddb3067' * commit 'eec3fca6277296f354ee2b1af0f4b3dceddb3067': Fix issue 2876124.
|
39ddf8e0f18766f7ba1e3246b774aa6ebd93eea8 |
04-Aug-2010 |
Andreas Huber <andih@google.com> |
Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation. Change-Id: I95b8dd487061add9bade15749e563b01cd99d9a6
ediarecorder.cpp
|
3b26844e60f8487388e7e62709faf0dada86e7e1 |
03-Aug-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2876124. Allow calls to MediaPlayer::notify() in idle state to signal errors from JNI. Change-Id: I1515fe69766f0a926b76e15c4971317da2acd6a0
ediaplayer.cpp
|
9da2070b6d6d20550de7da61478c325f0928d020 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
resolved conflicts for merge of 27eecb70 to gingerbread Change-Id: If064f2f4950fc1a4ff38e6927fe2120af76b26f1
|
bc286dce1af6670824fba4167e0750b631168d72 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am 0c51c98f: am 4506c62a: fix inaccurate copyrights Merge commit '0c51c98fd9edf0bdc8f2c567470fc332b5ae3adf' * commit '0c51c98fd9edf0bdc8f2c567470fc332b5ae3adf': fix inaccurate copyrights
|
0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am 4506c62a: fix inaccurate copyrights Merge commit '4506c62abd5767d6d42a97e8e87793a1b3bcb625' into gingerbread-plus-aosp * commit '4506c62abd5767d6d42a97e8e87793a1b3bcb625': fix inaccurate copyrights
|
68335fdd6e9c1d622384612605d6952503cb7fd0 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
fix inaccurate copyrights Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
MediaRecorder.cpp
|
01cff464978aa0f749f42650180b45ea56cb17de |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
fix inaccurate copyrights Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
MediaRecorder.cpp
|
ed0de3c123aaa86147993721d4794648a65aab75 |
28-Jul-2010 |
Eric Laurent <elaurent@google.com> |
am 6fa88882: am 62d83a0c: Merge "Audio effects: modified command() parameter types." into gingerbread Merge commit '6fa8888254deb4961dc64c6ac03dc103c9cd8bcf' * commit '6fa8888254deb4961dc64c6ac03dc103c9cd8bcf': Audio effects: modified command() parameter types.
|
25f4395b932fa9859a6e91ba77c5d20d009da64a |
28-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio effects: modified command() parameter types. The type of the cmd, cmdSize and *pReplySize parameters of the effect control interface command() function have been modified from int to uint32_t. This is more consistent with their role. Change-Id: I84d289fc262d6753747910f06f485597dfee6591
udioEffect.cpp
Effect.cpp
EffectClient.cpp
isualizer.cpp
|
71ff94cb52874e42dede3c6bc4b86757b72cf0b1 |
21-Jul-2010 |
Eric Laurent <elaurent@google.com> |
am 34161132: am 7070b365: Added support for auxiliary audio effects to AudioTrack and MediaPlayer. Merge commit '34161132030254bac7dd64c9713832e2f961a061' * commit '34161132030254bac7dd64c9713832e2f961a061': Added support for auxiliary audio effects to AudioTrack and MediaPlayer.
|
2beeb50b1bba9e92f6cacfeca37fe9fa9d36ead1 |
16-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Added support for auxiliary audio effects to AudioTrack and MediaPlayer. Added methods to AudioTrack and MediaPlayer java classes to enable use of auxiliary audio effects. The effect can be attached and detached by specifying its ID and the send level controlled. Change-Id: Ie74ff54a453096a742688476f612ce355543b6f3
udioTrack.cpp
MediaPlayer.cpp
ediaplayer.cpp
|
8184a5734690b30f4de0f6b6c16daf1e089f67df |
20-Jul-2010 |
Eric Laurent <elaurent@google.com> |
resolved conflicts for merge of dd206093 to master Change-Id: I21dd2321a4839d034d49092baccbf40986f17dae
|
de070137f11d346fba77605bd76a44c040a618fc |
13-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio policy manager changes for audio effects Added methods for audio effects management by audio policy manager. - control of total CPU load and memory used by effect engines - selection of output stream for global effects - added audio session id in parameter list for startOutput() and stopOutput(). this is not used in default audio policy manager implementation. Modifications of audio effect framework in AudioFlinger to allow moving and reconfiguring effect engines from one output mixer thread to another when audio tracks in the same session are moved or when requested by audio policy manager. Also fixed mutex deadlock problem with effect chains locks. Change-Id: Ida43484b06e9b890d6b9e53c13958d042720ebdb
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
4e2ffa400b82559cab2c5717c8dcdff393d334a9 |
15-Jul-2010 |
Mike Lockwood <lockwood@android.com> |
Fixes for simulator build on lucid strchr and strrchr now return const char* instead of char* Change-Id: I5ca831b8951af7e6306eb9d9d6f78ed2ec13d649 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
66e6c1c85c33194b1a6fc5077bd78b53a5fe9d03 |
09-Jul-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
am bd3f8b71: am e7b790f1: Merge "Fix swap of sessionId and output in audio effect API." into gingerbread Merge commit 'bd3f8b711643a172703537e34a0fa7c21c5b953f' * commit 'bd3f8b711643a172703537e34a0fa7c21c5b953f': Fix swap of sessionId and output in audio effect API.
|
42a050ff9636b79e4b91297cc41028ffd62240d5 |
09-Jul-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Fix swap of sessionId and output in audio effect API. Change-Id: Idc93415efef92087507401e50cfb235a6f1f7ed7
udioEffect.cpp
|
6506bd2be256cdebc69324714c5b26c767981046 |
08-Jul-2010 |
Eric Laurent <elaurent@google.com> |
am b91881fd: am dacabf97: Merge "Added Visualizer effect." into gingerbread Merge commit 'b91881fdd1608cc922f105ec552b5505da1fecb9' * commit 'b91881fdd1608cc922f105ec552b5505da1fecb9': Added Visualizer effect.
|
6c5c25fae5aa68a52c6fa75649dd559a9ca98932 |
08-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Added Visualizer effect." into gingerbread
|
da7581b7b61b84f15e8d671c86fd117c322b009e |
02-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Added Visualizer effect. The visualizer enables application to retrieve part of the currently playing audio for visualization purpose. It is not an audio recording interface and only returns partial and low quality audio content as a waveform or a frequency representation (FFT). Removed temporary hack made in MediaPlayer for animated wall papers based on audio visualization (snoop() method. This commit also includes a change in AudioEffect class: - the enable()/disable() methods have been replaced bya more standard setEnabled() method. - some fixes in javadoc Change-Id: Id092a1340e9e38dae68646ade7be054e3a36980e
ndroid.mk
udioEffect.cpp
MediaPlayerService.cpp
isualizer.cpp
ediaplayer.cpp
|
c143929b9f40112bb75eefbeafd6a56515868c9d |
01-Jul-2010 |
Chih-Chung Chang <chihchung@google.com> |
am bda93c4c: am 09b90057: Add multiple camera support for in MediaProfiles. Merge commit 'bda93c4cb94b47c86251d22df16e46a514c191ef' * commit 'bda93c4cb94b47c86251d22df16e46a514c191ef': Add multiple camera support for in MediaProfiles.
|
3eaa4e92dbebb5b27cb89f329f31fac6fb6fe1f0 |
22-Jun-2010 |
Chih-Chung Chang <chihchung@google.com> |
Add multiple camera support for in MediaProfiles. Change-Id: Ie89568a0f5f5fd08ede77e33f9a559215d6bed9a
ediaProfiles.cpp
|
1c645f22ab7e56a04659c09ffa2ca2de20650ddc |
29-Jun-2010 |
James Dong <jdong@google.com> |
am c2c59f69: am 2a76b316: Merge "Separate MediaRecorderClient with MediaPlayerClient" into gingerbread Merge commit 'c2c59f690deafe34c7701b01b612fd777cee8d4b' * commit 'c2c59f690deafe34c7701b01b612fd777cee8d4b': Separate MediaRecorderClient with MediaPlayerClient
|
37047fceba836f341d0108beed0991b0f8dfc543 |
26-Jun-2010 |
James Dong <jdong@google.com> |
Separate MediaRecorderClient with MediaPlayerClient - An alternative would be to define a common base class that both MediaRecorderClient and MediaPlayerClient can derive. But since the common code, onTransact() and notify() uses some Binder code, having a common base class may not gain us too much in terms of code reuse. Change-Id: Ibc06720278ad173fceacff3d267b7060856c6316
ndroid.mk
MediaRecorder.cpp
MediaRecorderClient.cpp
|
a93b488457b8d7dd17a1d80c82a9accafcdd8bad |
25-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am cdf1357b: am 8e103da1: Merge "Various fixes and improvements in audio effects implementation" into gingerbread Merge commit 'cdf1357b6e0152280dcd611b5f096db4887d8126' * commit 'cdf1357b6e0152280dcd611b5f096db4887d8126': Various fixes and improvements in audio effects implementation
|
ffe9c25ce85e1af55d58ec025adc6367d70db7e8 |
24-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Various fixes and improvements in audio effects implementation Effect API: - Use different definitions for audio device, channels, formats... in AudioSystem and EffectApi: Removed media/AudioCommon.h file created for initial version of EffectApi - Indicate audio session and output ID to effect library when calling EffectCreate(). Session ID can be useful to optimize the implementation of effect chains in the same audio session. Output ID can be used for effects implemented in audio hardware. - Renamed EffectQueryNext() function to EffectQueryEffect() and changed operating mode: now an index is passed for the queried effect instead of implicitly querying the next one. - Added CPU load and memory usage indication in effects descriptor - Added flags and commands to indicate changes in audio mode (ring tone, in call...) to effect engine - Added flag to indicate hardware accelerated effect implementation. - Renamed EffectFactoryApi.h to EffectsFactoryApi.h for consistency with EffectsFactory.c/h Effect libraries: - Reflected changes in Effect API - Several fixes in reverb implementation - Added build option TEST_EFFECT_LIBRARIES in makefile to prepare integration of actual effect library. - Replaced pointer by integer identifier for library handle returned by effects factory Audio effect framework: - Added support for audio session -1 in preparation of output stage effects configuration. - Reflected changes in Effect API - Removed volume ramp up/down when effect is inserted/removed: this has to be taken care of by effect engines. - Added some overflow verification on indexes used for deferred parameter updates via shared memory - Added hardcoded CPU and memory limit check when creating a new effect instance Change-Id: I43fee5182ee201384ea3479af6d0acb95092901d
udioEffect.cpp
AudioFlinger.cpp
|
ed914577e770697e23884886787e333588eb4c61 |
23-Jun-2010 |
Andreas Huber <andih@google.com> |
am 03e90f7e: am 58e9402b: Merge "Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp" into gingerbread Merge commit '03e90f7eeb032c981fc2952aa33f6ba1fae20d97' * commit '03e90f7eeb032c981fc2952aa33f6ba1fae20d97': Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp
|
1a97e853e8f9fa3f4f47304d0e2e9118887e6051 |
23-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am 845f5414: am 2c2ce8e5: Merge "Added support for audio sessions in MediaPlayer and AudioTrack." into gingerbread Merge commit '845f541454d1fa9f328c0b0bf79acf2fba363177' * commit '845f541454d1fa9f328c0b0bf79acf2fba363177': Added support for audio sessions in MediaPlayer and AudioTrack.
|
4ae22516962e6d6727fc3e9ce646441708ed60a9 |
23-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
am da9269af: am 3238302b: Merge "media: add AudioRecord::getMinFrameCount()." into gingerbread Merge commit 'da9269af5e94e25c142c519429aa77eb40f68e58' * commit 'da9269af5e94e25c142c519429aa77eb40f68e58': media: add AudioRecord::getMinFrameCount().
|
1629399bb578fc176613ccaf134d1be6e3047638 |
23-Jun-2010 |
Andreas Huber <andih@google.com> |
Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp Change-Id: I863651619f84b2b66e9a926ce1fef8ce6a53a42d related-to-bug: 2639116
ediaScanner.cpp
|
dadd0d1e7d5fbb88fd3420438c590a0bb4c18af5 |
23-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Added support for audio sessions in MediaPlayer and AudioTrack." into gingerbread
|
a514bdb58b5de4986679f72b7204b4764f7a2778 |
21-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Added support for audio sessions in MediaPlayer and AudioTrack. Audio sessions are used to associate audio effects to particular instances (or groups) of MediaPlayers or AudioTracks. Change-Id: Ib94eec43241cfcb416590f435ddce7ab39a07640
udioTrack.cpp
MediaPlayerService.cpp
ediaplayer.cpp
|
15304d601cbf83be6519ca53e1a26b97d50d0192 |
22-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
media: add AudioRecord::getMinFrameCount(). Change-Id: I952071ab10aa49aa96b727d157b68470d69fff3d
udioRecord.cpp
|
9e6f25df13d5242d83fda224f8cc0b2bf22a727c |
21-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
am d9e9132e: am 2ce999fc: am bd240c27: media: add AudioTrack::getMinFrameCount(). Merge commit 'd9e9132eeb2c02feb812f21a5cecb844b5b39d9d' * commit 'd9e9132eeb2c02feb812f21a5cecb844b5b39d9d': media: add AudioTrack::getMinFrameCount().
|
33005a932c60a0780fe9b7307d5988df3d9f6c26 |
16-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
media: add AudioTrack::getMinFrameCount(). Change-Id: If15162583d1d16d89f59be0793106afe77417f35
udioTrack.cpp
|
ef04e8f230e7ef5dece1cc4e73cd109c69905418 |
15-Jun-2010 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: Fix handling of files with dirent.d_type == DT_UNKNOWN The previous code was calling stat() on the parent directory rather than the actual file. Change-Id: If64552cb37552c77618a81ae4333307a018efe13 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
366c84d307e128a00a5ba0234cad7759a0b3d57c |
14-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am 184a3ff6: am e0219539: am 01f7ac64: Merge "Issue 2667802: [Audio Effect Framework] AudioEffect base class and JNI." into kraken Merge commit '184a3ff64ba71e7e860b70b9a836c0132b447138' * commit '184a3ff64ba71e7e860b70b9a836c0132b447138': Issue 2667802: [Audio Effect Framework] AudioEffect base class and JNI.
|
801a1186eb1d2ce195b15222701865932e08f3dc |
09-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Issue 2667802: [Audio Effect Framework] AudioEffect base class and JNI. Added AudioEffect C++ class. AudioEffect is the base class for effect specific implementations, OpenSL ES effect interfaces and audio effect JNI. Added the AudioEffect JNI and AudioEffect JAVA class. AudioEffect is the base class to implement more specific JAVA classes to control audio effects from JAVA applications. Change-Id: If300a1b708f2e6605891261e67bfb4f8330a4624
ndroid.mk
udioEffect.cpp
|
fc499ca2babff1315d0188ddfbe0268fe5d5e8ae |
04-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am 030a1553: am 2ea200c5: Merge "Issue 2667801: [Audio Effect Framework] AudioFlinger, AudioMixer AudioTrack modifications." into kraken
|
be916aa1267e2e6b1c148f51d11bcbbc79cb864c |
02-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Issue 2667801: [Audio Effect Framework] AudioFlinger, AudioMixer AudioTrack modifications. First drop of audio framework modifications for audio effects support. - AudioTrack/AudioRecord: Added support for auxiliary effects in AudioTrack Added support for audio sessions Fixed left right channel inversion in setVolume() - IAudioFlinger: Added interface methods for effect enumeraiton and instantiation Added support for audio sessions. - IAudioTrack: Added method to attach auxiliary effect. - AudioFlinger Created new classes to control effect engines in effect library and manage effect connections to tracks or output mix: EffectModule: wrapper object controlling the effect engine implementation in the effect library. There is one EffectModule per instance of an effect in a given audio session EffectChain: group of effects associated to one audio session. There is one EffectChain per audio session. EffectChain for session 0 is for output mix effects, other chains are attached to audio tracks with same session ID. Each chain contains a variable number of EffectModules EffectHandle: implements the IEffect interface. There is one EffectHandle object for each application controlling (or using) an effect module. THe EffectModule maintians a list of EffectHandles. Added support for effect modules and effect chains creation in PlaybackThread. modified mixer thread loop to allow track volume control by effect modules and call effect processing. -AudioMixer Each track now specifies its output buffer used by mixer for accumulation Modified mixer process functions to process tracks by groups of tracks with same buffer Modified track process functions to support accumulation to auxiliary channel Change-Id: I26d5f7c9e070a89bdd383e1a659f8b7ca150379c
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioTrack.cpp
|
a47e14e20e2c97955ac116b4f229316fe9c88e53 |
27-May-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO."
|
2dadcda205d995f7094b7569b076921872505143 |
26-May-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO. The problem is that when an input stream is opened for record over bluetooth SCO, the kernel mono audio device should be opened in RW mode to allow further use of this same device by an output stream also routed to bluetooth SCO. This does not happen because of a bug in AudioSystem::isBluetoothScoDevice() that does not return true when the device is DEVICE_IN_BLUETOOTH_SCO_HEADSET (input device for blurtooth SCO). Change-Id: I9100e972931d8142295c7d64ec06e31304407586
udioSystem.cpp
|
d71a1be83ff31cdb6599c351f9832cefc8d447ba |
21-May-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2667797: [Audio Effect Framework] new base class and binder interfaces for effect control. Added IEffect and IEffectClient binder interfaces to exchange effect module control and status information between application and media server processes. Change-Id: I10e8e894898e52ed9956a765d0ef7075eb2593af
ndroid.mk
Effect.cpp
EffectClient.cpp
|
d1b449aad6c087a69f5ec66b7facb2845b73f1cb |
14-May-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2553359: Pandora does not work well with Passion deskdock / Cardock. The problem is due to a too big difference between the buffer size used at the hardware interface and at the A2DP interface. When no resampling occurs we don't notice problems but the timing is very tight. As soon as resampling is activated, the AudioTrack underruns. This is because the AudioTrack buffers are not resized when moving the AudioTrack from hardware to A2DP output. The AudioTrack buffers are calculated based on a hardware output buffer size of 3072 bytes. Which is much less than the A2DP output buffer size (10240). The solution consists in creating new tracks with new buffers in AudioFlinger when the A2DP output is opened instead of just transfering active tracks from hardware output mixer thread to the new A2DP output mixer thread. To avoid synchronization issues between mixer threads and client processes, this is done by invalidating tracks by setting a flag in their control block and having AudioTrack release the handle on this track (IAudioTrack) and create a new IAudioTrack when this flag is detected next time obtainBuffer() or start() is executed. AudioFlinger modifications: - invalidate the tracks when setStreamOutput() is called - make sure that notifications of output opening/closing and change of stream type to output mapping are sent synchronously to client process. This is necessary so that AudioSystem has the new stream to output mapping when the AudioTrack detects the invalidate flag in the client process. Previously their were sent when the corresponding thread loop was executed. AudioTrack modifications: - move frame count calculation and verification from set() to createTrack() so that is is updated every time a new IAudioTrack is created. - detect track invalidate flag in obtainBuffer() and start() and create a new IAudioTrack. AudioTrackShared modifications - group all flags (out, flowControlFlag, forceReady...) into a single bit filed to save space. Change-Id: I9ac26b6192230627d35084e1449640caaf7d56ee
udioRecord.cpp
udioTrack.cpp
|
2e5299988b5f5f9165a76938a66d37e46dd48d6b |
13-Apr-2010 |
Mathias Agopian <mathias@google.com> |
don't hardcode "mSurface" throughout our source code this is used in a few places to get access to the android.view.Surface native surface. use a macro instead. Also rename the field to mNativeSurface. Change-Id: I1c6dea14abd6b8b1392c7f97b304115999355094
OMX.cpp
|
a17a1347ffe281fc70633ba8dc98f6cf49ac06ff |
02-Apr-2010 |
Dave Sparks <davidsparks@android.com> |
Use local lock for most MediaMetadataRetriever methods. Bug 2560834. MediaMetadataRetriever uses a single static lock for all operations. This effectively serializes all metadata retrieval operations in a single process. This patch uses the object level lock for all normal operations and only uses the static lock to serialize calls to release. Change-Id: I81c9f234c2f0007a26d18e1398c709b41a4dbbd7
ediametadataretriever.cpp
|
54b1a0550411c2fd2084d82d28934d505c37349a |
20-Mar-2010 |
Mathias Agopian <mathias@google.com> |
libutils Condition are now PRIVATE by default Condition must be initialized with SHARED for the old behavior, where they can be used accross processes. Updated the two places android that require SHARED conditions. PRIVATE conditions (and mutexes) use more efficient syscalls. Change-Id: I9a281a4b88206e92ac559c66554e886b9c62db3a
udioTrack.cpp
|
d3f93c572e55dc902d01f8eeda1d107a8b9128e2 |
17-Mar-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 2416481: Support Voice Dialer over BT SCO."
|
be55a2d66f03e80524a346500ffa9fd046410b28 |
11-Mar-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2416481: Support Voice Dialer over BT SCO. - AudioPolicyManager: allow platform specific choice for opening a direct output. Also fixed problems in direct output management. - AudioFliinger: use shorter standby delay and track inactivity grace period for direct output thread to free hardware resources as soon as possible. - AudioSystem: do not use cached output selection in getOutput() when a direct output can be selected. Change-Id: If44b50d29237b8402ffd7a5ba1dc43c56f903e9b
udioSystem.cpp
|
3e42b4491529975f771f8d71f931e24e120a7856 |
16-Mar-2010 |
Kenny Root <kroot@google.com> |
Fix regression in directory scanning Previous range-checking fix removed an inequality check. This change restores it. Offending change was I5eb310ced58c3c64a7af2d11b80326efe5adbcab Change-Id: Ic952c3ba5a4f7e5ab2148ec623b6f083cb7495fb
ediaScanner.cpp
|
8a6e24135608d1ec6629f381acd20d88369cd940 |
11-Mar-2010 |
Marco Nelissen <marcone@google.com> |
Merge "Revert "Do autodetection even if no locale was specified, and use the""
|
b5c3107262fdf82aef4bd5ee8b8c60dd3e4725fe |
11-Mar-2010 |
Marco Nelissen <marcone@google.com> |
Revert "Do autodetection even if no locale was specified, and use the" This reverts commit b45b0845a6db32848ad08ac1037ef67a68ec2d39.
ediaScannerClient.cpp
|
4023493a827bc9751d8e40795516d0d536a53348 |
10-Mar-2010 |
Nicolas Catania <niko@google.com> |
Allow invoke in all the player states except idle and error. Previously invoke would work only after prepare but not when the player is in play or pause state (for instance). This new change just check that the player has been initialized and is not in the error state. Bug:2488931 Change-Id: I9b9f3679593a3b7697c1a84d993fdcd7e1693a90
ediaplayer.cpp
|
64fb06f698b39759a7a2ebacd0a175949b7506a5 |
11-Mar-2010 |
Nicolas Catania <niko@google.com> |
Revert "Allow invoke in all the player states except idle and error." This reverts commit 88f3b81d065d4bec6f69a25eda99158e254f55b1.
ediaplayer.cpp
|
63bacaf543d4faee6dadda08e51556c878b078f5 |
10-Mar-2010 |
Nicolas Catania <niko@google.com> |
Allow invoke in all the player states except idle and error. Previously invoke would work only after prepare but not when the player is in play or pause state (for instance). This new change just check that the player has been initialized and is not in the error state. Bug:2488931 Change-Id: I7a69d1b6e3eec1e5dbdf7378ff2085329062595a
ediaplayer.cpp
|
83ff1438d2d1d5dbf39ca5e6f2e4fa1799e7ba80 |
10-Mar-2010 |
Marco Nelissen <marcone@google.com> |
MEDIA_PLAYER_STATE_ERROR is not a bitmask (b/2502881) Change-Id: I08e427eb2c36f5d70e40f9aeb8638fa8262de989
ediaplayer.cpp
|
88335b1a749fe0157547907a2ce6c9632f4d2592 |
03-Mar-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2428563: Camera rendered inoperable by voice call interruption. The problem is that AudioRecord never exits read() when a timeout occurs while trying to get new PCM data from audio hardware input buffer: it just keeps waiting and retrying until stop() is called. In the same time, opencore AndroidAudioInput::audin_thread_func() loop cannot be exited when stuck in AudioRecord::read() because the iExitAudioThread flag can only be sampled when AudioRecord::read() returns. We remain stuck with the audio input thread running. The fix consists in modifying AudioRecord behavior in case of timeout when getting new PCM samples. We now wait only one timeout period and try to restart audio record, in case the problem is due to a media_server process crash. If this fails, we exit read() with a number of bytes read equals to 0 so that AndroidAudioInput::audin_thread_func() loop can exit. Also modified Audioflinger::RecordThread() loop so that we attempt to recover from HAL read errors. In case of read error, the input stream is forced to standby so that next read attempt does a reconfiguration and restart of the audio input device.
udioRecord.cpp
|
05bca2fde53bfe3063d2a0a877f2b6bfdd6052cf |
26-Feb-2010 |
Eric Laurent <elaurent@google.com> |
Issue 2071329: audio track is shorter than video track for video capture on sholes Add API to retrieve number of frames dropped by audio input kernel driver. Submitted on behalf of Masaki Sato <masaki.sato@motorola.com>
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
|
e3d91046072908f5613a21652b6da9b44043f1d5 |
27-Feb-2010 |
James Dong <jdong@google.com> |
Merge "Don't allow MediaRecorder.setParameter() to be invoked in the following states: error, prepared or recording"
|
698f476590bc9e38d4d1d4155da9efdbedd357c4 |
26-Feb-2010 |
Marco Nelissen <marcone@google.com> |
When we're in the 'playback complete' state, don't consider pausing an error. This makes 'playback complete' essentially equivalent to being paused at the end, and treats it the same as being paused at any other position.
ediaplayer.cpp
|
e284bac7757ad732d0812eb6133125434ba66d5b |
26-Feb-2010 |
James Dong <jdong@google.com> |
Don't allow MediaRecorder.setParameter() to be invoked in the following states: error, prepared or recording bug - 2362412
ediarecorder.cpp
|
f5a8385649204213dc19e1a64f4693931e048d85 |
24-Feb-2010 |
James Dong <jdong@google.com> |
Image encoding settings java API through xml configuration file - I decided to completely remove jpeg decoding related stuff from this change I think that setting is better off if it is specified by the system properties. We don't have to include MediaProfiles.h header in skia files
ediaProfiles.cpp
|
df49e8926e85088bc7d1dc7905362437c9806b69 |
22-Feb-2010 |
Eric Laurent <elaurent@google.com> |
am 8978547f: am f5fe3949: Fix issue 2459650. Merge commit '8978547f254b6b6ba2e322794aa044803f3edc2a' * commit '8978547f254b6b6ba2e322794aa044803f3edc2a': Fix issue 2459650.
|
7c7fa1b51bec497cd7f46c1bdb5bb0adfaa181b2 |
22-Feb-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2459650. This change fixes a problem where an unwanted tone is generated by audio policy manager when a MT call is answered. This is because of a policy that replaces high visibility system sounds (ringtones, alarms...) by a beep when in call. There is a transitory phase while the call is being answered where the phone state is changed to IN_CALL but the ringtone is still playing. The audio policy manager then mutes the end of the ringtone and starts playing a beep in replacement because the ringtone is categorized as high visibility. The fix consists in changing the ringtone stream type from high visibility to low visibility. This is not a problem as the only actual use case where a ringtone would be generated while in call is if another call is received. But in this case, the phone system does not generate a ringtone but a call waiting tone instead. It is therefore not required to handle a ringtone as a high visibiltiy tone that must be somehow signaled to the user while in call.
udioSystem.cpp
|
eb03f13fd3b5a4b1060cd55881934ff9c918fe8c |
18-Feb-2010 |
Kenny Root <kroot@google.com> |
Range check in MediaScanner::processDirectory Make sure we don't have an empty string before checking if it's a directory since this string is tainted. Change-Id: I5eb310ced58c3c64a7af2d11b80326efe5adbcab
ediaScanner.cpp
|
4e92c7efc68b5d7635a32dbd283ab8558ad9bdd6 |
12-Feb-2010 |
Andreas Huber <andih@google.com> |
New API on java's MediaPlayer to suspend/resume a session. related-to-bug: 2231576
MediaPlayer.cpp
ediaplayer.cpp
|
3cf613507f1e2f7bd932d921a6e222e426fd3be4 |
10-Feb-2010 |
Mathias Agopian <mathias@google.com> |
split libsurfaceflinger_client and libcamera_client out of libui
ndroid.mk
MediaPlayer.cpp
MediaRecorder.cpp
OMX.cpp
ediaplayer.cpp
ediarecorder.cpp
|
77f8531a739c46cffe7f7fd1e035de542deccf48 |
10-Feb-2010 |
Marco Nelissen <marcone@google.com> |
Do autodetection even if no locale was specified, and use the detected encoding if it is unambiguous.
ediaScannerClient.cpp
|
1d7491b19516505e0754c66a3c8cd61811c9b6a6 |
20-Jan-2010 |
James Dong <jdong@google.com> |
Initial check-in for xml-based encoder capabilities retrieval - Changed the Java API as suggested - Treat /etc/media_profiles.xml as the default xml configurtion file
ndroid.mk
ediaProfiles.cpp
|
867d2f6ce668968e463eb86b856d21525f12fd67 |
26-Jan-2010 |
Mathias Agopian <mathias@google.com> |
Simplify the MemoryDealer implementation At some point the implementation became complicated because of SurfaceFlinger's special needs, since we are now relying on gralloc we can go back to much simpler MemoryDealer. Removed HeapInterface and AllocatorInterface, since those don't need to be paramterized anymore. Merged SimpleMemory and Allocation. Made SimplisticAllocator non virtual. Removed MemoryDealer flags (READ_ONLY, PAGE_ALIGNED) Removed a lot of unneeded code.
udioRecord.cpp
udioTrack.cpp
|
2db8455d8f4468a637109d31f319ce02d9d743ec |
28-Jan-2010 |
Andreas Huber <andih@google.com> |
API Extension: Support for optionally specifying a map of extra request headers when specifying the uri of media data to be played. related-to-bug: 2393577 Original change by Andrei Popescu <andreip@google.com>
MediaPlayerService.cpp
ediaplayer.cpp
|
342e9cf388cceb807def720e40e8b0a217f4bcaa |
20-Jan-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2285561: New AudioFlinger and audio driver API needed for A/V sync Added getRenderPosition() API to IAudioFlinger to retreive number of audio frames written by AudioFlinger to audio HAL and by DSP to DAC. Added getRenderPosition() API to AudioHardwareInterface to retreive number of audio frames written by DSP to DAC. Exposed AudioTrack::getPosition() to AudioSink() to make it available to media player. Removed excessive log in AudioHardwareGeneric.
udioSystem.cpp
AudioFlinger.cpp
|
b72a396826da8bd934b9531bbd40f86d7509e71c |
25-Jan-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2378022: AudioService should direct volume control to STREAM_VOICE_CALL stream when STREAM_VOICE_CALL stream is active. Modified AudioService.getActiveStreamType() so that STREAM_VOICE_CALL is selected when a track using this stream type is playing. Chanded isMusicActive() for a more generic isStreamActive(stream) method in AudioSystem, IAudioFlinger and AudioFlinger.
udioSystem.cpp
AudioFlinger.cpp
|
0ef583f785528ef2785e6149d5964004cd1016b0 |
25-Jan-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2363154: Speech synthesis fails to start over A2DP after media server process crash. The problem is that after a media_server crash, the value of the A2DP output handle can change. As this value is cached in AudioSystem for all client processes there can be a mismatch between the cached and actual value after a media_server restart. The fix consists in clearing the cached output handles and output to stream map values cached in AudioSystem in AudioFlingerClient::binderDied() which is called when the media_server crashes.
udioSystem.cpp
|
570a3cb7582daa030cb38eedc5eb6a06f86ecc7f |
21-Jan-2010 |
Andreas Huber <andih@google.com> |
Fix no-copy-overhead OMXCodec implementation to actually work.
OMX.cpp
|
5cb4241cbeb409f2322bd527349c080a2cf454df |
19-Jan-2010 |
Andreas Huber <andih@google.com> |
Merge "Avoid unnecessary buffer copying if at all possible, detect if running in the mediaserver process."
|
7eaa9c9385535b651064e02d05a8ffa4b2359281 |
16-Jan-2010 |
Andreas Huber <andih@google.com> |
Avoid unnecessary buffer copying if at all possible, detect if running in the mediaserver process.
OMX.cpp
|
dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675 |
16-Jan-2010 |
James Dong <jdong@google.com> |
Media server death nodification
ndroid.mk
MediaDeathNotifier.cpp
ediaplayer.cpp
ediarecorder.cpp
|
67e5a4f6f6879d512a859e5dba92e9beec7a2f91 |
08-Jan-2010 |
Andreas Huber <andih@google.com> |
Reorganize some of the stagefright implementation related to metadata.
ndroid.mk
tagefrightMediaScanner.cpp
tagefrightMediaScanner.h
|
134ee6a324c35f39e3576172e4eae4c6de6eb9dc |
16-Dec-2009 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 144b1c40e9cf08a584c50e1bef7ba3f287e81a4f Author: Andreas Huber <andih@google.com> Date: Wed Dec 16 09:28:23 2009 -0800 This H264 file shows a certain problem even better. commit 3245f1f3b7471975aeeb824a756c987abd610f55 Author: Andreas Huber <andih@google.com> Date: Wed Dec 16 09:20:08 2009 -0800 Using only the QA testfiles now. commit 074817eb3816c5dd70858a3594e3b92d799d873b Author: Andreas Huber <andih@google.com> Date: Tue Dec 15 16:17:39 2009 -0800 Yay, roles are back again now that the API is in place. commit 6d847e4932cc38301ae27cb7283b7f1553a95457 Author: Andreas Huber <andih@google.com> Date: Tue Dec 15 13:01:20 2009 -0800 Added commandline option for specifying the random seed for reproducable tests. commit 62ab37b26336eaa67e49791c41c996acb6acee3f Author: Andreas Huber <andih@google.com> Date: Mon Dec 14 10:53:27 2009 -0800 When issuing a seek it is important that only the first MediaSource::read call has the seek option. commit e77c46644b2fb6862bafa3569f7d304252074f1e Author: Andreas Huber <andih@google.com> Date: Mon Dec 7 16:39:07 2009 -0800 Make sure the tests are actually built, sp<OMXCodec> becomes sp<MediaSource> commit 6df56915bd55a9445b3c6f953d3cc251d81579b8 Author: Andreas Huber <andih@google.com> Date: Thu Dec 3 14:25:36 2009 -0800 Temporarily disable support for querying the roles of OMX components. commit 31bb26930df9e3658dea684cedb4b0f1a06a4a88 Author: Andreas Huber <andih@google.com> Date: Tue Dec 1 13:36:52 2009 -0800 Disregard EOS events, slightly change the way the EOS flag on output buffers is handled. commit 4c382fbc9aebee8197d5988d04378062809e7c48 Author: Andreas Huber <andih@google.com> Date: Tue Dec 1 09:37:24 2009 -0800 New random seek test for the codec tests. Fixed "sticky" end-of-output-buffers flag behaviour in OMXCodec. commit c762eac3e44309592b61a168d66e091cf609fa03 Author: Andreas Huber <andih@google.com> Date: Tue Nov 3 14:13:43 2009 -0800 Fix a typo. commit 50540a59b65c7d476b0193c7494cd75895e6ca6d Author: Andreas Huber <andih@google.com> Date: Tue Nov 3 09:48:35 2009 -0800 Some more fine tuning of the unit tests, make MPEG4Extractor less verbose. commit 1157a7e52a0636706caa235abe16d2ff8a0b8140 Author: Andreas Huber <andih@google.com> Date: Wed Oct 28 12:01:01 2009 -0700 Changes to the IOMX::listNodes API, this now returns the component's roles as well, unit tests now test all components in all supported roles by default. commit 30fbf2d8c6cb927689f7ba75eb550a81e9df488a Author: Andreas Huber <andih@google.com> Date: Mon Oct 26 09:45:26 2009 -0700 Initial check-in of unit tests for OMX components.
OMX.cpp
|
a410d5a7150d6b14f98197e570c78ea7b6a65091 |
07-Dec-2009 |
Eric Laurent <elaurent@google.com> |
am 6d42d806: Merge change I9cc489a2 into eclair Merge commit '6d42d80653f2c41f3e72a878a1d9a6f9693b89f7' into eclair-mr2 * commit '6d42d80653f2c41f3e72a878a1d9a6f9693b89f7': Fix issue 2304669: VoiceIME: starting and canceling voice IME yields persistent "error 8" state on future attempts and breaks voice search.
|
148b266afe2ac92b5616c24e8d5160e6f9242f69 |
05-Dec-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2304669: VoiceIME: starting and canceling voice IME yields persistent "error 8" state on future attempts and breaks voice search. Fixed AudioFlinger::openInput() broken in change ddb78e7753be03937ad57ce7c3c842c52bdad65e so that an invalid IO handle (0) is returned in case of failure. Applied the same correction to openOutput(). Modified RecordThread start procedure so that a failure occuring during the first read from audio input stream is detected and causes the record start to fail. Modified RecordThread stop procedure to make sure that audio input stream fd is closed before we exit the stop function. Fixed AudioRecord JAVA and JNI implementation to take status of native AudioRecord::start() into account and not change mRecordingState to RECORDSTATE_RECORDING if start fails.
udioRecord.cpp
|
adf7d77752b3dbd47badc8819aa2674860d6ccba |
04-Dec-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change I6c84d731 into eclair-mr2 * changes: Media/ToneGenerator: Change tone format for TONE_CDMA_ANSWER
|
97494da9d418b599fa1b9930487b90c978357634 |
04-Dec-2009 |
Andreas Huber <andih@google.com> |
I accidentally broke this code while refactoring MediaScanner. This is the fix.
tagefrightMediaScanner.cpp
|
413f523afe96aff02d2b0a7459127b8f67b2b43c |
03-Dec-2009 |
Andreas Huber <andih@google.com> |
Refactor MediaScanner. Some steps on the way towards being able to build the tree without OpenCore.
ndroid.mk
ediaScanner.cpp
ediaScannerClient.cpp
tagefrightMediaScanner.cpp
tagefrightMediaScanner.h
utodetect.cpp
utodetect.h
|
981594f5c3697c3330bdbd4bb5a743fb9f01e6ab |
14-Oct-2009 |
Naveen Kalla <nkalla@quicinc.com> |
Media/ToneGenerator: Change tone format for TONE_CDMA_ANSWER Tone format for TONE_CDMA_ANSWER should be 660Hz + 1000Hz, with a 500ms ON duration.
oneGenerator.cpp
|
a7c816c4bdb72cf4f9fe853a96cd7efdb394006d |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
am 16cc72bd: Fix simulator build. Merge commit '16cc72bdef471ffeee3f61eba8262783de248b04' into eclair-mr2 * commit '16cc72bdef471ffeee3f61eba8262783de248b04': Fix simulator build.
|
827f3004421aacb6bceaf772ac825d4f2d3006e4 |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
am 8424ec32: Merge change I0f9a53d4 into eclair Merge commit '8424ec323b2bc38887370c75e2c1fcd84bcdb013' into eclair-mr2 * commit '8424ec323b2bc38887370c75e2c1fcd84bcdb013': Set metadata retriever thread group to the caller's group.
|
f311c557729099d002f4aae37c402a8287912369 |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
Fix simulator build.
MediaMetadataRetriever.cpp
|
ec4dde75955f87e5afea3f59ef991130257f3f3a |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
Set metadata retriever thread group to the caller's group. This patch modifies the native binder interface to the metadata retriever to pass the caller's thread group across the binder interface. On the server side, the thread scheduler group is set to the caller's scheduler group temporarily and restored after the request has completed. This patch also reverts a previous patch where the priority of the thread was forced to a low priority foreground thread. This should give apps more control over the priority of their metadata retrieval, particularly allow background process to run without hogging the CPU.
MediaMetadataRetriever.cpp
|
bf89c099fc97717e3008a481aeddc76c1ac5e00d |
21-Nov-2009 |
Eric Laurent <elaurent@google.com> |
am e7800946: Merge change I49f02be9 into eclair Merge commit 'e7800946a42c0ebe8e0b3f6eba04a96a9641aaff' into eclair-mr2 * commit 'e7800946a42c0ebe8e0b3f6eba04a96a9641aaff': Issue 2265163: Audio still reported routed through earpiece on sholes
|
6100d2d60517ff33ed8eb35d0b7ea63cde0831c9 |
19-Nov-2009 |
Eric Laurent <elaurent@google.com> |
Issue 2265163: Audio still reported routed through earpiece on sholes This is a second attempt to fix the audio routed to earpiece syndrom. The root cause identified this time is the crash of an application having an active AudioTrack playing on the VOICE_CALL stream type. When this happens, the AudioTrack destructor is not called and the audio policy manager is not notified of the track stop. Results a situation where the VOICE_CALL stream is considered as always in use by audio policy manager which makes that audio is routed to earpiece. The fix consists in moving the track start/stop/close notification to audio policiy manager from AudioTrack to AudioFlinger Track objet. The net result is that in the case of a client application crash, the AudioFlinger TrackHandle object (which implements the remote side of the IAudioTrack binder interface) destructor is called which in turn destroys the Track object and we can notify the audio policy manager of the track stop and removal. The same modification is made for AudioRecord although no bug related to record has been reported yet. Also fixed a potential problem if record stop is called while the record thread is exiting.
udioRecord.cpp
udioTrack.cpp
|
057eacf4578ac6b90ee18c524670e01445bf2732 |
13-Nov-2009 |
Eric Laurent <elaurent@google.com> |
am fddfb9ae: Merge change Iad79689a into eclair Merge commit 'fddfb9ae03a2730ac5ce27fa4c47b7d3a0285d0f' into eclair-mr2 * commit 'fddfb9ae03a2730ac5ce27fa4c47b7d3a0285d0f': Improvements for issue 2197683: English IME key-press latency is noticeably higher on passion than sholes
|
2b584244930c9de0e3bc46898a801e9ccb731900 |
10-Nov-2009 |
Eric Laurent <elaurent@google.com> |
Improvements for issue 2197683: English IME key-press latency is noticeably higher on passion than sholes This change goes with a kernel driver change that reduces the audio buffer size from 4800 bytes (~27ms) to 3072 bytes (~17ms). - The AudioFlinger modifcations in change 0bca68cfff161abbc992fec82dc7c88079dd1a36 have been removed: the short sleep period was counter productive when the AudioTrack is using the call back thread as it causes to many preemptions. - AudioFlinger mixer thread now detects long standby exit time and in this case anticipates start by writing 0s as soon as a track is enabled even if not ready for mixing. - AudioTrack::start() is modified to start call back thread before starting the IAudioTrack so that thread startup time is masked by IAudioTrack start and mixer thread wakeup time.
udioTrack.cpp
|
5b65c7043dada0c89d3a941742666ac40ea35746 |
05-Nov-2009 |
Andreas Huber <andih@google.com> |
DO NOT MERGE: Squashed commit of the following: commit 08259dd3dc9026887f9bbfedaf45866eb56ea9bc Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 12:02:31 2009 -0800 DO NOT MERGE: Use PV for metadata extraction even if stagefright is used for playback. commit 991832fe4dc012e51d3d9ed8d647c7f09991858f Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:24:11 2009 -0800 DO NOT MERGE: Do not assert if we encounter OMX_StateInvalid. All bets are off though. commit cec45cf302d9218fe79956cbe8a462d7ca3a10bb Author: Andreas Huber <andih@google.com> Date: Mon Oct 26 16:11:54 2009 -0700 DO NOT MERGE: When freeing an OMX node, attempt to transition it from its current state all the way to "Loaded" in order to properly free any allocated buffers. commit 34a1e885ef9113d68acbc26d36fcc47fdebbed84 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:10:49 2009 -0800 DO NOT MERGE: Fix heap corruptin in OMXNodeInstance. commit 5a47f7439a1298b330541a7e4e647a8b44487388 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:08:19 2009 -0800 DO NOT MERGE: Fix seek-on-initial-read behaviour of OMXCodec. commit 45bed64722501b9f411a2940aff5aff4cc4d2e98 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:02:23 2009 -0800 DO NOT MERGE: Renaming string.h to stagefright_string.h to avoid conflicts. commit 6738e306a50196f31a73d4fc7b7c45faff639903 Author: Andreas Huber <andih@google.com> Date: Thu Oct 15 13:46:54 2009 -0700 DO NOT MERGE: Reimplement the OMX backend for stagefright. Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup. Changed APIs to conform to the rest of the system.
MediaPlayerService.cpp
OMX.cpp
|
1c02bfb63ea6e1d1630a09229044d64be200a9ef |
05-Nov-2009 |
Eric Laurent <elaurent@google.com> |
am 67b69292: Merge change I93f500a5 into eclair Merge commit '67b692920c18f99b096dce285adc6f7439fa866c' into eclair-mr2 * commit '67b692920c18f99b096dce285adc6f7439fa866c': Fix issue 2203561: Sholes: audio playing out of earpiece.
|
34f1d8ecd23169a5f299937e3aaf1bd7937578a0 |
04-Nov-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2203561: Sholes: audio playing out of earpiece. Create a new IAudioTrack interface to AudioFlinger when start() fails due to a broken pipe error. Do the same if start fails due to the same error after time out in obtainBuffer(). Do not indicate that the AudioTrack is started to AudioPolicyManager if IAudioTrack start fails. This avoids that an AudioTrack keeps a dead IAudioTrack after a media server crash. Same modifications for AudioRecord. Add a flag to ToneGenerator indicating that the callback thread can call Java. Without it, when the media server crashes and restarts, the AudioSystem error callback will crash in JNI if the IAudiotrack is created from AudioTrack callback thread.
udioRecord.cpp
udioTrack.cpp
AudioRecord.cpp
AudioTrack.cpp
oneGenerator.cpp
|
fe44b7a8b2b8da50a7a78f4b7e034b6d01785e44 |
24-Oct-2009 |
Eric Laurent <elaurent@google.com> |
am bf96aaad: Merge change Icf10db28 into eclair Merge commit 'bf96aaadd46fb5b0884070177faa16ec4f22e2ba' into eclair-mr2 * commit 'bf96aaadd46fb5b0884070177faa16ec4f22e2ba': Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.
|
88e5ad9f0d9b35d4868347bce47b28b7358b32e4 |
24-Oct-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change Icf10db28 into eclair * changes: Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.
|
09d88b00dbd0a04ed45a661590cca49d6e5b42f5 |
23-Oct-2009 |
Eric Laurent <elaurent@google.com> |
am dd28d563: Fix 2209967 Tonegenerator: mutex not release in startTone() upon timeout waiting for the stop sequence to complete. Merge commit 'dd28d56368441537ec5eb42150516416fdbf10ad' into eclair-mr2 * commit 'dd28d56368441537ec5eb42150516416fdbf10ad': Fix 2209967 Tonegenerator: mutex not release in startTone() upon timeout waiting for the stop sequence to complete.
|
a9a4390989072d579eedab6b71fb41248b3ad8fe |
23-Oct-2009 |
Eric Laurent <elaurent@google.com> |
Fix 2209967 Tonegenerator: mutex not release in startTone() upon timeout waiting for the stop sequence to complete. Unlock mLock mutex when exiting upon wait stop timeout condition. Increase timeout delays to avoid timing out when A2DP exits standby.
oneGenerator.cpp
|
f0ee6f4055e26fb35d9c526a596668a4dc9da5ba |
21-Oct-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume. Added setVoiceVolume() method to AudioSystem, AudioFlinger, IAudioFlinger, AudioPolicyService. Removed call to AudioHardwareInterface::setVoiceVolume() from AudioFlinger::setStreamVolume().
udioSystem.cpp
AudioFlinger.cpp
|
318ad9c1d9d6515026dfc2c021359d27decaa7a1 |
15-Oct-2009 |
Andreas Huber <andih@google.com> |
Reimplement the OMX backend for stagefright. Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup. Changed APIs to conform to the rest of the system.
MediaPlayerService.cpp
OMX.cpp
|
36efa039efaae4526791336cb688032d22b34bec |
08-Oct-2009 |
Andreas Huber <andih@google.com> |
Some decoders will return an error on OMX_EmptyThisBuffer to indicate that they don't support the media format, deal with this.
OMX.cpp
|
e33e00e931d1381d402484aa5cde67e540e3c82c |
06-Oct-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2139634: DTMF tones on Sholes popping, hissing (audio latency too high). This change is a complement to the main fix in kernel driver for the same issue (partner change #1250). It removes clicks sometimes heard after the end of the tones while audio flinger is sending 0s to the audio output stream. The problem was that the sleep time between two writes was more than the duration of one audio output stream buffer which could cause some underrun. Also fixed a recent regression in ToneGenerator that made that the end of previous tone was repeated at the beginning of current one under certain timing circumstances when the maximum tone duration was specified.
oneGenerator.cpp
|
10dbb8e97e7a81ca4867663b5517f048820b3094 |
20-Sep-2009 |
Marco Nelissen <marcone@google.com> |
Music visualizer support hack. This currently assumes 44k stereo (won't crash on other formats, but won't give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.
ndroid.mk
MediaPlayerService.cpp
ediaplayer.cpp
|
824b6a4a67166c3937400702944f659bd0d5d386 |
24-Sep-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2142613: ToneGenerator: short tones sometimes don't play on sholes or over A2DP. When the AudioTrack callback notification size is relatively high (Which is the case on Sholes and over A2DP), it is likely that the end of tone is reached during the first callback. In this case, the AudioTrack is stopped before exiting the callback which causes 2 problems: - 1: If the AudioFlinger thread is scheduled before we exit the ToneGenerator callback, the track can be stopped and reset before the data is actually marked as present in the buffer by the AudioTrack callback => no audio will be processed by AudioFlinger. - 2: In this case, the data write index in the AudioTrack buffer is incremented after the track was reset by the AudioFlinger which leaves unplayed data in the buffer. This data will be played the next time the AudioTrack is started if not flushed in between. The fix consists in adding an intermediate state to ToneGenerator state machine so that we exit the callback function when the stop condition is reached and stop the AudioTrack the next time we execute the callback.
oneGenerator.cpp
|
1b84df1a0823fbcb9cec754311f53eaccfe85ae3 |
15-Sep-2009 |
Andreas Huber <andih@google.com> |
Added an API IOMX::createRendererFromJavaSurface. This api allows to instantiate a renderer by specifying the hosting java Surface object. This hides the implementation details of (java-)Surface, (native-)Surface and friends.
ndroid.mk
OMX.cpp
|
5841db78dff14898538200287d246577b1fc37e2 |
09-Sep-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2107584: media server crash when AudioFlinger fails to allocate memory for track control block. AudioFlinger: verify that mCblk is not null before using it in Track and RecordTrack contructors. IAudioFlinger: check result of remote transaction before reading IAudioTrack and IAudioRecord. IAudioTrack and IAudioRecord: check result of remote transaction before reading IMemory.
AudioFlinger.cpp
AudioRecord.cpp
AudioTrack.cpp
|
85fa14d35468acca07ce0085d67b909f673fae07 |
07-Sep-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1992233: DTMF tones on Sholes is really long. Add a parameter to ToneGenerator.startTone() allowing the caller to specify the tone duration. This is used by the phone application to have a precise control on the DTMF tone duration which was not possible with the use of delayed messaged. Also modified AudioFlinger output threads so that 0s are written to the audio output stream when no more tracks are ready to mix instead of just sleeping. This avoids an issue where the end of a previous DTMF tone could stay in audio hardware buffers and be played just before the beginning of the next DTMF tone.
oneGenerator.cpp
|
a9c322e398a1f5fdcace3b8b73967f010b1c31ca |
27-Aug-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2045911: Camera Shutter tone does not play correctly while listening to music. Add the possibility to delay routing and volume commands in AudioPolicyClientInterface. The delay is not blocking for the caller.
udioSystem.cpp
|
c6b59b7c8acf7c6e7fbb93470aecc2c0ebe1b084 |
17-Aug-2009 |
Andreas Huber <andih@google.com> |
Support for marshalling pointers / intptr_t in Parcel. Some refactoring to eliminate code duplication in Parcel implementation.
OMX.cpp
|
693d271e62a3726689ff68f4505ba49228eb94b2 |
14-Aug-2009 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 5bb012f0065f7ffaaeb4f569d71f0e3a8d6b19c3 Author: Andreas Huber <andih@google.com> Date: Fri Aug 14 10:40:08 2009 -0700 An attempt at fixing export using the qcom encoders. More quirks. commit 0690e76bfa48118a68287ccf1bbfa82febaa620c Author: Andreas Huber <andih@google.com> Date: Fri Aug 14 09:08:28 2009 -0700 Callbacks are now dispatched from a separate thread in OMX. commit c6571a039526df29b6343f9a1971dbc019088c61 Author: Andreas Huber <andih@google.com> Date: Thu Aug 13 15:42:25 2009 -0700 Massive API changes throughout stagefright, smart pointers everywhere. commit 900612af6a0555664d9ba195112cd859491265f4 Author: Andreas Huber <andih@google.com> Date: Thu Aug 13 13:33:12 2009 -0700 OMXCodecs now properly shutdown. commit 96732f05e1b0603dcd1b11f16a23512592eeb4f5 Author: Andreas Huber <andih@google.com> Date: Thu Aug 13 12:04:04 2009 -0700 More work on JPEG decoding using the hardware OMX component. commit 63839a073ac393e3a130434ba467969053b694ad Author: Andreas Huber <andih@google.com> Date: Wed Aug 12 13:13:31 2009 -0700 An attempt to drive the JPEG decoder OMX node. commit 3ac2fe5ab2926eda81b2123610b2434c645294ff Author: Andreas Huber <andih@google.com> Date: Tue Aug 11 16:38:21 2009 -0700 Renamed StateMachine to OMXCodec and put it in its proper place. commit 247da75a96bf8881956413023dd49a84d5b4f5b2 Author: Andreas Huber <andih@google.com> Date: Tue Aug 11 16:06:19 2009 -0700 Statemachine is now a full-fledged MediaSource. commit 045244f6771fa0b9b329495c953afda900a84b71 Author: Andreas Huber <andih@google.com> Date: Fri Aug 7 09:16:54 2009 -0700 Properly setup the input format when exporting to AMR audio. commit 271b984cb32c5cd9e46e3f90ae121f334e4b8da9 Author: Andreas Huber <andih@google.com> Date: Thu Aug 6 09:59:38 2009 -0700 Added some code to test audio encoding to the OMX harness. commit 79af4748e4af33bd66d3fbac606e332a69741cf4 Author: Andreas Huber <andih@google.com> Date: Wed Aug 5 14:36:22 2009 -0700 Merge the old OMXDecoder and the new, shiny, StateMachine code. commit 91cf5dd77a8762bc10a0b2ffce35e3bbeb262231 Author: Andreas Huber <andih@google.com> Date: Tue Aug 4 17:41:43 2009 -0700 A new harness to test OMX node compliance (and quirks).
OMX.cpp
|
5a22b909c9e8fc0d9321dcc014706a790b26b971 |
11-Aug-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2045983 ToneGenerator: fix void statement. There is a void statement at line 917 of ToneGenerator.cpp: mState == TONE_IDLE; This problem is harmless as in current code this execution path is never taken; it can only happen if a "new" operator fails in prepareWave() which is a case we usually consider as unlikely in android audio framework.
oneGenerator.cpp
|
f4148b55c5d6f68b22462e3880015fefa91ae7c6 |
07-Aug-2009 |
Andreas Huber <andih@google.com> |
Expose a variation of the createRenderer API that works on a plain Surface.
OMX.cpp
|
408b8e1073385d0d09bb96b9952f84731a0b4aeb |
07-Aug-2009 |
Andreas Huber <andih@google.com> |
Deprecate/remove now unused socketpair ipc communication in favour of exclusive binder use.
OMX.cpp
|
23aea9771d800ce43ffd8a23ad64ed6cead4b159 |
07-Aug-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 9674 * changes: Fix problem in AudioTrack with 8 bit PCM and direct output.
|
fa2877b9ea48baed934b866d2ab3658b69c4c869 |
28-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2001214: AudioFlinger and AudioPolicyService interfaces should not use pointers as handles to inputs and outputs. Use integers instead of void* as input/output handles at IAudioFlinger and IAudioPolicyService interfaces. AudioFlinger maintains an always increasing count of opened inputs or outputs as unique ID.
udioSystem.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
|
3302526f6276911b2dc40c731ea7fa0e7972d908 |
04-Aug-2009 |
Eric Laurent <elaurent@google.com> |
Fix problem in AudioTrack with 8 bit PCM and direct output. Do not perform 8 to 16 bit conversion in AudioTrack write() and processAudioBuffer() if direct output flag is set.
udioTrack.cpp
|
8b938cdab5bd3d074d9b41bc2915fcfc11e47f27 |
31-Jul-2009 |
Andreas Huber <andih@google.com> |
The IOMX interface now instantiates IOMXRenderers to hide the details of hardware accelerated blitting.
OMX.cpp
|
c2f1f07084818942352c6bbfb36af9b6b330eb4e |
17-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1795088 Improve audio routing code Initial commit for review. Integrated comments after patch set 1 review. Fixed lockup in AudioFlinger::ThreadBase::exit() Fixed lockup when playing tone with AudioPlocyService startTone()
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
etPlayer.cpp
oneGenerator.cpp
|
a64c8c79af1a15911c55306d83a797fa50969f77 |
21-Jul-2009 |
niko <niko@google.com> |
Added native metadata support. Metadata.java: Fixed typo 8k != 8092. The comment was correct though. In Metadata.h, the new Metadata class is declared in the ns android::media to limit the chances of conflict with other packages. The MetadataType in MediaPlayerInterface is gone and moved to Metadata as an inner typedef. Similarly the SortedVector<MetadataType> instance have been replace by a new type Metadata::Filter. All the keys declared in the java counterpart are also in Metadata.h. Metadata.cpp: Contains the implementation of the native metadata packing. There an associated change in the opencore package that should go in at the same time as this one.
ndroid.mk
etadata.cpp
|
20111aa043c5f404472bc63b90bc5aad906b1101 |
15-Jul-2009 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 8d179995654c19d9094e51989dc84ed0deba6e04 Author: Andreas Huber <andih@google.com> Date: Tue Jul 14 16:30:40 2009 -0700 Protect stagefright code with BUILD_WITH_STAGEFRIGHT build-define. commit 99b41acb58c34e8f024c30c833a09fd7b31c4e1f Author: Andreas Huber <andih@google.com> Date: Tue Jul 14 14:06:00 2009 -0700 OMX::list_nodes API, stagefright --list now lists all available OMX components. commit 94a74c5b24aae6d7e446fff83d62ae3a57dc351b Author: Andreas Huber <andih@google.com> Date: Mon Jul 13 16:04:29 2009 -0700 Reenabled "record" commandline application to test encoding, support for h263 codec specific data when writing to .mp4. commit d363dd74f611577567c66d25900d6264c306468c Author: Andreas Huber <andih@google.com> Date: Mon Jul 13 10:59:58 2009 -0700 Make non-socket communication in IOMX the default. commit e89fc82c4fd138c88339887baf72f1d0e67f8660 Author: Andreas Huber <andih@google.com> Date: Mon Jul 13 10:32:33 2009 -0700 The OMX interface now optionally supports communication through the binder only (no sockets involved) commit 28611de11223fba65299787cdd33f7fdbd6a60a3 Author: Andreas Huber <andih@google.com> Date: Fri Jul 10 15:09:13 2009 -0700 Split off the logic to render to a Surface (not ISurface!) into SurfaceRender.{cpp,h} commit c0cfa885faaeb17d3fc5436f6447b61708bd6fe1 Author: Andreas Huber <andih@google.com> Date: Fri Jul 10 12:21:46 2009 -0700 Fix display dimensions vs. decoded dimensions display issues, unfortunately breaks software rendering a bit... commit ae209a2b5d09caed5dd383c910f238926aaa8fc6 Author: Andreas Huber <andih@google.com> Date: Fri Jul 10 09:33:29 2009 -0700 Simple video decoder performance test in "stagefright" commandline tool. commit 59fe7840111d6f46dd3c48f4950146aed962dbd2 Author: Andreas Huber <andih@google.com> Date: Thu Jul 9 16:05:12 2009 -0700 StagefrightPlayer: Properly publish video dimensions by notifying the listener. commit 51b6598f0e47be5e12d77f1d14e111e71c593638 Author: Andreas Huber <andih@google.com> Date: Thu Jul 9 11:38:15 2009 -0700 MediaPlayerInterface::AudioSink now supports the specification of a callback for pull-based audio. commit 31ce53375d748da3e7d30e993ce89dae97fd65ea Author: Andreas Huber <andih@google.com> Date: Wed Jul 8 17:23:37 2009 -0700 Proper support for pushing audio to a specified AudioSink interface. Still not bulletproof: video falls behind frequently. commit a23e312b10631a5d47f5c9831205beac6b84ab36 Author: Andreas Huber <andih@google.com> Date: Wed Jul 8 15:10:13 2009 -0700 IGenesisPlayer and friends are no more, java interface now uses local playback instead of playing inside the media server process. commit 42ee5c06ab5ba1c16f50472b0b26a0526635c73c Author: Andreas Huber <andih@google.com> Date: Wed Jul 8 13:17:03 2009 -0700 MP3 extractor now supports seeking (only fixed bitrate files currently supported) commit 96a790405763bfa738d1c6845c99a9fdf579b66f Author: Andreas Huber <andih@google.com> Date: Tue Jul 7 10:53:54 2009 -0700 Keeping up-to-date with new master-gl changes, removing CameraSource for now, removing unnecessary commandline utilities from the build. commit 6c9dcb7c628c0347154dd7f37913a3a5f04deb99 Author: Andreas Huber <andih@google.com> Date: Mon Jul 6 16:40:02 2009 -0700 Finally take advantage of the fact that the Qcom OMX decoders already place the output buffers into memory accessible by the hardware yuv converter and avoid extra allocations and memcpys in that case. Split of the render logic into subclasses of VideoRenderer. commit e8d46e81cffc15ffb0bdf03f511e4a4497ca7621 Author: Andreas Huber <andih@google.com> Date: Mon Jul 6 12:18:29 2009 -0700 Added a few more cases of valid MPEG4 files to the sniffer, fixed end of stream notifications in MPEG4 files. commit 88bffc5ed4033a607080f8777a1c0ec9e3e079de Author: Andreas Huber <andih@google.com> Date: Thu Jul 2 12:25:03 2009 -0700 MediaPlayerImpl now properly pauses/resumes instead of tearing down the decoder chains and starting back up from the beginning. commit 732aa0a87c7e8d8a10776b275712649954962414 Author: Andreas Huber <andih@google.com> Date: Wed Jul 1 14:58:56 2009 -0700 Remove pthread_mutex_* and pthread_cond_* in favour of Mutex and Condition. commit 669e5944b2fe0542a3b8dba0c441a94503e99fb0 Author: Andreas Huber <andih@google.com> Date: Wed Jul 1 14:43:02 2009 -0700 Proper support for end-of-stream signalling of MediaSources. commit afb038f2dc594c742e554b2d42b86ffc7434e3fc Author: Andreas Huber <andih@google.com> Date: Tue Jun 30 16:48:03 2009 -0700 Support for the "sniffing" of datasources to determine their probable mime type (along with confidence). Slightly refactored the MP3Extractor to share common code with the sniffer. commit ed3644b8bd56807e1db4b32433a93a2467f1f3c5 Author: Andreas Huber <andih@google.com> Date: Fri Jun 26 13:27:52 2009 -0700 I don't think prepare should automatically start the player. commit 11eb9b49dc4a0819d366682817cba68613f4fe12 Author: Andreas Huber <andih@google.com> Date: Fri Jun 26 11:09:22 2009 -0700 Somewhat better timing information implemented in the MP3Extractor. commit cab023a1751735c0ed26c8493498a91d8644c6c9 Author: Andreas Huber <andih@google.com> Date: Thu Jun 25 15:41:56 2009 -0700 Initial checkin for support of mp3 content, extraction and playback. Media extractors now abstracted in MediaExtractor baseclass. commit 40f4146bb3c647e56690dd9b0fa3ffdea60030dc Author: Andreas Huber <andih@google.com> Date: Wed Jun 24 10:41:12 2009 -0700 Make sure we only allocate surface buffers if there is video to be played. commit 7f85e7d92fe81740e102e09905b19354f4ac178e Author: Andreas Huber <andih@google.com> Date: Wed Jun 24 10:19:32 2009 -0700 Clean up a failed merge and implement stub for new API in MediaPlayerBase. commit f0e9d494a4c03402ea7b54891848ca5a50c421b2 Author: Andreas Huber <andih@google.com> Date: Fri Jun 12 15:38:03 2009 -0700 Support yuv420->rgb565 conversion if hardware color conversion is unavailable. commit 87223248b3099cd5261b94169f84cfd1eba56a8f Author: Andreas Huber <andih@google.com> Date: Fri Jun 12 09:35:56 2009 -0700 Remove unimplemented and currently unnecessary blocking option from MediaSource::ReadOptions. commit e07e651f0325892b797f3eb64dbeca0f317afdfd Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 16:26:42 2009 -0700 Enable assertions in HTTPDataSource. commit 0dc97adebea1721156880f4b3d5c70f8d50c53b2 Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 12:34:39 2009 -0700 delete foo. commit 7f05845dda496e7defee284d32509d127e785784 Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 12:34:08 2009 -0700 added foo. commit e432970c51eeec4e5d549bdb3e2d3e48ffb4f0e7 Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 11:44:31 2009 -0700 Make sure to initialize all fields in _all_ constructors... Use a Mutex instead of the raw pthread_mutex_t. commit d6286a6bbca639952491448fa3e609b775a8a814 Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 17:11:49 2009 -0700 send_command is now implemented twice... ugly hack to get both shutdown working correctly and startup as well... playback now "works" on the emulator, too. commit 8d657e004677a7c5dae4479e8519bcaa94c18aad Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 11:58:55 2009 -0700 Instead of erasing codec specific data once it's been output to the omx node, retain the data and just rewind after a stop. commit 279fede6ba35cbc37c35616c53406bf2c9720202 Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 10:58:11 2009 -0700 Various fixes related to play/pause. Decoder now properly frees OMXMediaBuffers, made MemoryDealer destructor protected instead of public to prevent accidental stack-allocation of MemoryDealer objects. commit 0f717f15a6328efd3f34082929cd8ad2351095a9 Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 08:44:12 2009 -0700 Make sure to rewind codec specific data on OMXDecoder::stop and reset AudioPlayer's notion of time mapping. commit 0cfb63e33270daf9b215214608ab383f93a31823 Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 14:25:48 2009 -0700 Massive rename. commit 30ed8f476c4431a5275538958b3e281bd17d5eab Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 13:52:41 2009 -0700 send_command and fill/empty buffer commands must be executed in sequence, send_command is now dispatched over the socket instead of through the binder interface to ensure this. commit b832d04011b2dd8a9632eb7e575bfe1addd1270d Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 10:21:17 2009 -0700 MediaBuffers can now be "clone()", they sit on top of the same data but have their own range and metadata. Once a clone's refcount drops to 0 it decrements the refcount on the original buffer. commit 4e944672808bdf1ed40a69f3f602f93ebf7b4049 Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 10:01:01 2009 -0700 Split MediaBuffer.h into MediaBufferGroup.h and MediaBuffer.h, same with their respective source files. commit ddb7529b4de4828db51432bd405fddd76cfa3b6a Author: Andreas Huber <andih@google.com> Date: Fri Jun 5 16:30:25 2009 -0700 More fudging with A/V sync... commit 1e5a4d8df08237b58c06c6527a33152ae931addf Author: Andreas Huber <andih@google.com> Date: Fri Jun 5 11:54:20 2009 -0700 API cleanup of MediaSource. Got rid of MediaRing as it really doesn't serve a purpose if OMX decoders are used. commit 0953c65232aa9753d17d2e25c5f5526eb810cf13 Author: Andreas Huber <andih@google.com> Date: Thu Jun 4 16:59:19 2009 -0700 Experimental TimedEventQueue and an attempt at a cleaner player implementation using it, OMXDecoder is now a little less verbose. commit 2085b8ea9484a21fa11f94194a27405d413aeecc Author: Andreas Huber <andih@google.com> Date: Thu Jun 4 10:17:01 2009 -0700 Properly bail out of the AV sync loop if the MediaPlayerImpl is stopped. commit 471f143458a8a0d93cb1bf9568c63c3967279dc6 Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 17:32:27 2009 -0700 Now this is much better AV sync, defer seeking the audio source until we know where the video source synced to. commit 4010d371dbe62ce4971e13437776cba32cb0bb3d Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 16:01:07 2009 -0700 Tweaked some of the heuristics in AV sync, OMXDecoder is now a little less verbose, seek to a sync sample at or _after_ the requested position. commit f3d4af1d5a4ac31fa02271b000f6c7ec593f0da9 Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 15:33:58 2009 -0700 Change the TimeSource interface's APIs, prefer microseconds over milliseconds now, changed the way MediaPlayerImpl does AV sync. commit 08bb46fa61d12e852a424698ddb0c90700328f6e Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 11:57:24 2009 -0700 Using framework's Mutex and Condition classes instead of pthread functions, much saner locking in OMXDecoder. commit 4d77b4e09e59bbf8c1af009ae7dc62b10af52fd6 Author: Andreas Huber <andih@google.com> Date: Tue Jun 2 17:12:03 2009 -0700 MediaSources now publish their format. commit 7e429a26c57bf936e1a08035d2d11839f9f00310 Author: Andreas Huber <andih@google.com> Date: Tue Jun 2 16:38:29 2009 -0700 MetaData is now implemented in terms of KeyedVector, MetaData is now reference counted. commit 0fa957aa5c9bcb6ec122ed7b5b97430039be6797 Author: Andreas Huber <andih@google.com> Date: Mon Jun 1 14:39:55 2009 -0700 Sync sample seek support. commit 78a5f090d02e7e6e1a146b29bdb7771eecaa2f86 Author: Andreas Huber <andih@google.com> Date: Mon Jun 1 13:51:11 2009 -0700 Distinguish shutdown from port-flush since one requires buffers to be freed and the other one doesn't. Fixes a problem with seek. commit e57781d3b2c985a74cd8b60e7c8f2d576459d038 Author: Andreas Huber <andih@google.com> Date: Mon Jun 1 10:52:20 2009 -0700 First shot at support for seeking a MediaSource. Sync frames are not properly handled yet. commit 0551cd78fda78bf66877fb26c5a55e5ae23d8367 Author: Andreas Huber <andih@google.com> Date: Thu May 28 16:23:38 2009 -0700 Preliminary support for camera input. commit f8ebafa65d10d5a06944de6b2e2992a33121b857 Author: Andreas Huber <andih@google.com> Date: Thu May 28 12:13:47 2009 -0700 Allow NativeMediaPlayer access to Surface's getISurface() method. commit b1a9fb36eeccd9f49d28c1c64b31fccbd6506eeb Author: Andreas Huber <andih@google.com> Date: Thu May 28 11:38:25 2009 -0700 Header files are now in their own genesis2 hierarchy below frameworks/base/include. commit f49b8b234b8f6ce83148787eef540dd920f04aa6 Author: Andreas Huber <andih@google.com> Date: Thu May 28 11:22:03 2009 -0700 moved MPEG4Writer into libgenesis2. commit 5224254919dac4728677335ea60429fa16f518b4 Author: Andreas Huber <andih@google.com> Date: Thu May 28 11:13:38 2009 -0700 Everything now lives in the android namespace, integrated errors with android errors, renamed MediaPlayer to MediaPlayerImpl. commit f9a9d84f7e0465ef5d1938a068655ba39527cf99 Author: Andreas Huber <andih@google.com> Date: Wed May 27 16:43:11 2009 -0700 Support for getPosition() and getDuration(). commit 3206cc5140bcbc88be039f8d94b954af63e69752 Author: Andreas Huber <andih@google.com> Date: Wed May 27 15:37:45 2009 -0700 Support for {MediaPlayer, GenesisPlayer, Genesis2Player}::isPlaying() commit 9f41b248e0dfce71bbc50f883750cec52ebfd1fe Author: Andreas Huber <andih@google.com> Date: Wed May 27 13:49:50 2009 -0700 Proper disconnection from the OMX service. commit cdcf47a2c31599109ee42277c7fa14af3c600091 Author: Andreas Huber <andih@google.com> Date: Tue May 26 17:27:06 2009 -0700 New player type for the genesis player in libmediaplayerservice. Playing video through an ISurface now. commit 0586af20ac9ae0403dd190bafd290b0f90549723 Author: Andreas Huber <andih@google.com> Date: Fri May 22 15:53:19 2009 -0700 Fix a buffer overflow error by adding padding in case we need to de-frame AVC data. commit eac62fff6ad2ffb7b75c0d4a1b9620d33e93fb9b Author: Andreas Huber <andih@google.com> Date: Fri May 22 13:35:30 2009 -0700 Support for http URIs in MediaPlayer, compensate for AudioTrack latency. commit a7db456e3173d94d6b5e457547e2a6a5f7a8e1cc Author: Andreas Huber <andih@google.com> Date: Fri May 22 11:33:25 2009 -0700 Support for URIs in MediaPlayer class, support for shoutcast streams in MediaPlayer, force shutdown of OMX nodes if they don't shutdown cleanly within a second. commit 1f0268f4f14ad5215668f34e06a420850174d665 Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:33:16 2009 -0700 and foo.txt is gone again. commit 0feca4e0919f345704d78ec78894bac5027bd5ed Author: Andreas Huber <andih@dhcp-172-19-27-148.mtv.corp.google.com> Date: Fri May 22 08:28:49 2009 -0700 added foo.txt commit 9c7d04b35cdc895a2de3602dc46522f608bd205f Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:28:04 2009 -0700 delete foo again commit fec3ca1720992cce51b9a92b86b945da88a6b16c Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:27:45 2009 -0700 weird commit 30a6571302333146e537e537a3a8986245cca87c Author: Andreas Huber <andih@dhcp-172-19-27-148.mtv.corp.google.com> Date: Fri May 22 08:18:55 2009 -0700 reverse test commit dea3d99dd0fe9386e8a3c51954d9d0fe2be09d38 Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:18:22 2009 -0700 test commit a9eeafec6e46072cac41e54ebdbd153cb7ae7518 Author: Andreas Huber <andih@google.com> Date: Thu May 21 16:37:50 2009 -0700 Use the video ring again for now. commit e05ff3d3c1c4f89ef499a2b172138a775fd694e3 Author: Andreas Huber <andih@google.com> Date: Thu May 21 15:42:19 2009 -0700 Export to .mp4 now works for MPEG4 video content. Fixed a bug in the sample table wrt co64 chunks. commit 5c44c540374a4e50c4e8aaab2b7a34aed6e1391e Author: Andreas Huber <andih@google.com> Date: Thu May 21 09:56:11 2009 -0700 Fix the build, all binder-related headers have moved and there's a new library libbinde r to link against now. commit 23e0a24404d16c898c2c6b3c7495ad303844bc71 Author: Andreas Huber <andih@google.com> Date: Thu May 21 08:42:04 2009 -0700 Initial checkin of MPEG4Writer, a class to export media sources into an mpeg4 file. MPEG4/AVC metadata (efss & friends) not currently working. commit 9cd77adb1ac194197364ffad00a0d7215f458e1a Author: Andreas Huber <andih@google.com> Date: Wed May 20 12:31:45 2009 -0700 New shell command to test recording/encoding. Various changes to OMXDecoder to support encoding properly. Now each OMXDecoder needs a dedicated thread on the client side since onEvent responses could block which would cause deadlocks if a node depends on the output of another node for example. commit 5c510fb55ffed7ec25305999ed9b6c1eec48d503 Author: Andreas Huber <andih@google.com> Date: Mon May 18 15:40:06 2009 -0700 Make media decoding the default in the genesis2 commandline app instead of shoutcast playback. commit f6c7a2040b8eb43326621f12c3a936e09b3a70e3 Author: Andreas Huber <andih@google.com> Date: Mon May 18 11:03:04 2009 -0700 The king is dead, long live the kind... Replaced old OMX binder interface with new OMX binder interface/socket hybrid. commit 0d4955eb5df9bfafb576d22f2ed572644d6d69ac Author: Andreas Huber <andih@google.com> Date: Thu May 14 12:39:34 2009 -0700 dynamic negotiation of NAL framing with the MPEG4Source, removed stale code from genesis2 commandline tool. Enable support form PV H264 software decoder. commit 380369f54a8027cbc9349305184d6bf527a24efe Author: Andreas Huber <andih@google.com> Date: Wed May 13 17:32:00 2009 -0700 Explore the option of running everything inside the mediaserver process by encapsulating the player in an IGenesisPlayer binder interface. commit b5cada56b9089a23e0c461352a97dc71e08b424d Author: Andreas Huber <andih@google.com> Date: Wed May 13 12:11:06 2009 -0700 Introduction of TimeSource class, clean shutdown of OMX Nodes. commit 89f6e582e605dcb2149eb67f73fe9345d4b9be2e Author: Andreas Huber <andih@google.com> Date: Tue May 12 17:11:56 2009 -0700 Helper classes MediaRing and MediaPlayer. commit 9aaed8739b4bb941473da367fb88f63224d2f1b7 Author: Andreas Huber <andih@google.com> Date: Tue May 12 14:19:18 2009 -0700 Using mmap to map a file instead of going through FILE* improves performance, who knew? commit ad097a78bbd002c59193ffdc39b64935928426c7 Author: Andreas Huber <andih@google.com> Date: Mon May 11 16:42:42 2009 -0700 Added a performance test, refactored AudioDecoder a little. commit bdd1b80ab3f3ba43e04f1f996e7fa84ed2e2728a Author: Andreas Huber <andih@google.com> Date: Fri May 8 16:19:29 2009 -0700 No more copying the output buffers coming out of the decoder, NAL separation also done in the extractor to avoid copying the data. commit 858955b42c29b8033841a8caaa56c2a449810ef3 Author: Andreas Huber <andih@google.com> Date: Fri May 8 14:02:38 2009 -0700 Change from a model in which the caller specifies the destination buffer to one where the MediaSource returns a buffer. commit 95098b6d4f8bdc37dfb6a109ca58db4d9e414e2d Author: Andreas Huber <andih@google.com> Date: Fri May 8 13:21:45 2009 -0700 Changes to support multiple pieces of codec specific data to the decoder, de-frame nal units from the h.264 stream and insert start codes commit 3941fcf87a48dda81683df727dfb1381f62d9184 Author: Andreas Huber <andih@google.com> Date: Thu May 7 16:37:45 2009 -0700 some refactoring. Most streams play now. commit d3152862840d4dd39068e5197bec8674f3d55dd5 Author: Andreas Huber <andih@google.com> Date: Thu May 7 15:37:32 2009 -0700 Misc. changes to support H264 decoding using the qcom hardware decoder commit d4ecdfe7af36e7468270d1c2cbbdc540efe0351e Author: Andreas Huber <andih@google.com> Date: Thu May 7 09:28:18 2009 -0700 Timestamps are now stored as a fraction, i.e. units and scale, also, PV appears to violate OMX specs by assuming timestamps are in milliseconds instead of microseconds. commit fe6a50943f885e065d4061aa727a54417e9f36db Author: Andreas Huber <andih@google.com> Date: Wed May 6 14:18:27 2009 -0700 Refactored commandline app instantiation of the decoder. commit da1ff2724d0e78e8b360d9a2c34c55dd0e2c0492 Author: Andreas Huber <andih@google.com> Date: Wed May 6 10:41:14 2009 -0700 Proper audio/video synchronization. commit 569ee3a23f600f4b6b87c6178c0223b06e97f201 Author: Andreas Huber <andih@google.com> Date: Wed May 6 09:17:20 2009 -0700 Preliminary support for timestamps. commit e4e302a89207550d8a7170d8c0afbd9c15047c84 Author: Andreas Huber <andih@google.com> Date: Tue May 5 15:13:12 2009 -0700 Another quick hack job to make CachingDataSource thread-safe as well. commit dfb376a58bd7c09aa04e89558186fcfe13fe696c Author: Andreas Huber <andih@google.com> Date: Tue May 5 15:08:14 2009 -0700 Quick rushjob to make FileSource and SampleTable thread safe. commit 02b29e7ebdab1f8b959b6c177ceb3b89d998f375 Author: Andreas Huber <andih@google.com> Date: Mon May 4 17:22:04 2009 -0700 Made video decoding work for mpeg4/h263 and mostly(?) with AVC content. commit 3a57b8ff15e48f5a0af03bf0a99c32e240dbb7ef Author: Andreas Huber <andih@google.com> Date: Mon May 4 09:26:42 2009 -0700 Getting rid of old sample code to drive the OMXNode binder interface. commit 5b046aed0cf524a57ea711bc1e43ea80e57b2cb3 Author: Andreas Huber <andih@google.com> Date: Fri May 1 16:21:11 2009 -0700 Moved files from the commandline utility into the framework, renamed MP3Decoder to AudioDecoder commit 7f3fbba21512a078b732cc52c7bd5ba5acb9a317 Author: Andreas Huber <andih@google.com> Date: Fri May 1 15:56:19 2009 -0700 Fixed buffer ordering and an off-by-1 error in the SampleTable code. Plays all AACs now :) commit 024d06baab8f2c540dde16f7e7a4b6dd57f638c7 Author: Andreas Huber <andih@google.com> Date: Fri May 1 11:52:48 2009 -0700 Some AAC content in .3gp or .mp4 files plays correctly now, other does not. Implemented ESFS parser. commit 1470427866b0d3e0ce6848b4edc01c13a09be289 Author: Andreas Huber <andih@google.com> Date: Thu Apr 30 15:19:31 2009 -0700 Another checkpoint, amr decoding now functional. commit e612d044439f56331b6a2bc4a88622e04d4d42e7 Author: Andreas Huber <andih@google.com> Date: Wed Apr 29 12:11:29 2009 -0700 string wrapper around String8, various fixes, shoutcast now works again. commit 2ea52dfb1a39bf3a223ffc87855e54919e2daff7 Author: Andreas Huber <andih@google.com> Date: Wed Apr 29 11:08:18 2009 -0700 Initial check-in of OMXNode binder interface. commit 7880d2957f74c0d7fba7679431ff5adb3780543b Author: Andreas Huber <andih@google.com> Date: Wed Apr 29 10:05:01 2009 -0700 Initial check-in of both libgenesis2 and the genesis2 commandline tool.
ndroid.mk
MediaPlayerService.cpp
OMX.cpp
|
a25f0fcebaa9fcb550ae2ccd5913085ae48b1018 |
15-Jul-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 7067 * changes: add a ctor to Mutex to specify the type, which can be shared. This is used by sf and af an soon will allow some optimization in the kernel for non shared mutexes
|
2b50fba2b143c2e0597c941d67bea1b8e80c9caf |
14-Jul-2009 |
Mathias Agopian <mathias@google.com> |
first attempt to fix the sim
ndroid.mk
|
b07c28b90b2d2793be2b8878d813b607f3eebbb7 |
14-Jul-2009 |
Mathias Agopian <mathias@google.com> |
add a ctor to Mutex to specify the type, which can be shared. This is used by sf and af an soon will allow some optimization in the kernel for non shared mutexes
udioTrack.cpp
|
aa37173500f221298fa618b5ca8b4814aff5ef31 |
10-Jul-2009 |
Marco Nelissen <marcone@google.com> |
Don't pass references to temporary objects, and handle the case where we dont have a Surface.
ediaplayer.cpp
|
8e1b6cce24574b9ecd5b0300155776bd0b4ef756 |
09-Jul-2009 |
Nicolas Catania <niko@google.com> |
Basic plumbing to retrieve metadata from the native player. IMediaPlayer.h Added a getMetadata method that mirrors the on in MediaPlayer.java. MediaPlayer.java Added a native method to get the metadata from the native player. Parse the parcel into a Metadata object. Metadata.java Added a stub to parse the Parcel returned by the native player into a set of metadata. android_media_MediaPlayer.cpp JNI call to forward the getMetadata call. MediaPlayerService.cpp MediaPlayerService::Client implements the new getMetadata method added in IMediaPlayer.h
MediaPlayer.cpp
ediaplayer.cpp
|
a920ee99dc97b54b661d1238d8c26ac07c875bed |
09-Jul-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 6636 * changes: Implemented the metadata changed notification filters.
|
699f095c05229c5f3d21c54d55698de4f30eaa35 |
09-Jul-2009 |
Eric Laurent <elaurent@google.com> |
am 5964e737: Fix issue 1946033: dialer deadlocks and/or ANRs when using dialpad in-call Merge commit '5964e73774b381748013b91d04dfb6fc60f533ee' * commit '5964e73774b381748013b91d04dfb6fc60f533ee': Fix issue 1946033: dialer deadlocks and/or ANRs when using dialpad in-call
|
a7e0e8b4c429fc68eb1bd5b5a30f5b91352288f9 |
08-Jul-2009 |
Nicolas Catania <niko@google.com> |
Implemented the metadata changed notification filters. IMediaPlayer: new setMetadataFilter method so set a filter (2 lists of allowed and blocked metadata type) serialized in a Parcel. MediaPlayer.java/android_media_MediaPlayer.cpp/mediaplayer.cpp new setMetadataFilter that passes the filter down to the MediaPlayerService's binder interface. MediaPlayerService.cpp The Client inner class holds the allowed and blocked metadata types. These are in 2 vectors that get populated in the setMetadataFilter. A new shourldDropMetadata method returns true if a type of metadata should be dropped according to the filters. The notify method in run the metadata update notifications thru the filter and possibly drop them.
MediaPlayer.cpp
ediaplayer.cpp
|
c38bb0614dc0b5dee682b9a1de47de5ae7d215d8 |
09-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1946033: dialer deadlocks and/or ANRs when using dialpad in-call The cause is very likely that the WaveGenerator *lpWaveGen returned by lpToneGen->mWaveGens.valueFor(lFrequency) just before calling lpWaveGen->getSamples(lpOut, lGenSmp, lWaveCmd) is invalid. The frequency lFrequency is not part of the frequencies in mWaveGens. This can happen if a different tone is started while the callback function is active: The state is changed to TONE_RESTARTING and the call to prepareWave() at line 1226 will change the tone descriptor pointed to by mpToneDesc as well as the content of mWaveGens. However, mpToneDesc was cached in a local variable lpToneDesc when entering the callback and is not reloaded when exiting prepareWave(). This causes a mismatch between the tone frequencies listed in lpToneDesc and the frequencies present in mWaveGens. This regression was introduced in change 973 when mpToneDesc was cached in a local variable.
oneGenerator.cpp
|
349dba337e07e129f6ba49a132999f0b73fedbe3 |
07-Jul-2009 |
Eric Laurent <elaurent@google.com> |
am 88e209dc: Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR Merge commit '88e209dcf8c2ebddda5c272f46d1bd5478bc639c' * commit '88e209dcf8c2ebddda5c272f46d1bd5478bc639c': Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR
|
573266210fb2b2e7d86fbd46d0dfe16763611d91 |
07-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR Store sample rate on 32 bits instead of 16 bits in audio_track_cblk_t. Removed sampleRate() methods from AudioTrack and AudioRecord: replaced by getSampleRate(). AudioTrack::setSampleRate() no returns a status.
udioRecord.cpp
udioTrack.cpp
|
1d187f1a86855f5f0694d7ec30efc9833bf7c589 |
13-May-2009 |
Nicolas Catania <niko@google.com> |
Direct api to the native media player. MediaPlayer.java has 3 new methods: * newRequest creates a Parcel that can be used to send data to the native player using invoke. * invoke issues synchronous calls to the native player using opaque parcels for the request and reply. IMediaPlayer.h has 1 new abstract method: * invoke The Midi and Vorbis players have a stub for these. So far only PV makes use of that new feature. To avoid any copy overhead, the JNI interface uses Parcel as a java object (no serialization/copy happens at the JNI layer). The remote interface token is inserted when the Parcel is constructed in java. That way the parcel is already routable when it reaches IMediaPlayer.cpp (proxy). No extra copy is needed there.
MediaPlayer.cpp
MediaPlayerService.cpp
ediaplayer.cpp
|
3d59a4b99937a7d0dc07eec2574cc8a98cc99fdd |
23-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am 1bee98af: Merge change 5100 into donut Merge commit '1bee98af6532eba3c6cda636eee890530c95a2a7' * commit '1bee98af6532eba3c6cda636eee890530c95a2a7': Fill in CDMA gaps and clean up ToneGenerator code
|
5e0a3043af16bc71a4211ee00dc00724de6623a7 |
17-Jun-2009 |
David Krause <david.krause@motorola.com> |
Fill in CDMA gaps and clean up ToneGenerator code
oneGenerator.cpp
|
56f0cc533a38bdb84bc03adcb43515614ab21bae |
22-Jun-2009 |
niko <niko@google.com> |
Renamed all android.hardware.IMedia* strings to android.media.IMedia* The android.hardware.ICamera string have not been changed (but is looks like the camera service and client one should undergo the same procedure) The implementation of the interface must provide a unique string for it's interface name. Currently all these strings in the media framework start with 'android.hardware' when it should really be 'android.media', the interface token has nothing to do with hardware.
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
|
4710a1f6c9800dae90f9e2702ba2b5b54c095eae |
12-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am d670b8c6: Merge change 3981 into donut Merge commit 'd670b8c61ebd13324ac21bdbc08d8a02fc0a765a' * commit 'd670b8c61ebd13324ac21bdbc08d8a02fc0a765a': Removed trailing whitespaces.
|
660951867e959ebe98612742ef1f72d33ea7e9a3 |
12-Jun-2009 |
Nicolas Catania <niko@google.com> |
Removed trailing whitespaces.
MediaPlayerService.cpp
ediaplayer.cpp
|
2a7d5b3c1a3749db7c4ace34bf1253c44967e843 |
09-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am b2df1699: Merge change 1548 into donut Merge commit 'b2df1699c996e62baa78877978cd2c5607ea4194' * commit 'b2df1699c996e62baa78877978cd2c5607ea4194': NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).
|
9747c5a1f5e51fab72169767972bf55f73711000 |
08-Jun-2009 |
Jianhong Jiang <jianhong@google.com> |
NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).
ediarecorder.cpp
|
489d60ec36c3927c9ee0bc14a44c1c77b74c09f6 |
27-May-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am f3288f17: Merge change 2468 into donut Merge commit 'f3288f178ae2b2c7910b234f54f43475a83eb860' * commit 'f3288f178ae2b2c7910b234f54f43475a83eb860': setVolume did not check interface descriptor
|
b7056fc8525e0515c6f46676e3307088f8b64cdc |
23-May-2009 |
Mathias Agopian <mathias@google.com> |
some work to try to reduce the code size of some native libraries - make sure that all binder Bn classes define a ctor and dtor in their respective library. This avoids duplication of the ctor/dtor in libraries where these objects are instantiated. This is also cleaner, should we want these ctor/dtor to do something one day. - same change as above for some Bp classes and various other non-binder classes - moved the definition of CHECK_INTERFACE() in IInterface.h instead of having it everywhere. - improved the CHECK_INTERFACE() macro so it calls a single method in Parcel, instead of inlining its code everywhere - IBinder::getInterfaceDescriptor() now returns a "const String16&" instead of String16, which saves calls to String16 and ~String16 - implemented a cache for BpBinder::getInterfaceDescriptor(), since this does an IPC. HOWEVER, this method never seems to be called. The cache makes BpBinder bigger, so we need to figure out if we need this method at all.
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
|
172fb9ab347e146642234f0bd6f223d351e9fd0b |
26-May-2009 |
Dave Sparks <davidsparks@android.com> |
setVolume did not check interface descriptor DO NOT MERGE
MediaPlayer.cpp
|
95634c8b6ad5419e310a5196bcc37f5988ed82da |
26-May-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am de8268d6: Merge change 2331 into donut Merge commit 'de8268d6d1cd168510c490b17e93154d2eab767c' * commit 'de8268d6d1cd168510c490b17e93154d2eab767c': Fix issue 1846343 - part 1
|
f5879c1448cc6aebc51b26d3ec2399d66144f8f4 |
22-May-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1846343 - part 1 This change is the first part of a fix for issue 1846343, : - Added new enum values for input sources in AudioRecord and MediaRecorder for voice uplink, downlink and uplink+downlink sources. - renamed streamType to inputSource in all native functions handling audio record. A second change is required in opencore author driver and android audio input to completely fix the issue.
udioRecord.cpp
AudioFlinger.cpp
|
7562408b2261d38415453378b6188f74fda99d88 |
20-May-2009 |
Mathias Agopian <mathias@google.com> |
move libbinder's header files under includes/binder
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
615a9bfbd98b90e09d868c128db84836feb658e4 |
19-May-2009 |
Mathias Agopian <mathias@google.com> |
checkpoint: split libutils into libutils + libbinder
ndroid.mk
|
4afdfa7fd7e9fe59fb298ef2ac252686e68bc73a |
07-May-2009 |
Dave Sparks <davidsparks@android.com> |
Don't allow negative numbers in ToneGenerator toneType parameter Bug 1836596
oneGenerator.cpp
|
0b62e242d112d46e9357242b0a4e11c720c98ca0 |
05-May-2009 |
Eric Laurent <elaurent@google.com> |
Fixed issue 1709450: Requirements for CDMA Tone Generator Added new tone types for CDMA IS-95 specific tones. Automatic selection between IS-95, CEPT and JAPAN version base on operator country code for call supervisory tones. Also improved tone generator capabilities: - Each tone segment can now generate its own set of frequencies - A tone does not have to be a succession of alternating ON/OFF segments - The sequence repetition does not have to start from first segment
oneGenerator.cpp
|
1dd70b9f04961a06fcb73a97fca10a53b3245d3c |
21-Apr-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1745312: Various cleanups in media framework AudioTrack, AudioRecord: - remove useless mAudioFlinger member of AudioTrack and AudioRecord. - signal cblk.cv condition in stop() method to speed up stop completion. - extend wait condition timeout in obtainBuffer() when waitCount is -1 to avoid waking up callback thread unnecessarily AudioFlinger: - remove some warnings in AudioFlinger.cpp. - remove function AudioFlinger::MixerThread::removetrack_l() as its content is never executed. - remove useless call to setMasterVolume in AudioFlinger::handleForcedSpeakerRoute(). - Offset VOICE_CALL stream volume to reflect actual volume that is never 0 in hardware (this fix has been made in the open source): 0.01 + v * 0.99. AudioSystem.java: - correct typo in comment IAudioflinger, IAudioFlingerClient: - make AudioFlinger binder interfaces used for callbacks ONEWAY. AudioHardwareInterface: - correct routeStrings[] table in AudioHardwareInteface.cpp
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
|
ce80c82f58378da72d8a36f520c781cc5cac18a1 |
01-Apr-2009 |
Eric Laurent <> |
AI 144054: am: CL 144053 Fix issue #1751242 A2DP playback fails first time: Invalid buffer size: minFrameCount 10240, frameCount 4800 The problem comes from the fact that AudioSystem::getOutputFrameCount() calls getOutput() to retrieve the active output (A2DP or Hardware) before calling get_audio_flinger(). If it is the first time AudioSystem::getOutputFrameCount() is called in a given process, getOutput() will return a wrong value because gA2dpEnabled has not yet been updated by get_audio_flinger(). The fix consists in calling get_audio_flinger() in getOutput() to be sure that gA2dpEnabled is valid when getOutput() reads it. Original author: elaurent Merged from: //branches/cupcake/... Automated import of CL 144054
udioSystem.cpp
|
cd6725a333395ffeac3215ea4bf834a95aaa8def |
25-Mar-2009 |
Eric Laurent <> |
Automated import from //branches/donutburger/...@142065,142065
udioRecord.cpp
|
4003bf5e4cd948fe7732c16b2a683acdbfa8c44d |
25-Mar-2009 |
Andreas Huber <> |
Automated import from //branches/donutburger/...@141711,141711
ediaplayer.cpp
|
7d563247cdac0509009d579bbf849157d47c38a9 |
25-Mar-2009 |
Jean-Michel Trivi <> |
Automated import from //branches/donutburger/...@141200,141200
udioRecord.cpp
|
158857d5a6bb93aa6a135a338f9b6389e0f2b3a5 |
25-Mar-2009 |
Jean-Michel Trivi <> |
Automated import from //branches/donutburger/...@140867,140867
etPlayer.cpp
|
7dc112527d77b675d5c0451502b33fe2c552a79e |
25-Mar-2009 |
Jason Sams <> |
Automated import from //branches/donutburger/...@140866,140866
ediaplayer.cpp
|
2c22aeb65e801f663a754d043062f85e49f77739 |
25-Mar-2009 |
Jean-Michel Trivi <> |
Automated import from //branches/donutburger/...@140663,140663
udioTrack.cpp
|
1179bc9b0e3d17c984e8f4ad38561c049dd102fa |
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@140373
udioTrack.cpp
etPlayer.cpp
ediarecorder.cpp
|
c048cae0367db6fbb4fe1127be5011910713d4ad |
13-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@138607
MediaRecorder.cpp
ediarecorder.cpp
|
65e731f393f704eedab6fbe0af7f8a580c8d4617 |
11-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137873
ediaplayer.cpp
ediarecorder.cpp
|
8365529381f6284f2d59dcc38e26f73adeec9c67 |
09-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137197
oneGenerator.cpp
|
8555d0867c3e8fe6cc5c7ad40af557fe6b92fa72 |
05-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@136594
udioTrack.cpp
ediarecorder.cpp
|
89fa4ad53f2f4d57adbc97ae1149fc00c9b6f3c5 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
etPlayer.cpp
ODULE_LICENSE_APACHE2
OTICE
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
15f767b960b38059a74a42a33e16d8df2aec8bc1 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
etPlayer.cpp
ODULE_LICENSE_APACHE2
OTICE
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
ad04d9201452001dbaac4349f084cc9316190b89 |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@132589
udioRecord.cpp
udioTrack.cpp
MediaRecorder.cpp
ediarecorder.cpp
|
99ffda877980468a9ae31e013cd10fb3645df1b0 |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@137055
udioRecord.cpp
udioTrack.cpp
MediaRecorder.cpp
ediarecorder.cpp
|
925a349b45d1d16eaaca6a1f4827191831271ca0 |
20-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@132569
udioRecord.cpp
oneGenerator.cpp
|
25658fd43d150a45fb37734a9f9f27f48bb5c133 |
19-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@132276
udioTrack.cpp
etPlayer.cpp
|
7a2146d5807030b2629f347736be5301b61e8811 |
13-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@131421
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
MediaRecorder.cpp
etPlayer.cpp
oneGenerator.cpp
ediaplayer.cpp
ediarecorder.cpp
|
5e07b5774c8b376776caa4f5b0a193767697e97e |
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
etPlayer.cpp
oneGenerator.cpp
ediaplayer.cpp
|
e5198b620a9a208ec59ea8457282404725f8ff6e |
20-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127101
udioRecord.cpp
udioTrack.cpp
|
cce8bd12da6d8419a8770e4552a51ec297c250c2 |
10-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@125939
ndroid.mk
udioTrack.cpp
MediaMetadataRetriever.cpp
etPlayer.cpp
oneGenerator.cpp
ediarecorder.cpp
|
7b5eb023f8d87cca6d830ae6c11c6aadbe02aca8 |
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
2729ea9262ca60d93047e984739887cfc89e82eb |
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
ODULE_LICENSE_APACHE2
OTICE
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
|