OSDN Git Service
Glenn Kasten [Fri, 2 Mar 2012 01:10:56 +0000 (17:10 -0800)]
threadLoop merge
Change-Id: Id8e6330ac6be76f9c2debba94f856de87e2d98f7
Andreas Huber [Thu, 1 Mar 2012 23:46:19 +0000 (15:46 -0800)]
Merge "Remove hacks that worked around issues in OMX components several releases back."
Jean-Baptiste Queru [Thu, 1 Mar 2012 23:35:25 +0000 (15:35 -0800)]
am
9de7793b: am
4f906362: am
97348431: am
704131cb: Merge changes I46c81dba,If1f40e9c,I652eaaa5
* commit '
9de7793b425be89889412f3a86466d7b19055c3c':
stagefright aacenc: Use QDADD/QDSUB instructions
stagefright aacenc: Remove useless inline asm for simple right shift
stagefright aacenc: Use ARMv6 SSAT instruction
Jean-Baptiste Queru [Thu, 1 Mar 2012 23:35:23 +0000 (15:35 -0800)]
am
715c78b9: am
225eec8d: am
f9d4ba77: am
69aae36e: Merge "stagefright aacenc: Safeguard against overwriting bits"
* commit '
715c78b933f8dec04882ebb73acd61fdd42c6c64':
stagefright aacenc: Safeguard against overwriting bits
Andreas Huber [Thu, 1 Mar 2012 23:17:47 +0000 (15:17 -0800)]
Remove hacks that worked around issues in OMX components several releases back.
Change-Id: I89bb3d0be4d2c1824de382aedfdd4f9bd2547dbc
John Grossman [Wed, 22 Feb 2012 23:38:35 +0000 (15:38 -0800)]
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>
John Grossman [Sun, 19 Feb 2012 01:46:40 +0000 (17:46 -0800)]
LibAAH_RTP: Add support for AAC in MP4.
Cherry picked from Ie8298eb9d253fc6ede448da87660a60d23170987 and
conflicts fixed by hand.
Change-Id: I6f0a59357ba1a3d57caf67d2eb0ade7486723e7b
Signed-off-by: John Grossman <johngro@google.com>
Andreas Huber [Thu, 1 Mar 2012 20:41:10 +0000 (12:41 -0800)]
Merge "Instead of hardcoding OMX component names in our code, support"
Andreas Huber [Wed, 29 Feb 2012 23:47:17 +0000 (15:47 -0800)]
Instead of hardcoding OMX component names in our code, support
a config file instead.
Change-Id: I5835903ab9f1c4a22ccc605ca99ed966767adf57
Eric Laurent [Thu, 1 Mar 2012 18:17:21 +0000 (10:17 -0800)]
Merge "renamed audio policy output flag."
Eric Laurent [Thu, 1 Mar 2012 17:38:00 +0000 (09:38 -0800)]
renamed audio policy output flag.
Renamed AUDIO_POLICY_OUTPUT_FLAG_INDIRECT to AUDIO_POLICY_OUTPUT_FLAG_NONE
which is more appropriate.
Change-Id: Ia14d60397df0f2dcd9bea0186400a09da35bc104
James Dong [Thu, 1 Mar 2012 00:32:10 +0000 (16:32 -0800)]
Merge "Added permission check for all sensitive drm API calls"
Jean-Baptiste Queru [Wed, 29 Feb 2012 23:44:31 +0000 (15:44 -0800)]
am
704131cb: Merge changes I46c81dba,If1f40e9c,I652eaaa5
* commit '
704131cb7e4f9cc682ea57ed569375f9f289368e':
stagefright aacenc: Use QDADD/QDSUB instructions
stagefright aacenc: Remove useless inline asm for simple right shift
stagefright aacenc: Use ARMv6 SSAT instruction
Jean-Baptiste Queru [Wed, 29 Feb 2012 23:44:28 +0000 (15:44 -0800)]
am
69aae36e: Merge "stagefright aacenc: Safeguard against overwriting bits"
* commit '
69aae36e900cf7114c5895618747906951a11730':
stagefright aacenc: Safeguard against overwriting bits
Glenn Kasten [Wed, 29 Feb 2012 22:59:08 +0000 (14:59 -0800)]
Merge "Shorten thread names"
Glenn Kasten [Wed, 29 Feb 2012 22:56:30 +0000 (14:56 -0800)]
Merge "Prepare for threadLoop merge - active tracks"
Glenn Kasten [Wed, 29 Feb 2012 02:40:35 +0000 (18:40 -0800)]
Prepare for threadLoop merge - active tracks
Continued work on making the copies of threadLoop more similar:
- Remove alias for mActiveTracks in MixerThread and DuplicatingThread.
- Pull in declaration of activeTrack in DirectOutputThread.
- Remove redundant parameter of prepareTracks_l().
- Comment prepareTracks_l().
Change-Id: If1087c1902b454acec01ddfdd9f055f0ca7abf04
Glenn Kasten [Wed, 29 Feb 2012 22:45:25 +0000 (14:45 -0800)]
Merge "AudioRecord const methods"
Glenn Kasten [Wed, 29 Feb 2012 22:44:39 +0000 (14:44 -0800)]
Merge "Update AudioFlinger comments"
Glenn Kasten [Wed, 29 Feb 2012 22:43:19 +0000 (14:43 -0800)]
Merge "Pull in declaration of effectChains to inner block"
Jean-Baptiste Queru [Wed, 29 Feb 2012 22:24:52 +0000 (14:24 -0800)]
Merge changes I46c81dba,If1f40e9c,I652eaaa5
* changes:
stagefright aacenc: Use QDADD/QDSUB instructions
stagefright aacenc: Remove useless inline asm for simple right shift
stagefright aacenc: Use ARMv6 SSAT instruction
Jean-Baptiste Queru [Wed, 29 Feb 2012 22:23:38 +0000 (14:23 -0800)]
Merge "stagefright aacenc: Safeguard against overwriting bits"
Glenn Kasten [Wed, 29 Feb 2012 15:56:15 +0000 (07:56 -0800)]
Pull in declaration of effectChains to inner block
Change-Id: I09eacf72124942abd604132b9f4e774b1236fcf3
Glenn Kasten [Wed, 29 Feb 2012 15:07:30 +0000 (07:07 -0800)]
mSuspend comments and usage
Emphasize that playbackthread::mSuspend is a counter, not a bool
Change-Id: I7188e56814e1c54dbc65e560f3627f138257d644
Glenn Kasten [Wed, 29 Feb 2012 19:32:42 +0000 (11:32 -0800)]
Merge "Mark similar and different sections in threadLoop"
Glenn Kasten [Wed, 29 Feb 2012 15:57:06 +0000 (07:57 -0800)]
Mark similar and different sections in threadLoop
Most of these comments will be removed after the threadLoop merge.
Note: the trivial change in assignments to mixBufferSize, and the
comments about "tracks to remove" is to make them all identical.
Change-Id: I3b1a33a7f2cd12ad557a1986bb71f6171161974a
Andreas Huber [Wed, 29 Feb 2012 17:20:24 +0000 (09:20 -0800)]
Merge "Separate the notion of "stop" from that of "release", i.e."
Glenn Kasten [Fri, 24 Feb 2012 23:42:48 +0000 (15:42 -0800)]
Update AudioFlinger comments
Add comments to enum mixer_state
Note side-effect of lockEffectChains_l
Fix a typo
Change-Id: Ibd51678bac2193201cbcbe081ff5664046fbc494
James Dong [Tue, 28 Feb 2012 21:55:55 +0000 (13:55 -0800)]
Added permission check for all sensitive drm API calls
o all drm calls using a DecryptHandle now check the permission before proceeding
Change-Id: Ic992a991357876c6e4bfbfab4f5eec1fa0634a13
James Dong [Wed, 29 Feb 2012 02:49:34 +0000 (18:49 -0800)]
Merge "Moves TimedTextDriver.h into include/media/stagefright/timedtext."
Glenn Kasten [Tue, 28 Feb 2012 20:30:08 +0000 (12:30 -0800)]
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
Andreas Huber [Tue, 28 Feb 2012 23:54:51 +0000 (15:54 -0800)]
Separate the notion of "stop" from that of "release", i.e.
stop - means transition back to LOADED state and keeping the component
instance allocated.
release - means we get rid of the component completely.
Change-Id: I40ad01ce70821faaad43f57999249904f9144924
James Dong [Tue, 28 Feb 2012 21:09:44 +0000 (13:09 -0800)]
Merge "Remove unnecessary header file includes for drmserver"
Glenn Kasten [Sat, 25 Feb 2012 00:33:14 +0000 (16:33 -0800)]
AudioRecord const methods
Change-Id: Ifae4fd7820b650aaca2b13c8658c292db1c46c0f
Glenn Kasten [Tue, 28 Feb 2012 15:23:42 +0000 (07:23 -0800)]
Merge "Unlock effect chains in the middle of two if's"
Glenn Kasten [Tue, 28 Feb 2012 15:21:51 +0000 (07:21 -0800)]
Merge "Simplify removeNotificationClient"
Glenn Kasten [Tue, 28 Feb 2012 15:21:09 +0000 (07:21 -0800)]
Merge "AudioFlinger const methods and parameters"
Jean-Baptiste Queru [Tue, 28 Feb 2012 15:19:40 +0000 (07:19 -0800)]
am
254cf597: am
7b6b81f8: am
f016dc1b: am
f881fa51: Merge "stagefright amr: Avoid C++/C99 for loops with variable declaration"
* commit '
254cf5973ebe5ebdce9ef261d826e88ed2f67f58':
stagefright amr: Avoid C++/C99 for loops with variable declaration
Glenn Kasten [Tue, 28 Feb 2012 15:18:27 +0000 (07:18 -0800)]
Merge "Fix theoretical race condition in addOutputTrack"
Glenn Kasten [Tue, 28 Feb 2012 15:17:47 +0000 (07:17 -0800)]
Merge "AudioBufferProvider comments and cleanup"
James Dong [Tue, 28 Feb 2012 06:20:28 +0000 (22:20 -0800)]
Remove unnecessary header file includes for drmserver
Change-Id: I14033861e74d20f9d4897b651c4eeee126d4d610
Mathias Agopian [Tue, 28 Feb 2012 01:37:26 +0000 (17:37 -0800)]
remove dependency on unneeded headers
Change-Id: I890f40c430beca055bedd95c878eb68b42f232c2
Jean-Baptiste Queru [Tue, 28 Feb 2012 00:57:06 +0000 (16:57 -0800)]
am
f881fa51: Merge "stagefright amr: Avoid C++/C99 for loops with variable declaration"
* commit '
f881fa517978adc7ea610a1982e0d071f1fd3425':
stagefright amr: Avoid C++/C99 for loops with variable declaration
Eric Laurent [Tue, 28 Feb 2012 00:35:30 +0000 (16:35 -0800)]
Merge "audio preprocessing: fix multiple enable problem"
Jean-Baptiste Queru [Tue, 28 Feb 2012 00:23:18 +0000 (16:23 -0800)]
Merge "stagefright amr: Avoid C++/C99 for loops with variable declaration"
Glenn Kasten [Mon, 27 Feb 2012 21:23:51 +0000 (13:23 -0800)]
Merge "Fix tracking of hardware state for dump"
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:15:15 +0000 (13:15 -0800)]
am
19bb6261: am
bf826923: am
faf38b24: am
9e3d9575: Merge "stagefright aacenc: Add prototypes for arm specific implementations of functions"
* commit '
19bb62613f512b62d492fb4caf36de88fd1914dd':
stagefright aacenc: Add prototypes for arm specific implementations of functions
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:15:13 +0000 (13:15 -0800)]
am
360db46e: am
b7913f70: am
163777b8: am
354ac772: Merge "stagefright amrwb: Make local const arrays static"
* commit '
360db46e78a1492b695d5be6e779386dc66a502e':
stagefright amrwb: Make local const arrays static
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:15:10 +0000 (13:15 -0800)]
am
5ba910d8: am
040c5b2c: am
ded8e681: am
695cfe1e: Merge "stagefright amrwb: Change a C++ style cast into a C style cast"
* commit '
5ba910d867d029e69c4f52667c02a4c114f849df':
stagefright amrwb: Change a C++ style cast into a C style cast
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:15:06 +0000 (13:15 -0800)]
am
b205a5d8: am
50ee92e9: am
d91b744d: am
f7f1280e: Merge changes Ib4e27ea3,I4ad55266,Ie32b32c7
* commit '
b205a5d861c5ba31599084a42c7d92549f464dac':
stagefright amrnb: Remove extern from table definitions
stagefright amrnb: Add includes for prototype declarations of tables
stagefright amrnb: Add missing const qualifier to table declarations in headers
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:15:03 +0000 (13:15 -0800)]
am
18a64b74: am
a887ff9a: am
4f74be57: am
1a864db7: Merge "stagefright aacenc: Simplify the definition of __inline"
* commit '
18a64b74aa3cb0babb5f50e5f80660f601d80123':
stagefright aacenc: Simplify the definition of __inline
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:14:59 +0000 (13:14 -0800)]
am
6b4d7bad: am
f7210cf5: am
7346d73c: am
77576ff4: Merge "stagefright amrwbenc: Remove a useless check"
* commit '
6b4d7bada0b1d34f93149211cb179b71c864d5d3':
stagefright amrwbenc: Remove a useless check
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:14:56 +0000 (13:14 -0800)]
am
2bf76b98: am
3e61e413: am
32901b39: am
be9a7055: Merge "stagefright aacenc: Remove a stray semicolon"
* commit '
2bf76b983da1d1730d685f9907d5d4fa6ea46fcd':
stagefright aacenc: Remove a stray semicolon
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:14:53 +0000 (13:14 -0800)]
am
484fc74b: am
4bcdeb86: am
716a0517: am
fe5f5d77: Merge "stagefright amrwb: Make a global const array static"
* commit '
484fc74beb79d0b8d49223cb3fce9e1ccbfd3501':
stagefright amrwb: Make a global const array static
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:14:48 +0000 (13:14 -0800)]
am
eb483de5: am
bf5c5e5b: am
c1da1e1b: am
94ee1bf2: Merge "stagefright amrwbenc: Change keyword ordering"
* commit '
eb483de58e4b41cb549149459e492e9ad1d65bd0':
stagefright amrwbenc: Change keyword ordering
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:14:45 +0000 (13:14 -0800)]
am
5b299d2f: am
18643e70: am
6bc542e0: am
5aff259c: Merge "stagefright aacenc: Don\'t address a Word32 with a Word16 pointer"
* commit '
5b299d2f9038452aa09a97d4f2ce57ec20bbc06a':
stagefright aacenc: Don't address a Word32 with a Word16 pointer
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:43 +0000 (13:07 -0800)]
am
9e3d9575: Merge "stagefright aacenc: Add prototypes for arm specific implementations of functions"
* commit '
9e3d957599c76ba19e23fd25b75ccc02d54efe3e':
stagefright aacenc: Add prototypes for arm specific implementations of functions
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:40 +0000 (13:07 -0800)]
am
354ac772: Merge "stagefright amrwb: Make local const arrays static"
* commit '
354ac772eca0afea25dd12d233e5cdee9677888b':
stagefright amrwb: Make local const arrays static
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:36 +0000 (13:07 -0800)]
am
695cfe1e: Merge "stagefright amrwb: Change a C++ style cast into a C style cast"
* commit '
695cfe1e1e189f176fdf994f72d05a0129a66394':
stagefright amrwb: Change a C++ style cast into a C style cast
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:33 +0000 (13:07 -0800)]
am
f7f1280e: Merge changes Ib4e27ea3,I4ad55266,Ie32b32c7
* commit '
f7f1280e0c71d64098efb42b58a922d056164b5e':
stagefright amrnb: Remove extern from table definitions
stagefright amrnb: Add includes for prototype declarations of tables
stagefright amrnb: Add missing const qualifier to table declarations in headers
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:30 +0000 (13:07 -0800)]
am
1a864db7: Merge "stagefright aacenc: Simplify the definition of __inline"
* commit '
1a864db7723a7947b72d24e6008ba48341d0feff':
stagefright aacenc: Simplify the definition of __inline
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:26 +0000 (13:07 -0800)]
am
77576ff4: Merge "stagefright amrwbenc: Remove a useless check"
* commit '
77576ff487e227092cdaf09db163e21f1e07604a':
stagefright amrwbenc: Remove a useless check
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:23 +0000 (13:07 -0800)]
am
be9a7055: Merge "stagefright aacenc: Remove a stray semicolon"
* commit '
be9a705586edafcedc9fabb94d3259f882b7cbd7':
stagefright aacenc: Remove a stray semicolon
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:20 +0000 (13:07 -0800)]
am
fe5f5d77: Merge "stagefright amrwb: Make a global const array static"
* commit '
fe5f5d7728b7f8be24716fda6eb1480eb9dfb72f':
stagefright amrwb: Make a global const array static
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:16 +0000 (13:07 -0800)]
am
94ee1bf2: Merge "stagefright amrwbenc: Change keyword ordering"
* commit '
94ee1bf232d1f1cc97902dab1e4148eb478cd304':
stagefright amrwbenc: Change keyword ordering
Jean-Baptiste Queru [Mon, 27 Feb 2012 21:07:12 +0000 (13:07 -0800)]
am
5aff259c: Merge "stagefright aacenc: Don\'t address a Word32 with a Word16 pointer"
* commit '
5aff259c61e54e441ed04bf77e3cc69a0374432d':
stagefright aacenc: Don't address a Word32 with a Word16 pointer
Mathias Agopian [Sun, 26 Feb 2012 02:48:35 +0000 (18:48 -0800)]
fix libgui header location
Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
Mathias Agopian [Sun, 26 Feb 2012 03:52:53 +0000 (19:52 -0800)]
libagl shouldn't export anything
Change-Id: Ia823dbc56aab2a0b8a6063df4348fe6baac124c6
Jean-Baptiste Queru [Mon, 27 Feb 2012 20:14:40 +0000 (12:14 -0800)]
Merge "stagefright aacenc: Add prototypes for arm specific implementations of functions"
Jean-Baptiste Queru [Mon, 27 Feb 2012 20:14:01 +0000 (12:14 -0800)]
Merge "stagefright amrwb: Make local const arrays static"
Jean-Baptiste Queru [Mon, 27 Feb 2012 20:13:26 +0000 (12:13 -0800)]
Merge "stagefright amrwb: Change a C++ style cast into a C style cast"
Martin Storsjo [Thu, 23 Jun 2011 15:21:23 +0000 (18:21 +0300)]
stagefright amr: Avoid C++/C99 for loops with variable declaration
This makes the code compileable in C89 mode, too.
Change-Id: I9b76f8bfca148d1aec6081b8db139f351d64cfed
Jean-Baptiste Queru [Mon, 27 Feb 2012 19:16:22 +0000 (11:16 -0800)]
Merge changes Ib4e27ea3,I4ad55266,Ie32b32c7
* changes:
stagefright amrnb: Remove extern from table definitions
stagefright amrnb: Add includes for prototype declarations of tables
stagefright amrnb: Add missing const qualifier to table declarations in headers
Jean-Baptiste Queru [Mon, 27 Feb 2012 19:11:56 +0000 (11:11 -0800)]
Merge "stagefright aacenc: Simplify the definition of __inline"
Jean-Baptiste Queru [Mon, 27 Feb 2012 19:11:17 +0000 (11:11 -0800)]
Merge "stagefright amrwbenc: Remove a useless check"
Jean-Baptiste Queru [Mon, 27 Feb 2012 19:09:58 +0000 (11:09 -0800)]
Merge "stagefright aacenc: Remove a stray semicolon"
Jean-Baptiste Queru [Mon, 27 Feb 2012 19:08:08 +0000 (11:08 -0800)]
Merge "stagefright amrwb: Make a global const array static"
Jean-Baptiste Queru [Mon, 27 Feb 2012 19:06:24 +0000 (11:06 -0800)]
Merge "stagefright amrwbenc: Change keyword ordering"
Jean-Baptiste Queru [Mon, 27 Feb 2012 18:58:50 +0000 (10:58 -0800)]
Merge "stagefright aacenc: Don't address a Word32 with a Word16 pointer"
Glenn Kasten [Mon, 27 Feb 2012 15:24:46 +0000 (07:24 -0800)]
Merge "Make threadLoop() logs identical"
Glenn Kasten [Mon, 27 Feb 2012 15:21:00 +0000 (07:21 -0800)]
Merge "Move declaration of mixerStatus to inner block"
Insun Kang [Mon, 27 Feb 2012 08:14:28 +0000 (17:14 +0900)]
Moves TimedTextDriver.h into include/media/stagefright/timedtext.
So that other players can include TimedTextDriver.h properly.
Change-Id: I15e72bf655de8555eef6244a6c853c27a0828a1d
Mathias Agopian [Sat, 25 Feb 2012 03:08:12 +0000 (19:08 -0800)]
Merge "remove dependency on android_native{s_priv|buffer}.h"
Mathias Agopian [Sat, 25 Feb 2012 02:25:41 +0000 (18:25 -0800)]
remove dependency on android_native{s_priv|buffer}.h
Change-Id: Ie4b95f7061c240f37c504414259f92d72c4ffc89
Glenn Kasten [Fri, 20 Jan 2012 17:19:01 +0000 (09:19 -0800)]
Simplify removeNotificationClient
No need to check for presence of item before removing
(but we do lose the log of the previous value).
Change-Id: I2838430824de5f257f2ee15db0c22b1920c67d08
Glenn Kasten [Fri, 24 Feb 2012 23:42:17 +0000 (15:42 -0800)]
AudioFlinger const methods and parameters
Change-Id: I93ec28024005ed23aa141518092a012a4a7c44c5
Glenn Kasten [Fri, 24 Feb 2012 19:18:09 +0000 (11:18 -0800)]
Make threadLoop() logs identical
Change the wording of the logs in the various copies of threadLoop()
to be identical. This will make it easier to merge them soon.
Change-Id: Idfa181e437738712c784dc7f746cac79f83d2931
Glenn Kasten [Fri, 24 Feb 2012 15:25:40 +0000 (07:25 -0800)]
Move declaration of mixerStatus to inner block
mixerStatus was being declared (and initialized) too early,
which also resulted in a duplicate initialization. Moved
the declaration into the block where it is actually used.
Change-Id: Ifdcfefe362a5efe3493dd616cdb44645c6f9aed5
Glenn Kasten [Fri, 24 Feb 2012 15:21:48 +0000 (07:21 -0800)]
Pull out duplicated copies of silent mode check
Also fix the error handling for the property_get.
This is part of preparation for the threadLoop() merge.
Change-Id: I6405190ea18146d1271575e1dfe9f279e8f36b17
Glenn Kasten [Fri, 24 Feb 2012 19:20:09 +0000 (11:20 -0800)]
Unlock effect chains in the middle of two if's
As part of the upcoming threadLoop() merge, this CL makes it clearer
what are the similar and different parts before and after unlocking
effect chains.
In each threadLoop(), the old code was:
if (sleepTime == 0) {
// A
unlockEffectChains(effectChains);
// B
} else {
unlockEffectChains(effectChains);
// C
}
The new code is:
if (sleepTime == 0) {
// A
}
unlockEffectChains(effectChains);
if (sleepTime == 0) {
// B
} else {
// C
}
Also this is slightly slower by one "if", it has the advantage of making
it much more obvious about what is done before and after the unlock,
and also to see the similarities and differences among the various
copies of threadLoop().
Change-Id: I7bf4369d2dcb072573ec43b7e52c637f0097dc00
Glenn Kasten [Fri, 24 Feb 2012 22:25:15 +0000 (14:25 -0800)]
Merge "Pull CPU statistics code out of threadLoop()"
Glenn Kasten [Fri, 24 Feb 2012 22:12:20 +0000 (14:12 -0800)]
Fix theoretical race condition in addOutputTrack
This is not a real race, because addOutputTrack was only called in two
places, and in both places there could be no other threads referencing
the DuplicatingThread instance.
Those two places are:
- the DuplicatingThread constructor, which is of course safe
- openDuplicateOutput - this is safe because it's called immediately
after the new DuplicatingThread, and there are no sp<> either in the
constructor or here which could cause onFirstRef() to do Thread::run().
But for safety in case addOutputTrack is ever called somewhere else,
or there are sp<> created earlier, it is safer to take the thread lock.
Change-Id: I1502d014fa37ec5dbf4bf40d3e2884af311cd5e9
Andreas Huber [Fri, 24 Feb 2012 22:03:27 +0000 (14:03 -0800)]
Merge "Make sure we return input/output buffers to the codec not just while"
Andreas Huber [Fri, 24 Feb 2012 22:02:52 +0000 (14:02 -0800)]
Merge "Fix two more locations that use the old setObject("buffer", ...) paradigm"
Andreas Huber [Fri, 24 Feb 2012 21:58:09 +0000 (13:58 -0800)]
Make sure we return input/output buffers to the codec not just while
flushing but also while stopping.
Change-Id: I23534008b93654c9b9c022c0b1d204c2b546d566
Glenn Kasten [Fri, 24 Feb 2012 15:21:32 +0000 (07:21 -0800)]
Pull CPU statistics code out of threadLoop()
This is to prepare for the threadLoop() merge
Change-Id: I118c7d5c6b011b5d5b95ec7d63fb03feb166a9cf
Andreas Huber [Fri, 24 Feb 2012 21:42:47 +0000 (13:42 -0800)]
Fix two more locations that use the old setObject("buffer", ...) paradigm
that I'd previously missed.
Change-Id: Ifbdbfb94d1bc1cbe8c0a403fed05ce99fca8397b
Glenn Kasten [Wed, 22 Feb 2012 18:47:35 +0000 (10:47 -0800)]
AudioBufferProvider comments and cleanup
Add comments about which methods implement the AudioBufferProvider interface.
Simplified the definition of kInvalidPts. <stdint.h> is very hard to work
with, there seems to be no way to use it reliably to get INT64_MAX without
having a separate source file, which is ugly because it means kInvalidPts
is not a compile-time constant. So I just deleted AudioBufferProvider.cpp
and used a hard-coded constant instead.
Added a default constructor for Buffer so that the fields aren't random
(especially .raw which is used to determine if the buffer is valid).
Make the pts for getNextBuffer default to kInvalidPTS so code that
doesn't need a pts doesn't have to specify a value.
Rename the parameter to AudioMixer::setBufferProvider to make it clearer.
Change-Id: I87e7290884d4ed975b019f62d1ab6ae2bc5065a5
Glenn Kasten [Thu, 2 Feb 2012 22:16:03 +0000 (14:16 -0800)]
Fix tracking of hardware state for dump
At end of AudioFlinger::onFirstRef(), the hardware status was being left
in wrong state. It should be AUDIO_HW_IDLE but was AUDIO_HW_INIT.
mHardwareStatus was being set to AUDIO_HW_OUTPUT_OPEN too early, and so
a return would leave it in the wrong state until next hardware operation.
Take the hardware lock for dev->get_parameters, and update mHardwareStatus
before and after.
Keep hardware lock only for the duration of the dev->set_parameters.
Rename two constants in enum hardware_call_state to have the prefix
AUDIO_HW so they follow the naming conventions.
Add comments.
Change-Id: I6c7450b11f9b13adaeef9cec874333e478a58fc0
Glenn Kasten [Fri, 24 Feb 2012 21:17:36 +0000 (13:17 -0800)]
Merge "Remove TrackBase::mFlags"