OSDN Git Service
Glenn Kasten [Mon, 3 Oct 2011 23:02:25 +0000 (16:02 -0700)]
Reduce log spam from callback protectors
Change-Id: I83f40370bf86878e6d8dcabfff3847cab2cbbd6c
Glenn Kasten [Mon, 3 Oct 2011 14:15:08 +0000 (07:15 -0700)]
Merge "Bug
5399251 notify on AAC decode prepare success"
Glenn Kasten [Fri, 30 Sep 2011 22:56:10 +0000 (15:56 -0700)]
Merge "Remove dead code"
Glenn Kasten [Fri, 30 Sep 2011 22:22:52 +0000 (15:22 -0700)]
Bug
5399251 notify on AAC decode prepare success
Change-Id: I35715be7812c6fe671f74afb7a92ebe60b4a6710
Glenn Kasten [Fri, 30 Sep 2011 15:07:04 +0000 (08:07 -0700)]
Merge "Bug
5334969 MediaPlayerNotificationClient safety"
Glenn Kasten [Wed, 28 Sep 2011 00:02:37 +0000 (17:02 -0700)]
Remove dead code
Change-Id: Ic68d4d7b942ef99120ad30ee3ef7ce48ff1d697a
Eino-Ville Talvala [Wed, 14 Sep 2011 19:09:38 +0000 (12:09 -0700)]
Relax format checking in BackDropperFilter.
This format check should restrict to GPUs, but to allow source filters with
initially unspecified targets to connect to the filter, relax the check to
be any target.
Bug:
5299669
Change-Id: I1a54be793c68ac81dd36b111daf8d463c7d1e486
Glenn Kasten [Fri, 16 Sep 2011 22:36:21 +0000 (15:36 -0700)]
Remove dead code
AudioPlayback_Parameters fields trackcb and trackcbUser
audioTrack_callBack_uri
android_Player_androidBufferQueue_registerCallback_l
GenericPlayer field mLooperPriority
StreamPlayer::registerQueueCallback
CAudioPlayer::mpLock
AudioSfDecoder::startPrefetch_async
IAndroidBufferQueue does not support AudioRecorder object
android/BufferQueueSource.h #include
Change-Id: I9d7cef243167e10279df452e7c62e66d8f5fe3b6
Glenn Kasten [Tue, 27 Sep 2011 16:18:39 +0000 (09:18 -0700)]
Merge "Use prefetch for error handling in mutesolo test"
Glenn Kasten [Tue, 27 Sep 2011 16:06:17 +0000 (09:06 -0700)]
Merge "AAC decoder test"
Glenn Kasten [Mon, 13 Jun 2011 18:28:45 +0000 (11:28 -0700)]
Use prefetch for error handling in mutesolo test
Change-Id: I526da804bd7f47b124d0aff3a47b1888fde3642f
Glenn Kasten [Fri, 2 Sep 2011 20:06:57 +0000 (13:06 -0700)]
AAC decoder test
Record and display statistics on AAC frame sizes.
Record and display the number of buffer queue completions.
Make it optional whether to create a .raw file with PCM data.
Enable and display play events: HEADATMARKER and HEADATNEWPOS.
Add option to pause in middle of decoding.
Change-Id: Iaaa37337260cd061a13f942f6b5c07d7611b13a7
Glenn Kasten [Tue, 27 Sep 2011 15:21:01 +0000 (08:21 -0700)]
Merge "Check result of GetFillLevel and GetPrefetchStatus"
Glenn Kasten [Tue, 27 Sep 2011 14:59:03 +0000 (07:59 -0700)]
Merge "Return after prefetch error in get position test"
Glenn Kasten [Tue, 27 Sep 2011 14:25:26 +0000 (07:25 -0700)]
Merge "Decode to buffer queue test updates"
Glenn Kasten [Mon, 26 Sep 2011 18:25:11 +0000 (11:25 -0700)]
Merge "Bug
5365486 GetVideoDecoderCapabilities"
Glenn Kasten [Wed, 21 Sep 2011 16:03:14 +0000 (09:03 -0700)]
Bug
5369977 check required interface compatibility
Use required not exposed in checkSourceSinkVsInterfacesCompatibility.
Change-Id: Ib71826b989ddef2e87dd60bec0306ca2a4021fe3
Glenn Kasten [Mon, 22 Aug 2011 15:23:44 +0000 (08:23 -0700)]
Check result of GetFillLevel and GetPrefetchStatus
Change-Id: I07e962526215cbfe6ecf39bd8d0029e2b345bef3
Glenn Kasten [Fri, 29 Jul 2011 19:56:08 +0000 (12:56 -0700)]
Return after prefetch error in get position test
Change-Id: I7de1ddd05e4d2115dc54215d62f8af76f6c352ff
Glenn Kasten [Fri, 2 Sep 2011 22:41:23 +0000 (15:41 -0700)]
Decode to buffer queue test updates
Decrease frequency of decoder PCM buffer queue callback;
only display a line every 1000 PCM buffers.
Check result code returned by GetFillLevel and GetPrefetchStatus.
Share common call to GetPosition in DecProgressCallback for all HEAD* events.
Print error messages to stderr.
Change-Id: I088f7792c80693aa7742bfad36df1fada02fe1a4
Glenn Kasten [Sat, 24 Sep 2011 00:26:19 +0000 (17:26 -0700)]
Bug
5365486 GetVideoDecoderCapabilities
If OMX IL implementation reports a codec with 0 profile/level
combinations, it should not be an error for the application to query
the number of profile/level combinations.
Change-Id: I6838ba1168da70a5c5e7d5a2832ec3ee1ee9aef3
Marius Renn [Fri, 23 Sep 2011 20:52:29 +0000 (13:52 -0700)]
Merge "Fix for
5357970: Handle exceptions in AsyncRunner."
Glenn Kasten [Thu, 22 Sep 2011 20:46:23 +0000 (13:46 -0700)]
Bug
5267593 Workaround for crash at Destroy
Call IMediaPlayer->stop() from ALooper thread for now, as NuPlayerDriver
does not currently support multi-threaded clients. This fix should be
reverted after NuPlayerDriver is multi-thread safe.
Change-Id: I94dc91bdcc9f840f50c3ed831aa6e15e09a0f96e
Ruei-sung Lin [Thu, 22 Sep 2011 23:56:08 +0000 (16:56 -0700)]
Merge "parameter change according to api"
Marius Renn [Thu, 22 Sep 2011 19:28:47 +0000 (12:28 -0700)]
Fix for
5357970: Handle exceptions in AsyncRunner.
The AsyncRunner now stores exceptions that occurred during runtime, and
passes them back as part of the result. Applications can choose to throw
this exception or deal otherwise.
This affects all applications using AsyncRunners.
Change-Id: I2685e4cfc56d7984425a3c3a8a3ac8cfe83bc8d2
Glenn Kasten [Thu, 22 Sep 2011 18:44:30 +0000 (11:44 -0700)]
Merge "Use async notify everywhere"
Ruei-sung Lin [Thu, 15 Sep 2011 09:26:58 +0000 (17:26 +0800)]
parameter change according to api
Change-Id: I189cca762b80ba45b5322121b57e8c13b82a4811
Glenn Kasten [Mon, 12 Sep 2011 17:23:54 +0000 (10:23 -0700)]
Bug
5090073 Callback protectors
Add callback protector for decode to PCM usage cases.
Move callback protection up earlier for URI decode use case only.
Other:
Remove redundant mCallbackProtector field.
Optimization: on exit from callback protector, only broadcast if !mSafeToEnterCb,
that is if destroy has requested callback protectors to finish up.
More callback protector logging.
Add callback protector requestCbExit() [no wait], not yet used.
Unrelated:
3rd parameter of adecoder_writeToBufferQueue is always CAudioPlayer * instead of void *.
Change-Id: I57a46acf0e5ecb213540b13ca08098177ad7ad6e
Glenn Kasten [Wed, 21 Sep 2011 14:14:43 +0000 (07:14 -0700)]
Merge "Set mAndroidObjState to ANDROID_READY once"
Glenn Kasten [Sun, 18 Sep 2011 14:56:50 +0000 (07:56 -0700)]
Merge "Fix typo"
Glenn Kasten [Sun, 18 Sep 2011 14:56:37 +0000 (07:56 -0700)]
Merge "Move macro definition to more appropriate place"
Glenn Kasten [Fri, 16 Sep 2011 17:05:48 +0000 (10:05 -0700)]
Bug
5334969 MediaPlayerNotificationClient safety
Fixed race due to missing mutex around 2 updates to mPlayerPrepared.
MediaPlayerNotificationClient had a raw reference to GenericMediaPlayer;
if for some reason the binder thread out-lived the GenericMediaPlayer,
then it might reference a destroyed object. Made it a weak reference,
and issue warning if the GenericMediaPlayer has been destroyed.
This has similar effect as a callback protector.
Minor related:
- mHasVideo is read without mutex, safe since never changed but make it const
- GenericMediaPlayer's reference to MediaPlayerNotificationClient is now const also
Change-Id: I67b50e861a055c73fd490fb537a3d6d23d25c3d2
Glenn Kasten [Fri, 16 Sep 2011 23:24:16 +0000 (16:24 -0700)]
Use async notify everywhere
We use asynchronous notify in all places except PLAYEREVENT_PREPARED.
Since there doesn't seem to be a clear reason why this should be
different, make it be the same.
Change-Id: I0a83d4ac7a7e8e16e3404a25f081176701de01ae
Glenn Kasten [Fri, 16 Sep 2011 23:21:11 +0000 (16:21 -0700)]
Set mAndroidObjState to ANDROID_READY once
The mAndroidObjState field should only be set to ANDROID_READY once,
after prepare completes either successfully or unsuccessfully.
Remove a couple of redundant assignments.
Change-Id: I4b73bc94aea4f8d4afc1111d7fcdccce4bf8a92d
Glenn Kasten [Fri, 16 Sep 2011 21:09:54 +0000 (14:09 -0700)]
Merge "Bug
5263052 play events for decoder use case"
Glenn Kasten [Thu, 15 Sep 2011 17:54:36 +0000 (10:54 -0700)]
Bug
5263052 play events for decoder use case
This version should be more resilient to decode time vs. real time.
Miscellaneous:
- comment about GetPosition accuracy
- remove unused AudioSfDecoder::onRender implementation
Change-Id: I16a7726e0b1459ed1421fe50cb4d683d5c3bdd6b
Glenn Kasten [Mon, 12 Sep 2011 17:19:40 +0000 (10:19 -0700)]
Fix typo
Change-Id: I673830007c2533110006e88b2c344bca3adaf448
Glenn Kasten [Fri, 26 Aug 2011 16:41:05 +0000 (09:41 -0700)]
Move macro definition to more appropriate place
When sles_allinclusive.h was split up into separate files, this hunk
ended up in the wrong file. sles_allinclusive.h still needs some more
re-factoring, but that's a separate issue.
Change-Id: Iafa92c6b4d22f79b080db6ddf9078acc4296dd7b
Pannag Sanketi [Thu, 15 Sep 2011 04:23:26 +0000 (21:23 -0700)]
Fix in MFF performance measurement
Change-Id: I7d2949132f8103ffef514e1510d113b56919cbf3
Marius Renn [Thu, 15 Sep 2011 00:33:11 +0000 (17:33 -0700)]
Clean-up and documentation of Photo Editor filters (bug
5287103).
- Documentation for Photo Editor effects added.
- Default parameter values added to underlying filters.
- Minor clean-up of Photo Editor filter code.
Change-Id: Ibaa3a106155bf52a1848b62f067f94731cdc6d86
Marius Renn [Thu, 15 Sep 2011 00:13:29 +0000 (17:13 -0700)]
Merge "Rename of DoodleEffect as part of cleanup (Bug
5287103)."
Marius Renn [Wed, 14 Sep 2011 01:23:21 +0000 (18:23 -0700)]
Rename of DoodleEffect as part of cleanup (Bug
5287103).
The DoodleEffect semantics have been considerably simplified so that the
name no longer fits the effect outcome. Renamed to BitmapOverlayEffect
(EFFECT_BITMAPOVERLAY).
This is the necessary change to the constant in the EffectFactory.
Change-Id: I071a77b0cb2a2f3de549c2bd1bff40c5f29a4848
Glenn Kasten [Fri, 9 Sep 2011 14:41:45 +0000 (07:41 -0700)]
Bug
5287555 create StreamSourceAppProxy once
Create StreamSourceAppProxy once in the StreamPlayer constructor,
rather than dynamically in StreamPlayer::registerQueueCallback.
As StreamPlayer::registerQueueCallback can be called multiple times
(or even not at all), this guarantees we always have only one
StreamSourceAppProxy that never changes.
Also fix bug where we weren't using a stream protector for AudioPlayer
with MPEG-2 TS AndroidBufferQueue data source (we weren't calling
setCallbackProtector on it).
This has some unexpected side benefits of simplifying the code:
- remove unused parameters and member variables
- mAppProxyLock not needed since the callback protector is created early
- remove GenericPlayer::setCallbackProtector
- inline android_StreamPlayer_realize_l for the use case
AUDIOPLAYER_FROM_TS_ANDROIDBUFFERQUEUE to be like MediaPlayer
Change-Id: I090c11cde9474285185481192dba2b5c01338a50
Glenn Kasten [Mon, 12 Sep 2011 17:02:01 +0000 (10:02 -0700)]
Merge "Bug
5287473 realize locks"
Glenn Kasten [Fri, 9 Sep 2011 23:22:30 +0000 (16:22 -0700)]
Bug
5287473 realize locks
Realize had inconsistent and partial locking.
Now realize runs completely locked by default.
Change-Id: If453cfc0ac874f32cf5a1fcfe7795d24bd2a48d4
Jean-Michel Trivi [Fri, 9 Sep 2011 22:17:01 +0000 (15:17 -0700)]
Bug
5236913 Update sample app for PLAYEVENT_HEADATEND with MP2TS
Update the sample application to receive the PLAYEVENT_HEADATEND
event after EOS has been processed.
Remove dead code in the corresponding implementation (in class
StreamPlayer).
Change-Id: Ibe484a8c0e9605c05cd47b154d6c0aff1e70d49e
Jean-Michel Trivi [Fri, 9 Sep 2011 18:32:12 +0000 (11:32 -0700)]
Bug
5236913 Callback for MP2TS when EOS was processed
When the buffer containing the EOS item in the Android Buffer Queue
gets processed, make sure the application callback gets called.
Change-Id: I7476a908419ec99c52c3d3f3938de3f86ab926c6
Jean-Michel Trivi [Fri, 9 Sep 2011 02:33:46 +0000 (19:33 -0700)]
Merge "Fix bug
5236913 EOS causes HEADATEND event in play callback"
Jean-Michel Trivi [Fri, 9 Sep 2011 02:33:18 +0000 (19:33 -0700)]
Merge "Bug
5236913 Callback for AAC decode when EOS was processed"
Jean-Michel Trivi [Fri, 9 Sep 2011 01:19:41 +0000 (18:19 -0700)]
Fix bug
5236913 EOS causes HEADATEND event in play callback
In AAC decode through an Android Buffer Queue, after receiving
an EOS command, prevent reading from the queue by returning
a size of 0, which causes the decoder to signal an end of
stream. This will cause the SL_PLAYEVENT_HEADATEND to be
fired (from the same thread that sends the decoded data)
if the event was part of the play event mask, and a callback
had been registered.
Change-Id: I435e8a66dbe9bc37f24c9e1f1c13f0dbd670b395
Rodrigo Carceroni [Fri, 9 Sep 2011 01:53:10 +0000 (18:53 -0700)]
Merge "Optimize Backdropper mask generation"
Rodrigo Carceroni [Fri, 9 Sep 2011 01:27:38 +0000 (18:27 -0700)]
Optimize Backdropper mask generation
Change-Id: I701e27928b9c729aeaee7eb83b0b6d99773f7acf
Jean-Michel Trivi [Fri, 9 Sep 2011 00:18:54 +0000 (17:18 -0700)]
Merge "Bug
5280072 decode AAC ADTS fails for CRC content"
Glenn Kasten [Thu, 8 Sep 2011 22:37:48 +0000 (15:37 -0700)]
Bug
5280072 decode AAC ADTS fails for CRC content
Also copy in the length check from Stagefright.
Change-Id: I6758dbe370dd3a7178061183bbb83d289e5c00c5
Pannag Sanketi [Thu, 8 Sep 2011 23:30:09 +0000 (16:30 -0700)]
Merge "Fixing disconnect issue within MFF encoding"
Jean-Michel Trivi [Thu, 8 Sep 2011 22:30:04 +0000 (15:30 -0700)]
Bug
5236913 Callback for AAC decode when EOS was processed
When the buffer containing the EOS item in the Android Buffer Queue
gets processed, make sure the application callback gets called.
Change-Id: I0c8dfb61404ea33322a5755afa7c44213e53ce02
Pannag Sanketi [Thu, 8 Sep 2011 21:27:08 +0000 (14:27 -0700)]
Fixing disconnect issue within MFF encoding
1. No explicit calling of "disconnect" on the native window corresponding
to the SurfaceMediaSource. It is not done through the GL Calls. Thus,
removed the disconnect function altogether.
2. The activateSurfaceId(int) call from the Java layer now calls activate()
explicitly in the jni along side swithToSurfaceId(int) and does not
depend on the context to be current.
3. unregistering the surface correspoding to the SurfaceMediaSource
from the Java layer is enough to call disconnect.
Change-Id: Ibdd268b559a69b4de7620474017114ff6e74f237
Rodrigo Carceroni [Wed, 7 Sep 2011 16:56:39 +0000 (09:56 -0700)]
Merge "Adjust backdropper acceptance thresholds to make foreground borders tighter."
Rodrigo Carceroni [Wed, 7 Sep 2011 02:11:58 +0000 (19:11 -0700)]
Adjust backdropper acceptance thresholds to make foreground borders tighter.
Change-Id: Ie47cc87a0682e78e48412d3b97cb2c20bd28e6a9
Eino-Ville Talvala [Tue, 6 Sep 2011 23:59:58 +0000 (16:59 -0700)]
Bugfixes in MediaSource SurfaceTexture management.
Regressions from fix to Bug:
5117570
Change-Id: Ic21dc37d2f99e167fad613ae7565d7b7aeba07e1
Marius Renn [Tue, 6 Sep 2011 23:31:11 +0000 (16:31 -0700)]
Merge "Fix bug
5150875: Remove handling of possibly leaking frames."
Jean-Michel Trivi [Tue, 6 Sep 2011 23:23:09 +0000 (16:23 -0700)]
Merge "Fix
5249076 Don't let the shared memory buffer drain"
Glenn Kasten [Tue, 6 Sep 2011 23:08:08 +0000 (16:08 -0700)]
Merge "Bug
5262776 reliability of play event callbacks"
Marius Renn [Tue, 6 Sep 2011 23:01:25 +0000 (16:01 -0700)]
Fix bug
5150875: Remove handling of possibly leaking frames.
This removes the logging and releasing of possibly leaking frames. As
this may be triggered by false positives, this code should be removed.
Change-Id: I33084662f64b4a7f6173324f59caab4f0fb75388
Jean-Michel Trivi [Fri, 2 Sep 2011 02:21:23 +0000 (19:21 -0700)]
Fix
5249076 Don't let the shared memory buffer drain
Whenever pushing data to the shared memory from the
AndroidBufferQueue, post a message to do the same operation
again if there is still room in the shared memory. This
ensures the consumption of data will keep the
shared memory buffer full, not the notification of space
available in shared memory, which may happen while the
Android Buffer Queue is empty (after a clear() for
instance).
Change-Id: I397d70ebb927fa6a1d0fb97321a70db0440b96fe
Glenn Kasten [Fri, 2 Sep 2011 22:45:38 +0000 (15:45 -0700)]
Bug
5262776 reliability of play event callbacks
This makes HEADMOVING and HEADATMARKER work more reliably, especially
at the beginning of track and under heavy load. Previously if an event
update was missed because update period is too small or mediaserver/client
is too busy to keep up with notifications, then subsequent events
were lost. This happened more than you might expect; the first event
was often lost and things just got worse from there.
Cleanup in AudioSfDecoder:
- Call up to superclass (GenericPlayer) onSeek and onLoop
to make future maintenance easier.
- Delete dead code in onMessageReceived.
- Logic depends on mLastDecodedPositionUs not being ANDROID_UNKNOWN_TIME
- Simplify getPositionUsec
Add more logging in GenericPlayer::updateOneShot.
Change-Id: Iacddafeb3a20b25bee6da602f6a783201d80be10
Glenn Kasten [Wed, 31 Aug 2011 23:32:33 +0000 (16:32 -0700)]
Bug
5244675 PCM sample rate metadata units
The current metadata key macro name ANDROID_KEY_INDEX_PCMFORMAT_SAMPLESPERSEC
is confusing. This change renames it to ANDROID_KEY_INDEX_PCMFORMAT_SAMPLERATE,
and documents that it is in Hz rather than milliHz. The key string is
renamed from AndroidPcmFormatSamplesPerSec to AndroidPcmFormatSampleRate.
Details:
OpenSL ES 1.0.1 PCM struct SLDataFormat_PCM field samplesPerSec
[sic] is in milliHz. OpenSL ES 1.1 preserves that struct, but adds
struct SLDataFormat_PCM with field sampleRate also in milliHz. If the
ANDROID_KEY_INDEX_PCMFORMAT_* metadata keys were intended to exactly
model the OpenSL ES PCM data format struct, the metadata sample rate
would also be in milliHz units. However, the rest of Android operates
in Hz so we use Hz here also.
Backwards compatibility for the name should not be an issue,
as the initial beta developer has not yet started using this metadata.
Related change: delete a duplicate header file.
Change-Id: Ib8f620dfe7a328f621ddbb19f55e5691eb22d7b5
Eino-Ville Talvala [Tue, 6 Sep 2011 21:14:21 +0000 (14:14 -0700)]
Merge "Replace pBuffer with a SurfaceTexture as default dummy surface."
Eino-Ville Talvala [Tue, 6 Sep 2011 16:59:09 +0000 (09:59 -0700)]
Several SurfaceTexture usage fixes.
- Let SurfaceTextureSource timeouts result in filter closure, not abort.
This simplifies shutting down a filter graph in a multithreaded
scenario considerably.
- Add release() calls to SurfaceTextures when used in the client sense.
Bug:
5117570
Bug:
4510826
Change-Id: I2640a4cc93acce778c34a1101e132e139995c798
Rodrigo Carceroni [Tue, 6 Sep 2011 16:45:44 +0000 (09:45 -0700)]
Merge "Backdropper: no-brainer optimizations"
Rodrigo Carceroni [Tue, 6 Sep 2011 16:45:27 +0000 (09:45 -0700)]
Merge "Allocate correct frame sizes within back dropper."
Rodrigo Carceroni [Mon, 5 Sep 2011 02:48:18 +0000 (19:48 -0700)]
Backdropper: no-brainer optimizations
Change-Id: Ib874e1c7e4bbbfa38367e2513008d880e0ad4dbd
Rodrigo Carceroni [Fri, 2 Sep 2011 22:21:11 +0000 (15:21 -0700)]
Allocate correct frame sizes within back dropper.
Change-Id: I9e32edc4f7a1c138cf2c86e6f1dbfb8de78630b8
Glenn Kasten [Fri, 2 Sep 2011 20:57:01 +0000 (13:57 -0700)]
Merge "Bug
5244675 default channel mask based on count"
Glenn Kasten [Fri, 2 Sep 2011 15:34:45 +0000 (08:34 -0700)]
Merge "MediaPlayer GetPosition returns 0 before prefetch"
Dave Burke [Thu, 1 Sep 2011 21:15:33 +0000 (22:15 +0100)]
Require INTERNET permission for network-based content.
Bug #
1870981
Change-Id: Ia7b9b75feb5b43fe9358bbbca6b619112984246c
Eino-Ville Talvala [Fri, 2 Sep 2011 01:17:33 +0000 (18:17 -0700)]
Replace pBuffer with a SurfaceTexture as default dummy surface.
PBuffers may not support needed recording extensions, so the
dummy used to create a GL context needs to be replaced.
Bug:
4510826
Change-Id: I25f7ec8a8e24ff9feb3d6f5a5a998c6a56018a98
Glenn Kasten [Wed, 31 Aug 2011 21:36:42 +0000 (14:36 -0700)]
Bug
5244675 default channel mask based on count
Change-Id: Ica0b1bd5a23d9bbc318003509e2463a588d9bd39
Glenn Kasten [Thu, 1 Sep 2011 23:59:08 +0000 (16:59 -0700)]
MediaPlayer GetPosition returns 0 before prefetch
This makes MediaPlayer work the same way as AudioPlayer,
to return current position as zero before prefetch started.
Change-Id: I538919d05074002d46c3dc1632caa4d5a85e8fad
Jean-Michel Trivi [Fri, 2 Sep 2011 00:33:04 +0000 (17:33 -0700)]
Merge "Bug
5249076 When starting to stream, have at least one buffer in shared mem"
Glenn Kasten [Fri, 2 Sep 2011 00:31:31 +0000 (17:31 -0700)]
Merge "Rename Android buffer queue GUID for future sink"
Glenn Kasten [Fri, 2 Sep 2011 00:30:22 +0000 (17:30 -0700)]
Merge "Bug
5244675 handle the switch cases of AAC decode"
Glenn Kasten [Fri, 2 Sep 2011 00:24:55 +0000 (17:24 -0700)]
Merge "Bug
5244675 miscellaenous AAC decode test"
Jean-Michel Trivi [Thu, 1 Sep 2011 23:32:42 +0000 (16:32 -0700)]
Bug
5249076 When starting to stream, have at least one buffer in shared mem
StreamPlayer is receiving notifications from the MediaPlayer that
a buffer in shared memory is available during playback, which
causes StreamPlayer to consume data from the AndroidBufferQueue.
If the shared memory is drained while the player is paused, there
will be no new notification of a buffer in shared memory being
available to start the cycle of consumption from the Android
buffer queue.
This change causes StreamPlayer to consume from the buffer queue
to fill one buffer in shared memory.
A subsequent change will change the logic to make sure the
consumption from the buffer queue fills as much of the shared
memory as possible.
Change-Id: I886832629dd5ef449719b77899ebdcc7ffc64330
Glenn Kasten [Mon, 29 Aug 2011 21:49:48 +0000 (14:49 -0700)]
Check callback result code and warn if non-success
The result code is currently unused, but reserved for future use.
This change will help make sure that developers do the right thing now,
so that they will not be impacted when we begin to act on the result.
Change-Id: I8c712882d41d09506defa77340676079bb34de6c
Glenn Kasten [Mon, 29 Aug 2011 21:32:10 +0000 (14:32 -0700)]
Rename Android buffer queue GUID for future sink
This change will make it easier to have Android buffer queue as a sink in
the future. For backwards source code compatibility with beta developers,
retain the old name temporarily. As soon as they have switched to the
new name, we will remove the old name.
Details:
- rename XA_IID_ANDROIDBUFFERQUEUE to XA_IID_ANDROIDBUFFERQUEUESOURCE
- rename SL_IID_ANDROIDBUFFERQUEUE to SL_IID_ANDROIDBUFFERQUEUESOURCE
- rename MPH_ANDROIDBUFFERQUEUE to MPH_ANDROIDBUFFERQUEUESOURCE
- did not rename the data locators and interface struct,
as they can be shared across both source and sink
- did not rename the member field mAndroidBufferQueue in
CAudioPlayer / CMediaPlayer as that would be a huge change;
can do that later if necessary
- the SINK definition will be added later when needed
Change-Id: I36dc01050efb99d4d7802b2ca2b870f4d978ee21
Marius Renn [Thu, 1 Sep 2011 21:39:59 +0000 (14:39 -0700)]
Merge "Class name cleanup. (1/3)"
Glenn Kasten [Fri, 19 Aug 2011 18:51:21 +0000 (11:51 -0700)]
Add rewind (discontinuity) to native-media test
Change-Id: I0f32564d2a2937092436dd48fef877ed55b2d4f3
Glenn Kasten [Wed, 31 Aug 2011 17:51:14 +0000 (10:51 -0700)]
Bug
5244675 miscellaenous AAC decode test
Fix bug in counting encoded frames.
Test get play position and duration at various points.
Display all PCM metadata (in particular the channel mask).
Add example of expected output.
Change-Id: I0d0a629755a37b71a1540e79ae7a6f1ed7095a24
Eric Laurent [Thu, 1 Sep 2011 15:22:47 +0000 (08:22 -0700)]
Merge "clean up in echo reference code"
Eric Laurent [Thu, 1 Sep 2011 02:18:26 +0000 (19:18 -0700)]
clean up in echo reference code
Change-Id: Ie06ed382eee2f1d4d1289d9a49d8a93dcf103e4e
Wei Hua [Thu, 1 Sep 2011 00:38:41 +0000 (17:38 -0700)]
Merge "Added a FixedRotationFilter."
Rodrigo Carceroni [Thu, 1 Sep 2011 00:35:34 +0000 (17:35 -0700)]
Merge "Make background replacement roughly independent of input size."
Wei Hua [Thu, 1 Sep 2011 00:07:53 +0000 (17:07 -0700)]
Added a FixedRotationFilter.
bug:
5221073
RotationFilter is used for dealing the 4 orientations of the device.
Fixed ToPackedGrayFilter to correctly resize the image
if aspect ratio needs to be kept.
Change-Id: Idd3c26ae2ec12b64f7d040a301a87c619fe146e3
Ruei-sung Lin [Thu, 1 Sep 2011 00:04:57 +0000 (17:04 -0700)]
Merge "rewrite lomo and documentary filters"
Marius Renn [Wed, 31 Aug 2011 23:49:47 +0000 (16:49 -0700)]
Class name cleanup. (1/3)
Addresses bug
5214502.
Change-Id: I82321ad516b93e98047fce361a97da020b7ac09e
Glenn Kasten [Mon, 29 Aug 2011 23:37:24 +0000 (16:37 -0700)]
Bug
5244675 handle the switch cases of AAC decode
Fix handling of AUDIOPLAYER_FROM_ADTS_ABQ_TO_PCM_BUFFERQUEUE decode use case:
- Play::GetPosition: explicitly list decode case and return media
player time; previously returned zero.
- Seek::SetLoop for AudioPlayer or MediaPlayer: return
SL_RESULT_FEATURE_UNSUPPORTED on non-URI data source. This is
correctly passed up to app.
The remaining have no immediate impact, but should make future maintenance easier:
- Play::GetDuration: explicitly list decode case and return unknown time;
no impact as already covered by default.
- Seek::SetPosition: explicitly list decode case and handle as no-op; no
impact as already covered by default.
- Seek::SetPosition for AudioPlayer or MediaPlayer: return
SL_RESULT_FEATURE_UNSUPPORTED with unsupported data source e.g. buffer
queue. No impact as the result is currently ignored, but added a
FIXME to pass this up to app.
- AndroidBufferQueue::Clear: explicitly list decode case as a no-op
other than the partial clear of upper layer queue.
- AndroidBufferQueue::onRefilled: explicitly list decode case as
a no-op, but with a FIXME that this may need more work later.
Change-Id: I53c8a0b736f32cd265ee9c94a70127d4f80869b5
Ruei-sung Lin [Wed, 31 Aug 2011 22:40:34 +0000 (15:40 -0700)]
rewrite lomo and documentary filters
Change-Id: Ia88123992c4033d9d68c2e47ba22db4f6c911694
Rodrigo Carceroni [Wed, 31 Aug 2011 21:35:57 +0000 (14:35 -0700)]
Make background replacement roughly independent of input size.
Change-Id: I1257718f4ba2ae72add6501d238ec78d0465861b
Eino-Ville Talvala [Wed, 31 Aug 2011 19:15:50 +0000 (12:15 -0700)]
Fix recording resolution mismatch when using CamcorderProfile.
Did not use profile-provided resolution everywhere, resulting in
videos with tiny images in big black boxes.
Bug:
4510826
Change-Id: I845c436de091299fbd8a49eb3b8f70707aadc6f5