History log of /frameworks/base/voip/jni/rtp/AudioGroup.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e66950506c473e660f2e5762d7a71e13808be387 30-Mar-2012 Chia-chi Yeh <chiachi@android.com> RTP: refactor a little bit and fix few minor bugs.

Change-Id: I063644507f26996ded462972afcb550a4528dac8
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
f743e1f6abdb018fc58c467cdf35cbb8b81cf8c4 14-Mar-2012 Glenn Kasten <gkasten@google.com> Whitespace

Fix indentation, and add blank lines in key places for clarity

Change-Id: I57a0a8142394f83203161aa9b8aa9276abf3ed7c
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
597f8282ee1b86ba8f7384eb3060bac3b3f7cf92 12-Jan-2012 Glenn Kasten <gkasten@google.com> Fix build warnings

Change-Id: I543e730aff2d03c18c26b116c9fe9419259808af
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
3762c311729fe9f3af085c14c5c1fb471d994c03 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
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
8564c8da817a845353d213acd8636b76f567b234 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
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
5baa3a62a97544669fba6d65a11c07f252e654dd 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
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
71f2cf116aab893e224056c38ab146bd1538dd3e 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
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
6d8b9b84ac83acfc193fd633ba961168867124fa 14-Sep-2011 Chia-chi Yeh <chiachi@android.com> Merge "RTP: Update parameters for larger packet intervals."
be57bfe853d07369f429b600039ea474b9ea5e31 07-Sep-2011 Chia-chi Yeh <chiachi@android.com> RTP: Update parameters for larger packet intervals.

Also remove some duplicated code.

Change-Id: I64576e5442a962eb4b0dfa83b52a8127567ba597
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
81a5ec5b94d889656cc2f212102c441b91b2e3c0 08-Sep-2011 Chia-chi Yeh <chiachi@android.com> Merge "RTP: support payloads with larger packetization interval."
35d05dcba1e829782813b6ec21afceb5cffc22e6 06-Sep-2011 Chia-chi Yeh <chiachi@android.com> RTP: support payloads with larger packetization interval.

RFC 3551 section 4.2 said that a receiver should accept packets
representing between 0 and 200ms of audio data. Now we add the
ability to decode multiple frames in a payload as long as the
jitter buffer is not full. This change covers G711, GSM, and
GSM-EFR. AMR will be added later.

Bug: 3029736
Change-Id: Ifd194596766d14f02177925c58432cd620e44dd7
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
74e0a990ae3196b8195db2a399c22516c7dd0823 29-Aug-2011 Eric Laurent <elaurent@google.com> VoIP JNI: Force AEC on for tuna board

Force AEC on for tuna board because of the strong feedback
of Rx audio path, even when playing over earpiece or headset.

Change-Id: I9c14257d56103ba82d6cdb0b7d5a3f315638136e
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
5fb3ba60afe68060ac1ed291f4a108fef8c622c3 25-Jul-2011 Eric Laurent <elaurent@google.com> Issue 3370834: No Echo canceler for SIP

Added detection of platfrom AEC in AudioGroup. If an AEC
is present, the SIP stack will use it, otherwise the echo suppressor
of the stack will be used.

Change-Id: I4aa45a8868466120f5f9fae71b491fe4ae1162c2
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
34bb419e5946ab28112e9e27a4d1b3928d31e0e2 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>
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
24fc2fb1c541e954b83fd31ea9f786a5e9b45501 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>
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
7a492a9ad42947a3a7b777b0eb6eec56f5bb942b 05-Apr-2011 Eric Laurent <elaurent@google.com> am b7a76e84: am a482d83c: Merge "Issue 4157048: mic gain for VoIP/SIP calls." into gingerbread

* commit 'b7a76e84fde7fe534d46aaaa71e3224798354009':
Issue 4157048: mic gain for VoIP/SIP calls.
d7a724e6d89420408200c20937baa3b2bd902742 30-Mar-2011 Eric Laurent <elaurent@google.com> Issue 4157048: mic gain for VoIP/SIP calls.

Herring board exhibits a strong echo even in non speakerphone modes.
To compensate the lack of AEC or AES when not in speakerphone, the mic gain
had been reduced in the ADC. But this has an adverse effect on other VoIP applications
that have their own AEC and are penalized by the weak mic gain.

This workaround enables an acceptable mic gain for other VoIP apps while offering a
SIP call experience which is not worse than it was with the residual echo that was
present even with mic gain reduction.

Change-Id: I33fd37858758e94e42ef5b545d3f0dc233220bf1
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
2ba92c71b5684dce700cf848bf157153c156df1d 15-Nov-2010 Jean-Michel Trivi <jmtrivi@google.com> do not merge bug 3370834 Cherrypick from master

Cherripick from master CL 79833, 79417, 78864, 80332, 87500

Add new audio mode and recording source for audio communications
other than telelphony.

The audio mode MODE_IN_CALL signals the system the device a phone
call is currently underway. There was no way for audio video
chat or VoIP applications to signal a call is underway, but not
using the telephony resources. This change introduces a new mode
to address this. Changes in other parts of the system (java
and native) are required to take this new mode into account.
The generic AudioPolicyManager is updated to not use its phone
state variable directly, but to use two new convenience methods,
isInCall() and isStateInCall(int) instead.

Add a recording source used to designate a recording stream for
voice communications such as VoIP.

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.

SIP calls should set the audio mode to MODE_IN_COMMUNICATION,
Audio mode MODE_IN_CALL is reserved for telephony.

SIP: Enable built-in echo canceler if available.
1. Always initialize AudioRecord with VOICE_COMMUNICATION.
2. If echo canceler is available, disable our echo suppressor.

Note that this CL is intentionally not correcting the
getAudioSourceMax() return value in MediaRecorder.java as the
new source is hidden here.

Change-Id: Ie68cd03c50553101aa2ad838fe9459b2cf151bc8
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
d87be273aaea32995c87a6cbc6250cbfeeddd84d 06-Jan-2011 Chia-chi Yeh <chiachi@android.com> Enable built-in echo canceler if available.

1. Always initialize AudioRecord with VOICE_COMMUNICATION.
2. If echo canceler is available, disable our echo suppressor.

Change-Id: Idf18d3833189a8478c1b252ebe6ce55e923280b3
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
d0da38079617e867db5d2bbdaaaa4cd49027d4eb 05-Jan-2011 Chia-chi Yeh <chiachi@android.com> am dc78e3fe: am 3cf71376: RTP: Send silence packets on idle streams for every second.

* commit 'dc78e3fe7f2ffbc810cd54e86e3a83e279d74984':
RTP: Send silence packets on idle streams for every second.
3cf71376421f942d06b30101fbf0df7f3b23fbdd 04-Jan-2011 Chia-chi Yeh <chiachi@android.com> RTP: Send silence packets on idle streams for every second.

Originally a stream does not send packets when it is receive-only or there is
nothing to mix. However, this causes some problems with certain firewalls and
proxies. A firewall might remove a port mapping when there is no outgoing
packet for a preiod of time, and a proxy might wait for incoming packets from
both sides before start forwarding. To solve these problems, we send out a
silence packet on the stream for every second. It should be good enough to
keep the stream alive with relatively low resources.

Bug: 3119690
Change-Id: Ib9c55e5dddfba28928bd9b376832b68bda24c0e4
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
53aa6ef70d8692277f9403f94d43918ad9712dd0 30-Nov-2010 Chia-chi Yeh <chiachi@android.com> RTP: Prepare to unhide the APIs.

Polish things a little bit.

Change-Id: I2c3cea8b34b9c858879bc722ea1f38082ba22b8d
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
8a68b52b9873f1f3d7114576c9f39a2b7b402152 21-Oct-2010 Chia-chi Yeh <chiachi@android.com> RTP: Fix non-zero DC in EchoSuppressor caused while aggregating samples.

Rewrite using integer arithmetic to get full 32-bit precision instead
of 23-bit in single precision floating-points.

Bug: 3029745
Change-Id: If67dcc403923755f403d08bbafb41ebce26e4e8b
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
a8a10096a1501e901676632d78f699cdebe9f4f6 04-Oct-2010 Chia-chi Yeh <chiachi@android.com> RTP: Add a baseline echo suppressor.

Change-Id: I832f1f572f141fd928afe671b12d0b59f2a8e0b1
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
67ecb5b90c7d944a485ed35f3e968ab0ae49f5b4 01-Oct-2010 Chia-chi Yeh <chiachi@android.com> RTP: Start AudioRecord before AudioTrack to avoid being disabled.

Change-Id: I96be89fda41d77e2cf5bfc1c2f14e2b109001b57
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
21ae1ad6a695d6f1f253797fcf2a77b975b82cd3 30-Sep-2010 Chia-chi Yeh <chiachi@android.com> RTP: Minor fixes with polishing.

Change-Id: I50641373989e512fb489b5017edbcfd7848fe8b9
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
3520bd43139f4571cf96af126dba13681633bcb0 30-Sep-2010 Chia-chi Yeh <chiachi@android.com> RTP: Adjust the jitter buffer to 512ms.

Change-Id: Ia91c1aa1a03b65dbd329ea98383f370844e2b0c0
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
fe5298992a52f93bb8365d345cdd82d88a4b49f2 29-Sep-2010 Chia-chi Yeh <chiachi@android.com> RTP: Revise the workaround of private addresses and fix bugs.

Change-Id: Ie654b569f47049aa452eca8d3e6d4a98ac18469c
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
9083c84af1742cfc9228add21ec72310e67e6086 28-Sep-2010 Chia-chi Yeh <chiachi@android.com> RTP: Delay the initialization of AudioTrack and AudioRecord.

Related to http://b/3043844.

Change-Id: I2c4fd9f64e6eba597d68b2ea1ceeff83103697db
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
bd2294204e3edaede3fe81eb9b11c05c4fafe627 23-Sep-2010 Chung-yih Wang <cywang@google.com> Fix the unhold issue especially if one is behind NAT.

+call startAudio() when call is established.

Change-Id: Ib6a1e34017fb83007ce275da1991058e8b803833
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
7a69aeffda29bd1a7ebc5993eeb4e9ee224f096a 22-Sep-2010 repo sync <chiachi@android.com> RTP: Add log throttle for "no data".

Change-Id: I14d9886a40fa780514cbc6c5bac6fb2a670f55f4
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
4033a67d0e99d422336574fc5c982d349632b117 16-Sep-2010 Chia-chi Yeh <chiachi@android.com> RTP: Update native part to reflect the API change.

Change-Id: Ic2858920ad77d7312f2429f89ca509a481363431
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
557b04de23238fb496b5ca58e21331c842e95660 08-Sep-2010 Chia-chi Yeh <chiachi@android.com> RTP: prevent buffer overflow in AudioRecord.

This change simply reduces the receive timeout of DeviceSocket. It works
because AudioRecord will block us till there is enough data, which makes
AudioSocket overlap AudioRecord.

Change-Id: I4700224fb407e148ef359a9d99279e10240128d0
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
7fa7ee11f6c274903241897c284337ba8b158988 26-Aug-2010 Chia-chi Yeh <chiachi@android.com> Revert "RTP: integrate the echo canceller from speex."

This reverts commit 4ae6ec428f3570b9020b35ada6a62f94af66d888.
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
4ae6ec428f3570b9020b35ada6a62f94af66d888 24-Aug-2010 Chia-chi Yeh <chiachi@android.com> RTP: integrate the echo canceller from speex.

Currently the filter_length is set to one second.
Will change that when we have a better idea.

Change-Id: Ia942a8fff00b096de8ff0049a448816ea9a68068
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
2880ef86e5210832ef44f2d45c46ada1891372e5 24-Aug-2010 Chia-chi Yeh <chiachi@android.com> RTP: reduce the latency by overlapping AudioRecord and AudioTrack.

Change-Id: I00d750ee514ef68d5b2a28bd1893417ed70ef1fc
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
b8790323473bef75a27d2da6fde2497b3bfe19eb 19-Aug-2010 Chia-chi Yeh <chiachi@android.com> RTP: fix few leaks when fail to add streams into a group.

Change-Id: Iefb3fe219ad48641da37a83c8d14e9ebf1d3086c
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
3459d3037cc0c482a27422f1cc000b5e9d289ae8 18-Aug-2010 Chia-chi Yeh <chiachi@android.com> RTP: remove froyo-compatible code.

Change-Id: I6822a4e4749a5909959658c29253242b4018aeb0
/frameworks/base/voip/jni/rtp/AudioGroup.cpp
4c5d28cee0537c83ff0e5bc0daaae78f68dfc7c8 06-Aug-2010 Chia-chi Yeh <chiachi@android.com> RTP: move into frameworks.

Change-Id: Ic9c17b460448c746b21526ac10b647f281ae48e9
/frameworks/base/voip/jni/rtp/AudioGroup.cpp