History log of /frameworks/base/media/java/android/media/AudioRecord.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6b7a4f7b95044f6baa82d2adc0dd95ae858d3524 15-Mar-2017 Jean-Michel Trivi <jmtrivi@google.com> AudioRecord: more information in text of IllegalArgumentException

Add more debug information inside the IAEs thrown during
audio parameter check.

Test: try invalid params for recording, read exception text
Bug: 34119793

Change-Id: Ic4f36fd6ef99c18107e3204ef5e25cc1bc9e704d
/frameworks/base/media/java/android/media/AudioRecord.java
0f0da49fce053eec4f95ce6a8e553d77f9df62a4 21-Jun-2016 Eric Laurent <elaurent@google.com> Fix JAVA doc for AudioRecord and AudioTrack Builder

The default sampling rate chosen for an AudioTrack or AudioRecord
constructed with a Builder not specifying a sampling rate is not
the primary output sampling rate but depends on the device actually
selected.

Bug: 29541155
Change-Id: Ifcab65418b816b7321b6e9542b9e4bb95f748f95
/frameworks/base/media/java/android/media/AudioRecord.java
219de73da2a986ddcbfbc593c4e4e01c858ce245 23-May-2016 Eric Laurent <elaurent@google.com> Fix AudioTrack and AudioRecord documentation

Improve documentation for error codes returned by
AudioTrack.write() and AudioRecord.read() methods.
Fix native to JAVA error code conversion in JNI.

Bug: 28906466

Change-Id: I4d48b1d428834b7a39a14e2d81b6c164696817a8
/frameworks/base/media/java/android/media/AudioRecord.java
03abaa5df97d914c968c2837712fa5e6f04cf189 13-Apr-2016 Andy Hung <hunga@google.com> Merge "Rename AudioRecord.getTimestamp parameter from timestamp to outTimestamp" into nyc-dev
4c015204704f9b95a5840ce7df11b62d34334f96 12-Apr-2016 Andy Hung <hunga@google.com> Rename AudioRecord.getTimestamp parameter from timestamp to outTimestamp

Bug: 27952053
Change-Id: I2940de5ef1a67ec9a2ad8e294149243679f7324a
/frameworks/base/media/java/android/media/AudioRecord.java
ed2edc7a8e044e31a6c9db638c97f9c21fb1d946 11-Apr-2016 Jeff Sharkey <jsharkey@android.com> Clean up AudioRouting API internals.

Reuse existing OnRoutingChangedListener APIs and internal logic by
extending the new AudioRouting.OnRoutingChangedListener. We use
new default methods to delegate incoming calls on the legacy
interfaces.

Fix a handful of locking bugs.

Bug: 27950070, 27952052, 27949198
Change-Id: Ie584108bcbeeab064d8e27d4984e541f31d36728
/frameworks/base/media/java/android/media/AudioRecord.java
58ae278294017abca0dffc95f006ae646c88db89 17-Mar-2016 Glenn Kasten <gkasten@google.com> Merge "Use audio_session_t consistently" into nyc-dev
14b4e65affca4eabe57c02d4968b0b585adff76f 10-Mar-2016 Paul McLean <pmclean@google.com> Native routing phase 4

Allow Acquire before Realize

Bug: 23899814

Change-Id: I58ab80554893a7df31c3892c75d6bd57fea2b336
/frameworks/base/media/java/android/media/AudioRecord.java
33b840444f5a481dd31e129079d3c0cf3acdf80e 08-Mar-2016 Glenn Kasten <gkasten@google.com> Use audio_session_t consistently

Also prefer AudioManager.AUDIO_SESSION_ID_GENERATE over
AudioSystem.AUDIO_SESSION_ALLOCATE, because
AudioSystem.AUDIO_SESSION_ALLOCATE is @hide.

Bug: 27562099
Change-Id: I5924554feb919db7f2390f5b062faedd515421af
/frameworks/base/media/java/android/media/AudioRecord.java
c69ac54111b271bdaf2dd9e40218906435bbde9f 08-Mar-2016 Paul McLean <pmclean@google.com> Make native_release() methods in AudioTrack and AudioRecord JNI-callable.

Change-Id: I31f8946579438021ba8f7ec58bf301a190082063
/frameworks/base/media/java/android/media/AudioRecord.java
c7079663978a685335d33aaddef1dd5a09dc095a 26-Feb-2016 Paul McLean <pmclean@google.com> Fix unitialized member/init-parameter in AudioTrack(long) and AudioRecord(long).

Bug: 27381351

Change-Id: Ia11c13bde978dbf1707439b82a18abf22fe23f2f
/frameworks/base/media/java/android/media/AudioRecord.java
9b09e533ac67d3d25465e3312b4957bc90b0c84f 26-Jan-2016 Paul McLean <pmclean@google.com> JNI plumbing for native audio routing API

Bug: 23899814
Change-Id: I3a831bb661fbdfe1981ae3482fcc8773c7df22b6
/frameworks/base/media/java/android/media/AudioRecord.java
1cbf9b3741ec486c3ffce08f145501eb1ca73640 02-Feb-2016 Glenn Kasten <gkasten@google.com> Allow sample rate UNSPECIFIED to mean a route-dependent value

Bug: 25641253
Bug: 21019153
Change-Id: I3b8e01b6ea09f42c813ab1a0f3f625dc3803cc0b
/frameworks/base/media/java/android/media/AudioRecord.java
518432e36610ad6a14f00fdd8123efa295c7eaed 31-Oct-2015 Glenn Kasten <gkasten@google.com> Update documentation for offset and size

Change-Id: Id9d5ef62767155cc8597795b43c4422f623574ed
/frameworks/base/media/java/android/media/AudioRecord.java
d89cb1eb81a019ee944f8a2803500ab98f92dc1c 29-Jan-2016 Andy Hung <hunga@google.com> Merge "Add AudioRecord timestamps"
0ad99c059735d6d4a9f9fb5379c8b1b35ce01f38 16-Jan-2016 Andy Hung <hunga@google.com> Add AudioRecord timestamps

API change

Bug: 13569372
Bug: 22886739
Change-Id: Ic250fd0c39901f4e99c58281e371f27c241b6bed
/frameworks/base/media/java/android/media/AudioRecord.java
ed36ca3d4f4f8aa0ee2951eab143a3c96b76158b 02-Dec-2015 Paul McLean <pmclean@google.com> Native Audio Routing and (Java) AudioRouting (interface).

Adding AudioRouting (Java) interface for routing control
in AudioTrack and AudioRecord.
Deprecating current (Marshmallow) Routing APIs in
AudioTrack and AudioRecord.
Adding package-private constructors to AudioTrack and AudioRecord
to connect to native player/recorder.

Bug: 23899814
Change-Id: I7df7a687fbd56a34c1f5769ffe005eba2a059505
/frameworks/base/media/java/android/media/AudioRecord.java
e244922ababf64fbac64c2ab375de54fa3a83f0a 13-Jun-2015 Andy Hung <hunga@google.com> AudioRecord.Builder should throw exception on failure.

Should throw UnsupportedOperationException instead of returning
an uninitialized record object.

Bug: 21890643
Change-Id: I9c05a4cff9f5e1d5513c76acace09699a567008f
/frameworks/base/media/java/android/media/AudioRecord.java
5be68ede1943354371233ed2511e308f83b77932 09-Jun-2015 Paul McLean <pmclean@google.com> Adding default handler to (re)Routing callbacks where no handler is provided.

Bug: 21669441

Change-Id: I6481652c8703bca6a7e8356614177fd071e71c0e
/frameworks/base/media/java/android/media/AudioRecord.java
b14b7e188fd1cc5215d2ac0c2a1c1588089712f1 21-May-2015 Andy Hung <hunga@google.com> Merge "Fix AudioTrack, AudioRecord, AudioFormat API" into mnc-dev
e90a0a88f4eabdc27c3ef033f38c91ea23362a1e 20-May-2015 Andy Hung <hunga@google.com> Fix AudioTrack, AudioRecord, AudioFormat API

Rename getNativeFrameCount to getBufferSizeInFrames
Remove throw declaration on IllegalArgumentException and
IllegalStateException

Bug: 20887665
Bug: 21304902
Change-Id: Ia85d8010be46524b9a8b93105b16b7b9480f6bd9
/frameworks/base/media/java/android/media/AudioRecord.java
8e6c9f46172458624349755c9b1bc051f420d36d 19-May-2015 Paul McLean <pmclean@google.com> Updating (and completing) documentation post API-council changes.

1. Enum/Select/Notify API
2. (re)routing API

bug: 21151568
Change-Id: Idce969c8b8955022b7810cf5dddb800e6aa01000
/frameworks/base/media/java/android/media/AudioRecord.java
46011f88710e8b874e1e55d2430c727bfd9d79a9 09-May-2015 Jean-Michel Trivi <jmtrivi@google.com> AudioRecord.Builder works with no or partial parameters

Complete missing build-time parameters for encoding and channel
mask, according to documentation.

Bug 20894895

Change-Id: I61f9bfab374effeeded5ae782c4e8513b7310c06
/frameworks/base/media/java/android/media/AudioRecord.java
3b12261c50851deedef64974a05a8cbff2b4c2ea 11-May-2015 Jean-Michel Trivi <jmtrivi@google.com> Merge "android.media.AudioRecord.Builder: no "capture preset"" into mnc-dev
fd3ac3da172b877c6f316de2d066883e7a2d0631 09-May-2015 Jean-Michel Trivi <jmtrivi@google.com> android.media.AudioRecord.Builder: no "capture preset"

Implement feedback to keep using "audio sources" instead of migrating
to "capture presets" in AudioRecord.Builder.

Bug 20887665

Change-Id: I4d7773102711c3a4f3f4050b3eb5600bfba889cd
/frameworks/base/media/java/android/media/AudioRecord.java
e3383cc4539921756232ae4f3f54e99b95fb20cc 08-May-2015 Paul McLean <pmclean@google.com> Changes as per API council review.

Bug: 20887665
Change-Id: I1da7a2c69d8cf20682c767294b1647beef33f90c
/frameworks/base/media/java/android/media/AudioRecord.java
4bcdba848449b33d7022de527c526943aff1f5fd 01-May-2015 Eric Laurent <elaurent@google.com> Implement audio routing callbacks

Implement JNI for AudioTrack and AudioRecord routing
callbacks:
- Added files core/jni/android_media_DeviceCallback.cpp/.h
for JNI callback implementation used by both AudioTrack
and AudioRecord.
- Made AudioManager AudioPort and AudioPatch methods static
in order to call them without context.

Also added IO handle information to AudioMixPort.

Change-Id: Icee182aa68310d4b12fd1469f48e78110889acf1
/frameworks/base/media/java/android/media/AudioRecord.java
fbf0ecabac5d7a929628b43ffe8f4f953e47bd54 02-May-2015 Svetoslav <svetoslavganov@google.com> Add camera app op - framework

Change-Id: I17736a8abe2c6775e990b88fb3eab963f47167d0
/frameworks/base/media/java/android/media/AudioRecord.java
fa5ecdc4ac6d7a8db2bb9e4a6a60a3189025df30 28-Apr-2015 Svet Ganov <svetoslavganov@google.com> Respect the record audio app op - framework

Change-Id: I5696d2ef22738ccffaf8bd7a0ee68cbc3dea3bf1
/frameworks/base/media/java/android/media/AudioRecord.java
8fd0928cdb6249882acb18274ff7ddaab6fa46d0 24-Apr-2015 Andy Hung <hunga@google.com> Increase AudioTrack and AudioRecord max sample rate to 192kHz

For pro-audio purposes.

Change-Id: Ie5de6736175879c074ed393a14ca88720de083c7
/frameworks/base/media/java/android/media/AudioRecord.java
b33d878de3f814aff619bb80a7bc467c75a04076 24-Apr-2015 Andy Hung <hunga@google.com> Merge "Add getFormat to AudioTrack and AudioRecord"
463a8c7743c5187827a8ac56b7767b50ab491ca8 23-Apr-2015 Andy Hung <hunga@google.com> Add getFormat to AudioTrack and AudioRecord

This enables getting channel index masks and is future-friendly.

Change-Id: Ia0bb9a855e97e8279b2226cf75e0ddd03af3fb7f
/frameworks/base/media/java/android/media/AudioRecord.java
9e29086d5df800532e736d8f31e2b9159b102524 24-Apr-2015 Glenn Kasten <gkasten@google.com> Fix build

Change-Id: I0f83f4d1df85f4b3c59cfff54b8c78ea4aefbd1d
/frameworks/base/media/java/android/media/AudioRecord.java
e56f57c375ceacb8fc3d7125312e546d9a0c997c 24-Apr-2015 Paul McLean <pmclean@google.com> Merge "(Re)routing Notification API in AudioTrack/AudioRecord."
ec4097b0caf426cf48779762848456786587f443 24-Apr-2015 Paul McLean <pmclean@google.com> Merge "Explicit routing in AudioRecord"
2d6de4c38c899707e0596b7fa4dad9bbb3eb6b60 17-Apr-2015 Paul McLean <pmclean@google.com> Explicit routing in AudioRecord

Change-Id: Ib3af1041d9f7bbccefd6b86cd3c35baf742be861
/frameworks/base/media/java/android/media/AudioRecord.java
d5bad53a0cfb675d945442f5794ae991dbd035ca 17-Apr-2015 Paul McLean <pmclean@google.com> (Re)routing Notification API in AudioTrack/AudioRecord.

Change-Id: If6594df7e3ed4c4a67878f98c05e3153633cf263
/frameworks/base/media/java/android/media/AudioRecord.java
98d4ca62290a45ea2a66826a1a99e9a664016808 20-Apr-2015 Andy Hung <hunga@google.com> Add channel index mask to AudioRecord

Change-Id: I5d2504d3a7af6611d3ffa9a4c2d3665a2cf97fef
/frameworks/base/media/java/android/media/AudioRecord.java
0e9e2f3724b43f86bb7e41a40e665587730ce6ae 14-Apr-2015 Andy Hung <hunga@google.com> Add non-blocking reads to AudioRecord

Change-Id: I63d5345129f197f96f9a13696996071c96551efe
/frameworks/base/media/java/android/media/AudioRecord.java
864ae678521cc26801a1611b3d4eabe90c0a17f7 14-Apr-2015 Andy Hung <hunga@google.com> Default to minimum buffer size for AudioRecord.Builder

Add AudioRecord.getNativeFrameCount to allow apps to
retrieve the size of the buffer created.

Change-Id: I4c539677726f89afd36fe7b1d24c8b29ada91402
/frameworks/base/media/java/android/media/AudioRecord.java
5076ea90af49f827711e89daba0076994bacaba1 13-Apr-2015 Andy Hung <hunga@google.com> Increase AudioRecord sample rate limit to 96kHz

Change-Id: I3e296a30b828cbea9fd2eab2b8db81833c20d7cf
/frameworks/base/media/java/android/media/AudioRecord.java
58b0f3f3324ad04d53b31a75c9ad617957dfbba6 28-Mar-2015 Andy Hung <hunga@google.com> Add floating point AudioRecord read

Change-Id: Ibbdbfdefb84b515c231723fb621662bc4920ff86
/frameworks/base/media/java/android/media/AudioRecord.java
7af0d66c2270d2b804b029bf33d6d8b532625a74 18-Mar-2015 Jean-Michel Trivi <jmtrivi@google.com> AudioRecord builder

Add public and system APIs for building an AudioRecord instance.
The validity of the combination of parameters is verified at
"build" time.

Bug 19699343

Change-Id: If959f0f35208fb81a902364aaeefc1ebef1a4d23
/frameworks/base/media/java/android/media/AudioRecord.java
00a009204e51997249d60eab4f147eff566e2b1f 09-Mar-2015 Eric Laurent <elaurent@google.com> enable FM tuner and hotword capture for system apps.

AudioRecord constructor with AudioAttributes and session ID as well
as HOTWORD and RADIO_TUNER audio sources are now system APIs.
Renamed MediaRecorder.AudioSource.FM_TUNER to
MediaRecorder.AudioSource.RADIO_TUNER.

Change-Id: I231c20c21e3e8cffe1837482976ebe284c9af541
/frameworks/base/media/java/android/media/AudioRecord.java
43bcd8fa74711dddfc27d696e7b9c0a9c4beff08 19-Dec-2014 Jean-Michel Trivi <jmtrivi@google.com> AudioRecord: filter attributes

When creating an AudioRecord instance, filter the tags in the
AudioAttributes to remove tags that are handled at the Java
layer.

Bug: 18733215
Bug: 18736417

Change-Id: I16a3497742086deced4e8677bd6231290396c5f6
/frameworks/base/media/java/android/media/AudioRecord.java
986468a8ab77ce1e89247078d4e93a3aaa5d294b 07-Oct-2014 Jean-Michel Trivi <jmtrivi@google.com> am dce7a427: Merge "Full volume on remote submix for apps that need it" into lmp-dev

* commit 'dce7a427593c6e11277d9e3075ab027512923276':
Full volume on remote submix for apps that need it
ba5270b88798c66fefc17a1b25b27894e4fb7862 02-Oct-2014 Jean-Michel Trivi <jmtrivi@google.com> Full volume on remote submix for apps that need it

If an AudioRecord is created with the "fixedVolume" tag
when recording from REMOTE_SUBMIX, treat the
device DEVICE_OUT_REMOTE_SUBMIX as a fixed full volume
device during the recording. Also register a death
handler during the recording.
Otherwise this is a no-op.

Bug 17635294

Change-Id: I8d26fe777047126f34308e1e1b7ac28ba269ad89
/frameworks/base/media/java/android/media/AudioRecord.java
ce4483cb83afb3a42a32ef2cb00cf04d6f9018fd 17-Sep-2014 Benson Huang <benson.huang@mediatek.com> [FM] Add FM_TUNER audio source to support L version FM radio app

1.MediaRecorder.java: Add FM_TUNER audio source type for FM record.
2.AudioRecord.java: For FM output to the other device,
(except the headset case), record the FM tuner signal to a track
and playback the recorded signal by a track.
3.AudioAttributes.java: Thus we use AudioRecord, need to modify
setCapturePreset to support MediaRecorder.AudioSource.FM_TUNER.

Review: https://partner-android-review.git.corp.google.com/#/c/182071

Signed-off-by: Benson Huang <benson.huang@mediatek.com>

Change-Id: If068d0bbbffb4848887004396a8a8d9bcba1334e
/frameworks/base/media/java/android/media/AudioRecord.java
701d6ff12f36bf5e9de0dafdaced06744fd411eb 16-Jul-2014 Jean-Michel Trivi <jmtrivi@google.com> AudioAttributes and AudioRecord.

Add audio recording source in AudioAttributes.
New AudioRecord constructor with AudioAttributes and
AudioFormat.
Legacy AudioRecord constructor is calling into the new
constructor.

Bug 16009464

Change-Id: I69d81f9e71bdf946c4cfbda6d3d8552ffac6b5c2
/frameworks/base/media/java/android/media/AudioRecord.java
bc11a696f6856624de532a6830d5db9dbbe2384c 16-May-2014 Eric Laurent <elaurent@google.com> AudioSystem: native to JAVA status translation

Regroup status code translation from native to JAVA in AudioSystem.
The same codes will be used by AudioTrack, AudioRecord, AudioManager
and defined in a single place in AudioSystem.

Change-Id: I7d3f39f30e3bb8e53f33f4408bcb0672df8af42b
/frameworks/base/media/java/android/media/AudioRecord.java
34a37bdebb3d606dac7c7d1dd7a0effdb59bd3d6 09-Jan-2014 Glenn Kasten <gkasten@google.com> Add AudioFormat.getBytesPerSample and use it

Change-Id: I90a40987ea99006af4a6e31136078c04976eb54d
/frameworks/base/media/java/android/media/AudioRecord.java
6bb5cb24b458a11bd02e9bff37c03f6381e06b7c 16-Jan-2014 Narayan Kamath <narayan@google.com> Resolved conflicts for merge of 28c6ec02 to master

Change-Id: Idf1cabf2694dfa13d928df944d346f5e051b6948
075e9a19ce645752f8282bc19c91b25978a7dc52 06-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in media classes

For storing pointers, long is used in media classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Idc4ca0124d03df7f9cef412488abafd020e5e774
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
/frameworks/base/media/java/android/media/AudioRecord.java
4896cb59a443370252d230793ee030021f719821 15-Jan-2014 Glenn Kasten <gkasten@google.com> Merge "Use AUDIO_SESSION_ALLOCATE instead of hard-coded 0"
a16a979315c3458499802f5cd94150822d49597a 22-Nov-2013 Glenn Kasten <gkasten@google.com> Update comments for AudioRecord IllegalArgumentException

Also explicitly list IllegalArgumentException in throws clause of the
constructor helper methods, as that is a critical side-effect of these methods.

Change-Id: I5cae5dfd807235fbdd827ef4ebc7cf05bfd11c02
/frameworks/base/media/java/android/media/AudioRecord.java
19294ca0e88018867d7d31a34bb4306a3d9502c3 22-Nov-2013 Glenn Kasten <gkasten@google.com> Document need to call AudioRecord.getState() after construction

Change-Id: Ia6ebb5b01ae60453b6fc7db79e2ec3d40d2b56f1
/frameworks/base/media/java/android/media/AudioRecord.java
a4b06fd111185f4f245d816c09074107fef960bb 22-Nov-2013 Glenn Kasten <gkasten@google.com> Fix typo nbChannels -> channelMask

Formal parameter name in native_setup was wrong.

Change-Id: Ie76c6e0aca83c6a01f2581d988e32da730b7e427
/frameworks/base/media/java/android/media/AudioRecord.java
357263da0ec2bc2be9d48c1becc3d94288c2f3ed 09-Sep-2013 Eric Laurent <elaurent@google.com> Add HOTWORD as an AudioSource

- This is a low-priority source that can be preempted by others
- This is required for scenarios where someone wants an alway-on
graceful microphone

Bug: 10640877.

Change-Id: Idb3577541103717cb713a7a93d3762ad2c2f4710
/frameworks/base/media/java/android/media/AudioRecord.java
86fad47e68e344b19fabeab1156c5e6742d8dfad 22-Jun-2012 Glenn Kasten <gkasten@google.com> Update audio comments

Change-Id: If470efd77ed886da8d83a1b427c132bad77e668b
/frameworks/base/media/java/android/media/AudioRecord.java
f239d9d7bb15fbdbe026835d5ee6b0c91d3ac5f0 05-Aug-2013 Glenn Kasten <gkasten@google.com> Merge "Don't doubly initialize fields in constructor"
0bd2667e20f795d47efe834f3a947fcbfc3886b9 05-Aug-2013 Glenn Kasten <gkasten@google.com> Merge "Clean up imports"
97d50425a48e7ac297da02b9a05612e373a672db 19-Jul-2013 Glenn Kasten <gkasten@google.com> Don't doubly initialize fields in constructor

Change-Id: Id3b4911a7954a5a908764683cc7b8d8515d4482a
/frameworks/base/media/java/android/media/AudioRecord.java
896a7f5fee46c24d31e9403abdf5813e4bb84ca5 19-Jul-2013 Glenn Kasten <gkasten@google.com> Clean up throws in AudioRecord and AudioTrack

Remove dead assignments to member fields in constructor prior to throw.
Execution doesn't continue execution, so no need to initialize fields.

throw doesn't need parentheses.

Fix indentation.

Change-Id: I2bf1b8bfa2c836e53a41eea67552cba40dc6fd43
/frameworks/base/media/java/android/media/AudioRecord.java
83db9ed19969a43d9bc179cb872129910d7039b2 02-Aug-2013 Glenn Kasten <gkasten@google.com> Clean up imports

No need to import java.lang.*;
these imports are implicit in the language.

Change-Id: Ia903fb9546f2a295605dbc80ba69c4e6778627d6
/frameworks/base/media/java/android/media/AudioRecord.java
33c437df39029b70d4ffafac2ca31bd71eafd0c6 19-Jul-2013 Glenn Kasten <gkasten@google.com> Rename mChannels to mChannelMask to avoid ambiguity

This clarifies that it's a channel mask, as opposed to a count.

Also no need to initialize the field in the declaration,
as it's initialized in the constructor.

Include channel mask in error logs.

Change-Id: Ifc02668cf922dc8826a9fb042b3ca52fad377ba6
/frameworks/base/media/java/android/media/AudioRecord.java
d5af238199b5c9f73d87fd57b7485a3a972629a7 24-Jul-2013 Glenn Kasten <gkasten@google.com> Match AudioRecord.getChannelConfiguration docs

Bug: 10001767
Change-Id: I28705ae84ee585afc37cdd2b13a039b7bfc36543
/frameworks/base/media/java/android/media/AudioRecord.java
626c0415a29a6dd23ffe292ce7f166a91f66d005 19-Jul-2013 Glenn Kasten <gkasten@google.com> Use the utility logging methods and single tag

See Change-Id: I5bfc66562a4a0630d520390ae886bd19de3327cb

Change-Id: I569e0a746c4430f9d0cd1cb20bbc9aa50b81bcfc
/frameworks/base/media/java/android/media/AudioRecord.java
6ab188589d9126c19bb37ba7dfa4de3e73e93e55 19-Jul-2013 Glenn Kasten <gkasten@google.com> Detect integer overflow

See Change-Id: Iec36fc0ea67095e18a2c238b148dad5545c102c1

Change-Id: I421f0d84c64310fcb6c5451993cfaf38125c4bb2
/frameworks/base/media/java/android/media/AudioRecord.java
8057f24d4aeb06da44aed2723575c983cabdda4b 19-Jul-2013 Glenn Kasten <gkasten@google.com> Verify that AudioRecord object is initialized for more APIs

Compare to AudioTrack, which already has these checks.

Change-Id: I3a239dfb4b918ceabfb723f189cc50ed6662eee6
/frameworks/base/media/java/android/media/AudioRecord.java
25a64b4badb21765426df26915d5582d5fb809af 19-Jul-2013 Glenn Kasten <gkasten@google.com> Remove redundant AudioRecord. qualifiers

Symbols of the current class don't need to be qualified.
See Change-Id: Ic89ce568771165d01d4b5bcf835c591ca0b86541

Change-Id: I75ec74a95cf68bf8eabdbac5b227a9035b945360
/frameworks/base/media/java/android/media/AudioRecord.java
79e49a0752bc2ec1431728ab793601536fac1ee5 19-Jul-2013 Glenn Kasten <gkasten@google.com> Return the record state locked

This field is always accessed with a lock held.
See Change-Id: I502b7401196c42932c9667ef73eb4cae16c3da16

Change-Id: I0900b60cd6b9076868532f951db370ccd5a0312e
/frameworks/base/media/java/android/media/AudioRecord.java
60bd67f7b1b85ed0ee19f77b056b90350a3d5343 26-Jun-2012 Glenn Kasten <gkasten@google.com> Use AUDIO_SESSION_ALLOCATE instead of hard-coded 0

Change-Id: Ic56e4a51895297516552e190d508e2257484fb53
/frameworks/base/media/java/android/media/AudioRecord.java
6809afe1c26f0044adf2be414fcaede9024289a6 18-Jan-2013 Eric Laurent <elaurent@google.com> AudioRecord: allow front + back mic capture

Change-Id: Id75c9b420198092f5f5d255bd5512ec5a7a2c502
/frameworks/base/media/java/android/media/AudioRecord.java
ee88bc8ab90696a9e479cf185ec2b8c2be0b7258 06-Dec-2012 Glenn Kasten <gkasten@google.com> Merge "Document that ByteBuffer position not updated"
f0336d11f565aebdbf182289b2b9a4c58bfd80f9 06-Dec-2012 Glenn Kasten <gkasten@google.com> Merge "Remove whitespace at end of line"
9121a032bb11256deabca709a42f7212ea19feaa 22-Jun-2012 Glenn Kasten <gkasten@google.com> Import only what's needed

Change-Id: I93e86e36569496b4bd08f58a8681e6471341ad3d
/frameworks/base/media/java/android/media/AudioRecord.java
5e958ed0cd41fd110f6d4b63cebc5cca927f5e6c 22-Jun-2012 Glenn Kasten <gkasten@google.com> Remove whitespace at end of line

Change-Id: Ie421899ddcb3c488902648ccbf628c075af05a91
/frameworks/base/media/java/android/media/AudioRecord.java
cfde15d709a3466b9d503f51819b7d28e718b482 08-Nov-2012 Glenn Kasten <gkasten@google.com> Document that ByteBuffer position not updated

This behavior is perhaps unfortunate but could cause compatibility
problems if it were changed at this point.

Bug: 7479782
Change-Id: I1ea0f1c8d5277c509cbea199f3c24a1563bcb2d0
/frameworks/base/media/java/android/media/AudioRecord.java
ff2577da370f15b8288f547575c28393477d57b1 04-Apr-2012 Eric Laurent <elaurent@google.com> unhide API for synchronous audio capture.

unhide MediaSyncEvent class and AudioRecord.startRecording() method with synchronization
event allowing to start audio capture upon occurence of a specific event.
So far the only event defined is playback presentation complete but more events and synchronized
playback/capture methods could be defined in the future.

Change-Id: If05fc6cd125dd9afad451727f792a3fd9e916bef
/frameworks/base/media/java/android/media/AudioRecord.java
8dfc10571a83389593fc11b92fbf9fc1f22c9f21 11-Apr-2012 Eric Laurent <elaurent@google.com> unhide audio pre processing API.

Unhide APIs for Noise Suppressor(NS), Acoustic Echo Canceler (AEC) and
Automatic Gain Control (AGC) audio pre processings.

Also unhide getAudioSessionId() method on AudioRecord.

Change-Id: I788f7a0724b152cc98c8167d9434e64c12bada95
/frameworks/base/media/java/android/media/AudioRecord.java
505e5c8859f596ed58489be565d6e029314b2ac8 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: I4e47f5108c7cbbd3bd334a7fad9b3b6c5ba55d88
/frameworks/base/media/java/android/media/AudioRecord.java
30c918ce7fbe171944b28fc91b3f22b3d631872d 11-Nov-2011 Glenn Kasten <gkasten@google.com> Use final on new member variables

Use final for member fields initialized to a new and that are never modified.

Change-Id: I042352c7bc21879613e7a50b1205b6923f8083cf
/frameworks/base/media/java/android/media/AudioRecord.java
44ff4cd8be50768d5bd471bc6c034acefa0b59ca 18-Jun-2011 Eric Laurent <elaurent@google.com> AudioRecord JAVA: expose audio session Id

Added getAudioSessionId() method to AudioRecord class so that applications can
retrieve the AudioRecord's session ID and attach audio pre processes.

Change-Id: I1914770f0e54d97c9aef6a9eb36fff69b6d31552
/frameworks/base/media/java/android/media/AudioRecord.java
635fefec06458224750170e7ce127bc2c8e4215b 14-Jul-2010 Dan Tasse <dantasse@google.com> Add some javadoc to AudioRecord, plus updates based on code review comments.

Change-Id: I0087e7df7541b336f87c7af512c3e8f3897be72c
/frameworks/base/media/java/android/media/AudioRecord.java
9cc489a2196e449dbe090ad9bdbc5cedd0b8334f 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.
/frameworks/base/media/java/android/media/AudioRecord.java
3026a023b8979b7ddcb3fe97bbc45531c89fda92 27-Jul-2009 Eric Laurent <elaurent@google.com> Fix issue 2001517: AudioTrack compatibility issue.

Modified enum values in AudioFormat.java and AudioSystem.h.
Added code for backward compatibility in AudioTrack.java and AudioRecord.java.
/frameworks/base/media/java/android/media/AudioRecord.java
a553c25b33c99b345cf1c8688f8df0ed8df14e5a 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()
/frameworks/base/media/java/android/media/AudioRecord.java
4bc035a65cac177be9294e69f110497e3b6e34e6 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.
/frameworks/base/media/java/android/media/AudioRecord.java
ea63a41d269abd25d070c9fc9c5a249763cb549d 20-Apr-2009 Jean-Michel Trivi <> AI 146938: am: CL 146937 Finalize AudioRecord javadoc.
Original author: jmtrivi
Merged from: //branches/cupcake/...

Automated import of CL 146938
/frameworks/base/media/java/android/media/AudioRecord.java
470f71f4a4d6d3a504b62473bd435bf80493414f 25-Mar-2009 Jean-Michel Trivi <> Automated import from //branches/donutburger/...@140566,140566
/frameworks/base/media/java/android/media/AudioRecord.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/java/android/media/AudioRecord.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/java/android/media/AudioRecord.java
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
/frameworks/base/media/java/android/media/AudioRecord.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
/frameworks/base/media/java/android/media/AudioRecord.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
/frameworks/base/media/java/android/media/AudioRecord.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/media/java/android/media/AudioRecord.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/media/java/android/media/AudioRecord.java