Commit Graph

579 Commits

Author SHA1 Message Date
c420a86f4c Change name for local CriticalSectionScoped variable
Tools were complaining about (harmless) shadowing of variable names.

This is a follow-up to
https://webrtc-codereview.appspot.com/41659004/#msg8

BUG=3926
TBR=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37099004

Cr-Commit-Position: refs/heads/master@{#8225}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8225 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-02 10:36:39 +00:00
a1dfbf1e5c WebRtcG722_Decode: Input array should be const uint8_t[]
BUG=909
R=henrik.lundin@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/38799004

Cr-Commit-Position: refs/heads/master@{#8224}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8224 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-02 08:58:39 +00:00
026b892e72 Using << on an int8_t or uint8_t will output a character rather than a number.
Places that do this need to cast to int to get the desired behavior.

BUG=none
TEST=none
R=henrik.lundin@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/40579004

Cr-Commit-Position: refs/heads/master@{#8223}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8223 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-30 19:54:19 +00:00
05db352f56 Fix a bug in ACM test channel
The test code could read outside the allocated memory. The bug could up
until now not be triggered by the production code, but coming changes
would uncover it.

COAUTHOR=kwiberg@webrtc.org
R=minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34929004

Cr-Commit-Position: refs/heads/master@{#8216}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8216 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-30 13:04:16 +00:00
3154a1cf9d Reland r8210 "Add a new parameter to ACMGenericCodec constructor""
This effectively reverts r8211.

The problem with r8210 was that the change in constructor signature was not done for other codec selections that then default one. That is, some code that was hidden under #ifdef did not get updated. This is now fixed.

BUG=4228
COAUTHOR=kwiberg@webrtc.org
TBR=minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37879004

Cr-Commit-Position: refs/heads/master@{#8215}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8215 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-30 12:30:22 +00:00
4455f6243a WebRtcIsacfix_Time2SpecNeon and _Spec2TimeNeon: Fix stack alignment
The ABI
(http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042e/IHI0042E_aapcs.pdf)
says to 8-byte-align stack frames. That means we have to push an even
number of registers on function entry if we want to be able to make
subroutine calls without adjusting the stack first.

BUG=4177
R=bjornv@webrtc.org, henrik.lundin@webrtc.org, zhongwei.yao@arm.com

Review URL: https://webrtc-codereview.appspot.com/33149004

Cr-Commit-Position: refs/heads/master@{#8214}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8214 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-30 11:58:15 +00:00
6752b85ff7 Revert r8210 "Add a new parameter to ACMGenericCodec constructor"
The change failed to compile on some bots.

TBR=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34949004

Cr-Commit-Position: refs/heads/master@{#8211}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8211 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-30 06:36:41 +00:00
c3643f2fe3 Add a new parameter to ACMGenericCodec constructor
Adding the same parameter to the constructors in all subclasses.

This change is in preparation for changes to come where this will be
needed.

BUG=4228
COAUTHOR=kwiberg@webrtc.org
R=minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34849004

Cr-Commit-Position: refs/heads/master@{#8210}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8210 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-30 06:15:18 +00:00
13980253f0 Add new members to AudioEncoderOpus::Config
Adding fec_enabled and max_playback_rate_hz.

BUG=3926
COAUTHOR:kwiberg@webrtc.org

R=minyue@webrtc.org, tina.legrand@webrtc.org
TBR=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39659004

Cr-Commit-Position: refs/heads/master@{#8207}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8207 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 16:09:08 +00:00
a33f05e8d7 Re-land "Remove <(webrtc_root) from source file entries."
Changes differing from https://webrtc-codereview.appspot.com/37859004:
* I put the include_tests==1 stuff of audio_coding.gypi in its
  own audio_coding_tests.gypi file, including the Android and isolate
  targets which were incorrectly located in the previous CL
* I moved the bwe utilities in remote_bitrate_estimator.gypi
  into include_tests==1 since they depend on test.gyp after I
  cleaned up the duplicated inclusion of rtp_file_reader.cc

R=stefan@webrtc.org
TBR=tina.legrand@webrtc.org
TESTED=Passing gyp and compile using:
webrtc/build/gyp_webrtc -Dinclude_tests=1
webrtc/build/gyp_webrtc -Dinclude_tests=0
I also setup a Chromium checkout with my checkout mounted in
third_party/webrtc and ran build/gyp_chromium successfully.

BUG=4185

Review URL: https://webrtc-codereview.appspot.com/33159004

Cr-Commit-Position: refs/heads/master@{#8205}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8205 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 14:30:41 +00:00
bdebccf384 Fix a number of things in AudioEncoderDecoderIsac*
- Add max_bit_rate and max_payload_size_bytes to config structs.
- Fix support for 48 kHz sample rate.
- Fix iSAC-RED.
- Add method UpdateDecoderSampleRate().
- Update locking structure with a separate lock for local member
variables used by the encoder methods.

BUG=3926
COAUTHOR:kwiberg@webrtc.org

R=minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/41659004

Cr-Commit-Position: refs/heads/master@{#8204}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8204 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 14:11:09 +00:00
4161715e3f Remove ChangeUniqueID.
This fixes a two year old TODO of deleting dead code :)
In cases where the _id or id_ member variable is being used for tracing,
I changed the member to at least be const.

It doesn't look like id's are that useful anymore so maybe the next step is to get rid of them.

BUG=
R=henrika@webrtc.org, perkj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37849004

Cr-Commit-Position: refs/heads/master@{#8201}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8201 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 12:14:13 +00:00
1ece0cbbec Revert "Remove <(webrtc_root) from source file entries."
And the follow-up fix in r8198 that was not sufficient.
Reason: breaks Chromium bots runhooks (GYP).

I will have to try some more to make sure I don't
include test code, since include_tests==0 in Chromium.

TBR=andrew@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37039004

Cr-Commit-Position: refs/heads/master@{#8200}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8200 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 12:02:42 +00:00
a87c398a41 Move audio_codec_speed_tests into include_tests==1 condition.
I made a mistake in https://webrtc-codereview.appspot.com/37859004
and moved this target out of the include_tests==1 condition.
This moves it back in.

TBR=tina.legrand@webrtc.org
BUG=4185

Review URL: https://webrtc-codereview.appspot.com/33139004

Cr-Commit-Position: refs/heads/master@{#8198}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8198 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 10:39:45 +00:00
2d2a1f9f05 Remove <(webrtc_root) from source file entries.
This required to move the AGC tools source files
into webrtc/tools and create a new agc_test_utils target.

Since audio_codec_speed_tests.gypi referenced sources above,
the best approach I could come up with was to add an audio_coding.gypi
file at a higher level and move the targets in there (+ the includes from
modules.gyp which is an improvement IMO).

I also added a PRESUBMIT.py check to prevent new source
entries being added with <(webrtc_root) in the path.

BUG=4185
R=andrew@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37859004

Cr-Commit-Position: refs/heads/master@{#8197}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8197 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 10:24:44 +00:00
7d2b6a9346 Enable Clang warning implicit-fallthrough and annotate the code.
BUG=4242
R=henrik.lundin@webrtc.org, stefan@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34899004

Cr-Commit-Position: refs/heads/master@{#8187}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8187 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-28 18:38:13 +00:00
664ccb7d8d Reland r8125: Modify some tests to never use DTX disable mode
DTX disable mode will be removed as a part of the ACM redesign work.

This CL effectively reverts r8129, and relands r8125, but now using
assert instead of DCHECK.

COAUTHOR:kwiberg@webrtc.org
TBR=henrika@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37839004

Cr-Commit-Position: refs/heads/master@{#8185}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8185 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-28 14:49:12 +00:00
4aecd008dd Add support for 40 and 60 ms frames to AudioEncoderIlbc
BUG=3926
COAUTHOR:kwiberg@webrtc.org

R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37789004

Cr-Commit-Position: refs/heads/master@{#8182}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8182 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-28 13:16:44 +00:00
8bb32d600b Minor updates to AudioEncoderCng
Removing sample_rate_hz_ from AudioEncoderCng and from the config
struct. The sample rate will now be read from the underlying speech
codec.

BUG=3926
COAUTHOR:kwiberg@webrtc.org

R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/40559004

Cr-Commit-Position: refs/heads/master@{#8173}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8173 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-27 20:54:22 +00:00
478cedc055 Add new methods to AudioEncoder interface
The following three methods are added:
rtp_timestamp_rate_hz()
SetTargetBitrate()
SetProjectedPacketLossRate()

Default implementations are provided, and a few overrides are
implemented. AudioEncoderCopyRed and AudioEncoderCng propagate the new
methods to the underlying speech codec.

BUG=3926
COAUTHOR:kwiberg@webrtc.org

R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34049004

Cr-Commit-Position: refs/heads/master@{#8171}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8171 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-27 18:25:40 +00:00
4dba2e98a2 Consolidate anonymous namespace content and file-static methods to all be in the
anonymous namespace, in preparation for refactoring a few of the functions a
little.

No code change.

BUG=none
TEST=none
R=henrik.lundin@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/36949004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8155 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-26 19:59:32 +00:00
b6fab2b1cd Introduce rtc::CheckedDivExact
Use the new method to replace local ones in AudioEncoder{Opus,Isac}.

COAUTHOR:kwiberg@webrtc.org

R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34779004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8148 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-26 11:08:53 +00:00
ff108fe508 Revert 8125 "Modify some tests to never use DTX disable mode"
Broke compile on the Chromium FYI bots:
http://build.chromium.org/p/chromium.webrtc.fyi/builders/Win%20Builder/builds/3483
http://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac/builds/16028
http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux/builds/14293

Error:
In file included from ../../third_party/webrtc/voice_engine/channel.cc:13:
In file included from ../../third_party/webrtc/base/checks.h:22:
In file included from ../../third_party/webrtc/overrides/webrtc/base/logging.h:35:
../../base/logging.h:367:9:error: 'LOG' macro redefined [-Werror,-Wmacro-redefined]
#define LOG(severity) LAZY_STREAM(LOG_STREAM(severity), LOG_IS_ON(severity))
        ^
../../third_party/webrtc/system_wrappers/interface/logging.h:123:9: note: previous definition is here
#define LOG(sev) \
        ^
In file included from ../../third_party/webrtc/voice_engine/channel.cc:13:
In file included from ../../third_party/webrtc/base/checks.h:22:
../../third_party/webrtc/overrides/webrtc/base/logging.h:189:9:error: 'LOG_V' macro redefined [-Werror,-Wmacro-redefined]
#define LOG_V(sev) DIAGNOSTIC_LOG(sev, NONE, 0)
        ^
../../third_party/webrtc/system_wrappers/interface/logging.h:129:9: note: previous definition is here
#define LOG_V(sev) \
        ^
2 errors generated.

> Modify some tests to never use DTX disable mode
> 
> DTX disable mode will be removed as a part of the ACM redesign work.
> 
> COAUTHOR:kwiberg@webrtc.org
> 
> R=henrika@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/34769004

TBR=henrik.lundin@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/35859004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8129 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-22 19:02:03 +00:00
043db24767 Modify some tests to never use DTX disable mode
DTX disable mode will be removed as a part of the ACM redesign work.

COAUTHOR:kwiberg@webrtc.org

R=henrika@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34769004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8125 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-22 13:30:58 +00:00
fbd37bd737 Make iSAC SWB own its decoder
A bug in the ACM codec database caused iSAC-swb to behave differently
from iSAC-wb and -fb. With this fix, all iSAC codecs behave the same
with respect to decoder ownership.

R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/35809004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8120 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-22 08:16:29 +00:00
11af039590 Disable AcmSenderBitExactnessOldApi.Opus_stereo_20ms_voip on ARM64.
BUG=4199
R=henrik.lundin@webrtc.org, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37729004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8114 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-21 14:22:39 +00:00
7dba7860c7 Setting Opus target application.
This CL is to allow to set Opus target application at the creation of an encoder.

According to Opus spec, there are three applications:

OPUS_APPLICATION_VOIP
OPUS_APPLICATION_AUDIO
OPUS_APPLICATION_RESTRICTED_LOWDELAY

BUG=
R=henrik.lundin@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37479004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8103 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-20 16:01:50 +00:00
a32d15448d Disable tests failing on Android ARM64 (Nexus9).
BUG=4198,4199,4200
TBR=andrew@webrtc.org
TESTED=Printed using #pragma message to check that the define was properly used.

Review URL: https://webrtc-codereview.appspot.com/33919004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8090 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-19 12:46:01 +00:00
1f67b53c88 Remove dual stream functionality in ACM
This is old code that is no longer in use. The clean-up is part of the
ACM redesign work. With this change, there is no longer need for the
ProcessDualStream method, which is removed. Consequently, the method
ProcessSingleStream is renamed to Process.

BUG=3520
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39489004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8074 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-15 09:36:30 +00:00
6c3855258d Add WebRtcIsacfix_AllpassFilter2FixDec16Neon()'s intrinsics version.
This intrinsics version gives bit-exact result as the current C
code. And the performance is 14% better than current assembly
neon version, 3.4 times faster than current C version. The test runs
under Cortex-a53 aarch32 mode, other cpu should give similar performance
result.

Change-Id: Icce5eaf2e17790ce44513d52b53b9f600cc16f96

BUG=4002
R=andrew@webrtc.org, jridges@masque.com

Review URL: https://webrtc-codereview.appspot.com/36689004

Patch from Zhongwei Yao <zhongwei.yao@arm.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8070 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-15 02:56:06 +00:00
2ebfac5649 Remove COMPILE_ASSERT and use static_assert everywhere
COMPILE_ASSERT is no longer needed now that we have C++11's
static_assert.

R=aluebs@webrtc.org, andrew@webrtc.org, hellner@chromium.org, henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39469004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8058 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 10:51:54 +00:00
86e1e487e7 Move system_wrappers.gyp files to the proper directory.
Build targets should not refer to non-subpaths as was happening before when
 source/system_wrappers.gyp refers to ../interface/ files.

R=kjellander@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37609004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8057 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 09:30:52 +00:00
3df38b442f Unify the two copies of compile_assert.h
This patch basically deletes webrtc/base/compile_assert.h (which is
the more outdated copy) and moves
webrtc/system_wrappers/source/compile_assert.h to take its place.

R=aluebs@webrtc.org, andrew@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/36719004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8048 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-13 11:37:48 +00:00
16825b1a82 Use int64_t more consistently for times, in particular for RTT values.
Existing code was inconsistent about whether to use uint16_t, int, unsigned int,
or uint32_t, and sometimes silently truncated one to another, or truncated
int64_t.  Because most core time-handling functions use int64_t, being
consistent about using int64_t unless otherwise necessary minimizes the number
of explicit or implicit casts.

BUG=chromium:81439
TEST=none
R=henrik.lundin@webrtc.org, holmer@google.com, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31349004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8045 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-12 21:51:21 +00:00
2a26734f04 Partial revert of r7396
This change reverts a small part of what was done in r7396. It seems
like that change uncovered another issue with NEON.

BUG=4177,chrome-os-partner:31534
R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/33849004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8043 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-12 20:52:21 +00:00
c14e3572c6 common_audio: Made input signal const in WebRtcSplFilterMAFastQ12()
BUG=3353, 1133
TESTED=locally on Mac and trybots
R=henrik.lundin@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37499004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8037 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-12 05:50:52 +00:00
f3fd8e7cdf Add NEON intrinsics version for transform_neon
WebRtcIsacfix_Time2SpecNeon and WebRtcIsacfix_Spec2TimeNeon are added.
TransformTest in modules_unittests is passed on ARM32/ARM64 platform.

Initially reviewed here:
https://webrtc-codereview.appspot.com/36449004/

BUG=4002
R=andrew@webrtc.org, jridges@masque.com

Change-Id: I0920ff66a0a0f529707fd7e6619f91e271a47019

Review URL: https://webrtc-codereview.appspot.com/31309004

Patch from Yang Zhang <yang.zhang@arm.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8030 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-09 18:29:37 +00:00
8649fed1b8 GN: Fix Windows build.
This required a tiny include fix in
src/third_party/winsdk_samples/src
which was committed in
https://code.google.com/p/webrtc/source/detail?r=7951

This incorporates contribution from vchigrin@yandex-team.ru
in https://webrtc-codereview.appspot.com/29299004/

BUG=261,1348,4105
R=pbos@webrtc.org
TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/32889004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8027 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-08 21:22:01 +00:00
84d84471f5 Minor fixes regarding accumulator usage on MIPS platforms.
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/33729004

Patch from Ljubomir Papuga <lpapuga@mips.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7979 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-29 17:08:44 +00:00
1090a6eccf Remove obsolete target_arch == armv7.
Also, use arm_version >= 7 so things will continue to work when building
for ARMv8 and higher targets.

BUG=3906
R=kjellander@webrtc.org, tkchin@webrtc.org, zhongwei.yao@arm.com

Review URL: https://webrtc-codereview.appspot.com/38379004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7957 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 21:36:18 +00:00
eed7a22bbf Make an AudioEncoder subclass for iSAC redundant encoding
Adding unit test, too.

BUG=3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/36559005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7946 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 09:52:36 +00:00
cab1291745 Fixing the memory leak in AudioEncoderCopyRedDeathTest.NullSpeechEncoder
Re-enable the test and explicitly call delete on red, even though the
test should die in the AudioEncoderCopyRed cunstructor. Apparently,
things work a little differently under memcheck.

BUG=4108, 3926
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/38419004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7942 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 06:58:42 +00:00
eb544460e4 Rename _t struct types in audio_coding.
_t names are reserved in POSIX.

R=henrik.lundin@webrtc.org
BUG=162

Review URL: https://webrtc-codereview.appspot.com/34509004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7933 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-17 15:23:29 +00:00
e728ee03ba Remove or rename typedefs with _t prefixes.
_t prefixes are reserved for additional typenames in POSIX.

R=henrik.lundin@webrtc.org, hta@webrtc.org, stefan@webrtc.org
BUG=162

Review URL: https://webrtc-codereview.appspot.com/36559004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7931 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-17 13:43:55 +00:00
e102e8147b Enable the iSACfix AudioDecoder test (and make it work again)
As far as I can tell, the test should have been enabled again once
https://code.google.com/p/webrtc/issues/detail?id=1353 was fixed, but
it wasn't, and has rotted a bit as a result. I'm not sure why the
number of encoded bytes have changed, but the output seems to be
correct (EncodeDecodeTest encodes, decodes, and compares the result
with the original).

The DecodePlc change is necessary because r7912 added support for that
to the iSACfix AudioDecoder.

BUG=1353, 3926
R=henrik.lundin@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/28309004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7927 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-17 07:30:23 +00:00
a32487f97b Disable AudioEncoderCopyRedDeathTest.NullSpeechEncoder
Fails linux memcheck.

BUG=4108
TBR=turaj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29279004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7920 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-16 21:04:55 +00:00
c1c9291e9b Make an AudioEncoder subclass for RED
This class only supports the simple case of payload duplication. That
is, one single encoder is used, and the redundant payload is a one-step
delayed payload.

BUG=3926
R=kjellander@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31199004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7913 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-16 13:41:36 +00:00
88bdec8c3a AudioEncoder subclass for iSACfix
This patch refactors AudioEncoderDecoderIsac so that it can share
almost all code with the very similar AudioEncoderDecoderIsacFix.

BUG=3926
R=henrik.lundin@webrtc.org, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29259004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7912 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-16 12:49:37 +00:00
0b1534c52e Use int64_t for milliseconds more often, primarily for TimeUntilNextProcess.
This fixes a variety of MSVC warnings about value truncations when implicitly
storing the 64-bit values we get back from e.g. TimeTicks in 32-bit objects, and
removes the need for a number of explicit casts.

This also moves a number of constants so they're declared right where they're used, which is easier to read and maintain, and makes some of them of integral type rather than using the "enum hack".

BUG=chromium:81439
TEST=none
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/33649004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7905 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-15 22:09:40 +00:00
b413a30097 Add WebRtcIsacfix_FilterMaLoopNeon's intrinsics version.
This intrinsics version gives bit-exact result as the current assembly
neon code. And the performance is 38% better than current assembly
neon version, 5.92 times faster than current C version. The test runs
under Cortex-a53 aarch32 mode, other cpu should give similar performance
result.

BUG=4002
R=andrew@webrtc.org, jridges@masque.com

Change-Id: I257e33ef6d634a519fd71adc4f52b06dd655bd9d

Review URL: https://webrtc-codereview.appspot.com/32749004

Patch from Zhongwei Yao <zhongwei.yao@arm.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7891 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-15 07:23:49 +00:00