714 Commits

Author SHA1 Message Date
Henrik Lundin
fd32f35aff Reland r9159 "Adding a new constraint to set NetEq buffer capacity ..."
This reverts commit cdb47a4533b7b1e29e803ed6591a68bb1a4f1692.

Contains a tentative fix to the chrome build breakage caused by the
original change.

TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9164}
2015-05-10 09:03:00 +00:00
Henrik Lundin
cdb47a4533 Revert r9159 "Adding a new constraint to set NetEq buffer capacity ..."
This reverts commit 208a2294cde839025318f1b3d57559cb0611a4e7.
Breaks the Chrome build.

TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9161}
2015-05-08 12:03:46 +00:00
Henrik Lundin
208a2294cd Adding a new constraint to set NetEq buffer capacity from peerconnection
This change makes it possible to set a custom value for the maximum
capacity of the packet buffer in NetEq (the audio jitter buffer). The
default value is 50 packets, but any value can be set with the new
functionality.

R=jmarusic@webrtc.org, mflodman@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9159}
2015-05-08 10:58:51 +00:00
Henrik Lundin
83b5c053b9 Modify NetEqQualityTest
- Take input sample rate as parameter - provides resampling when needed.
- Add support for wav output.

BUG=2692
R=minyue@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9158}
2015-05-08 08:34:00 +00:00
Karl Wiberg
2ea71c3279 Replace ACMGenericCodec with CodecOwner and AudioEncoderMutable
CodecOwner is introduced here; AudioEncoderMutable was introduced in a
previous commit, but had no users until now. The only remaining task
for ACMGenericCodec was to construct and maintain the stack of speech,
CNG, and RED encoders. This task is now handled by the CodecOwner,
which is owned and used by the CodecManager.

COAUTHOR=henrik.lundin@webrtc.org
BUG=4228
R=jmarusic@webrtc.org, minyue@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9152}
2015-05-07 13:49:24 +00:00
Karl Wiberg
dcccab3ebb New interface: AudioEncoderMutable
With implementations for all codecs. It has no users yet. This new
interface is the same as AudioEncoder (in fact it is a subclass) but
it allows changing some parameters after construction.

COAUTHOR=henrik.lundin@webrtc.org
BUG=4228
R=jmarusic@webrtc.org, minyue@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9149}
2015-05-07 10:35:18 +00:00
Zhongwei Yao
f242e665b4 Replace asm NEON function by intrinsics implementation on ARMv7
Passed building isac_neon and modules_unittests on Android ARMv7.
Passed modules_unittests with following filters:
  --gtest_filter=FiltersTest*
  --gtest_filter=LpcMaskingModelTest*
  --gtest_filter=TransformTest*
  --gtest_filter=FilterBanksTest*

WebRtcIsacfix_CalculateResidualEnergyNeon is removed, refer more in
Issue 4224.

The old review url is at: https://webrtc-codereview.appspot.com/37259004/

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

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

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

Change-Id: I4c16e15930f1b3449d67b67bf023fac28121dff8
Cr-Commit-Position: refs/heads/master@{#9140}
2015-05-06 08:39:37 +00:00
Zhongwei Yao
589699eea2 Fix bug in transform_neon.c in iSAC codec.
The bug causes AcmReceiverBitExactness and AcmSenderBitExactness test
failed in modules_unittests.

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

Change-Id: I18b00056c53cf4158c186d449e5ab785065cca94

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

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

Cr-Commit-Position: refs/heads/master@{#9138}
2015-05-06 02:25:20 +00:00
Ivo Creusen
adf89b7e33 Added SetBitRate function to VoE API to allow changing the audio bitrate.
If the requested bitrate is not valid for the codec, the codec will decide on
an appropriate value.
Updated VoE command line tool to use new SetBitRate function.
Includes unittests for SetBitRate function.

BUG=
R=henrik.lundin@webrtc.org, henrika@webrtc.org, kwiberg@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9115}
2015-04-29 14:03:45 +00:00
Karl Wiberg
88de4792d0 AudioEncoderIsac: Print error code if CHECK for successful encoding fails
This will hopefully make the crash in bug 4577 easier to understand if
it happens again.

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

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

Cr-Commit-Position: refs/heads/master@{#9100}
2015-04-28 13:43:43 +00:00
Zhongwei Yao
e8a197bd07 Enable isac NEON building on Aarch64
Passed building isac_neon and modules_unittests on Android ARM64 and
ARMv7.
Passed modules_unittests with following filters:
--gtest_filter=FiltersTest*
--gtest_filter=LpcMaskingModelTest*
--gtest_filter=TransformTest*
--gtest_filter=FilterBanksTest*

WebRtcIsacfix_CalculateResidualEnergyNeon is not enabled due to Issue
4224.

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

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

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

Cr-Commit-Position: refs/heads/master@{#9092}
2015-04-28 06:42:04 +00:00
Karl Wiberg
d3e8eda839 (Re-land) AudioEncoderDecoderIsac: Merge the two config structs
This reverts commit 599beb86, which in turn reverted 7c324cac. What
makes it work this time is that we don't remove the option of setting
bit_rate to 0 in order to ask for the default value.

COAUTHOR=henrik.lundin@webrtc.org
BUG=4228, chromium:478161
R=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9068}
2015-04-23 12:06:46 +00:00
Karl Wiberg
92f9eacd13 g722 and red encoders: Use rtc::Buffer instead of scoped_ptr<uint8_t[]>
It's a win for red, and a toss-up for g722 since it never resizes its
buffer.

R=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9067}
2015-04-23 11:53:02 +00:00
Ivo Creusen
5a3178042b Reformatting RTPtimeshift.cc file.
BUG=2692
R=henrik.lundin@webrtc.org, kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9052}
2015-04-22 11:11:39 +00:00
Ljubomir Papuga
8f85dbcce4 Reduce the number of registers used in MIPS optimizations.
This change is needed by ChromeOS as it introduces -fno-omit-frame-pointer
flag (see code.google.com/p/chromium/issues/detail?id=477749). This causes
compile error for MIPS, as some MIPS optimization blocks use maximum possible
number of available registers.
Also, this change contains minor GN build fix for MIPS platform regarding the
pitch_filter_mips.c / pitch_filter_c.c file inclusion.

BUG=477749
R=andrew@webrtc.org, djordje.pesut@imgtec.com, tina.legrand@webrtc.org

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

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

Cr-Commit-Position: refs/heads/master@{#9047}
2015-04-21 23:52:26 +00:00
Ted Nakamura
599beb8687 Revert "AudioEncoderDecoderIsac: Merge the two config structs"
Reason for revert - breaks Hangouts

This reverts commit 7c324cac50ac38122b3f3b26455bc55ad834bfc0.

BUG=chromium:478161

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

Cr-Commit-Position: refs/heads/master@{#9030}
2015-04-17 21:13:59 +00:00
Henrik Lundin
b0b54259c3 Let rtp_analyze parse absolute sender time
Also change to use virtual_packet_length_bytes in order to print the
actual packet size of the complete packet even when the RTP file only
contains RTP headers.

BUG=2692
R=tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9025}
2015-04-17 09:46:56 +00:00
Karl Wiberg
7c324cac50 AudioEncoderDecoderIsac: Merge the two config structs
This patch merges the Config and ConfigAdaptive structs, so that iSAC
has just one config struct like the other codecs. Future CLs will make
use of this.

COAUTHOR=henrik.lundin@webrtc.org
BUG=4228
R=tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9015}
2015-04-16 04:00:18 +00:00
Henrik Lundin
93ef1d85fe Change ACM's CodecManager to hold one encoder instead of an array
With this change, the currently used encoder is held in a scoped_ptr.
iSAC is a special case, since the encoder instance is also a decoder
instance, so it may have to be available also if another send codec is
used. This is accomplished by having a separate scoped_ptr for iSAC.

Remove mirror ID from ACM codec database functions, and remove unused
functions from the database.

COAUTHOR=kwiberg@webrtc.org
BUG=4228
R=tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8982}
2015-04-13 07:31:17 +00:00
Bjorn Volcker
f2822edf61 Refactor audio_coding/codecs/isac/fix: Removed usage of macro WEBRTC_SPL_MUL_16_16_RSFT
The macro is defined as
#define WEBRTC_SPL_MUL_16_16_RSFT(a, b, c) \
(WEBRTC_SPL_MUL_16_16(a, b) >> (c))

where the latter macro is in C defined as
#define WEBRTC_SPL_MUL_16_16(a, b) \
((int32_t) (((int16_t)(a)) * ((int16_t)(b))))
(For definitions on ARMv7 and MIPS, see common_audio/signal_processing/include/spl_inl_{armv7,mips}.h)

The replacement consists of
- avoiding casts to int16_t if inputs already are int16_t
- adding explicit cast to <type> if result is assigned to <type> (other than int or int32_t)
- minor cleanups like remove of unnecessary parentheses and style changes
- removed commented code lines used during development
- excluded fft.c since there are neon optimizations used and a removal may cause a performance regression

BUG=3348, 3353
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8967}
2015-04-10 06:06:46 +00:00
Richard Coles
d417c93c10 Remove android_webview_build conditions.
Now that android_webview_build is no longer supported, remove build
conditionals referencing it and also remove the extra level of
indirection used to reference the cpufeatures target.

BUG=chromium:440793
R=henrika@webrtc.org

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

Patch from Richard Coles <torne@chromium.org>.

Cr-Commit-Position: refs/heads/master@{#8963}
2015-04-09 15:36:13 +00:00
Karl Wiberg
7f6c4d42a2 Fix clang style warnings in webrtc/modules/audio_coding/neteq
Mostly this consists of marking functions with override when
applicable, and moving function bodies from .h to .cc files.

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

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

Cr-Commit-Position: refs/heads/master@{#8960}
2015-04-09 13:44:23 +00:00
Peter Boström
64c0366908 Revert "Revert "Split EventWrapper in twain.""
This reverts commit cf3c83e76c273309558c86fda915410f65b7a899.

Reverting EventWrapper split did not fix the issue, re-landing.

BUG=chromium:470013
TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8946}
2015-04-08 09:24:25 +00:00
Karl Wiberg
2519c45d00 Fix clang style warnings in webrtc/modules/audio_coding
Mostly this consists of marking functions with override when
applicable, and moving function bodies from .h to .cc files.

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

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

Cr-Commit-Position: refs/heads/master@{#8938}
2015-04-07 14:13:10 +00:00
Bjorn Volcker
d4e75016a3 Refactor audio_coding/codecs/isac/fix: Removed usage of trivial macro WEBRTC_SPL_LSHIFT_W32()
The macro is defined as
#define WEBRTC_SPL_LSHIFT_W32(a, b) ((a) << (b))
hence trivial.
The macro name may in fact mislead the user to assume a cast/truncation to int32_t is done.
- Removing usage of it.
- Some style changes.

BUG=3348, 3353
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8918}
2015-04-02 04:59:44 +00:00
Minyue
cf3c83e76c Revert "Split EventWrapper in twain."
This reverts commit 9509fbfc301dd5412804ce5731afedc81480f2f8.

This is to debug a Chromium issue that WebRTC hangs if there is > 1 PeerConnection active in the browser on Win XP.

BUG=

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8912}
2015-04-01 14:31:45 +00:00
Zhongwei Yao
f809b9b38d Fix bug in WebRtcIsacfix_FilterMaLoopNeon.
Pass content_browsertests in Chromium. Performance test result (lower is
better):
C version: 100%
old intrinsics Neon version (with bug): 16.5%
new intrinsics Neon version: 18.0%
asm Neon version: 23.3%

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

Change-Id: Ia0a96ac237216b635fc528f67d39319cdf246281

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

Cr-Commit-Position: refs/heads/master@{#8907}
2015-04-01 09:43:22 +00:00
Andrew MacDonald
2c9c83d7ec Remove non-functional asynchronous resampling mode.
A few other cleanups, most notably using a sane parameter to specify the
number of channels.

BUG=chromium:469814
R=tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8894}
2015-03-30 17:08:28 +00:00
Henrik Lundin
45c6449114 Introduce CodecManager and move code from AudioCodingModuleImpl
This change essentially divides AudioCodingModuleImpl into two parts:
one is the code related to managing codecs, now moved into CodecManager,
and the other is what remains in AudioCodingModuleImpl.

This change also removes AudioCodingModuleImpl::InitializeSender. The
function was essentially no-op, since it was always called immediately
after construction.

COAUTHOR=kwiberg@webrtc.org
BUG=4228
R=minyue@webrtc.org, tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8893}
2015-03-30 17:00:54 +00:00
Henrik Lundin
22e209d4f8 Introduce AudioCodingModuleImpl::current_encoder_
This replaces direct reference into the codecs_ array in many places.
The variables current_send_codec_idx_ and send_codec_registered_ are
replaced.

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

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

Cr-Commit-Position: refs/heads/master@{#8890}
2015-03-30 13:28:19 +00:00
Henrik Lundin
582f80e95c Clamp decoder sample rate to 32000 in iSAC
We want to crate the illusion that iSAC supports 48000 Hz decoding,
while in fact it outputs 32000 Hz. This is the iSAC fullband mode.

Currently this is (also) handled by higher layers, but in future
changes this will not be the case.

R=tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8889}
2015-03-30 13:01:47 +00:00
Jelena Marusic
a990784da3 AcmReceiver: index decoders by payload type instead of ACM codec ID
Change internal indexing of registered decoders. It makes sense because payload type is unique, while ACM codec ID may not be. This is a step towards allowing for addition of external decoders.

R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8867}
2015-03-26 13:01:37 +00:00
tommi@webrtc.org
9509fbfc30 Split EventWrapper in twain.
I'm splitting the timer functions in EventWrapper into a separate interface.
- Users of the timer functions have different needs than users of a generic event
- Providing a default implementation for EventWrapper that simply uses rtc::Event.

This means that clients of WebRTC that don't use the relatively few classes, typically rendering classes, that depend on the event timer functionality, also don't pull in dependencies on multimedia timers.

R=mflodman@webrtc.org, mflodman
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8833}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8833 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-23 16:25:46 +00:00
minyue@webrtc.org
41d2befe9f Limit RED audio payload to narrow band.
In SDP, RED audio codec has its own sample rate. Currently, we offer RED/8000 (8 kHz). But the actual send codec can violate this sample rate. The way to solve it is to introduce more RED payload types, e.g., RED/16000, RED/32000.

As a first step towards that, we, in this CL, limit the current RED (RED/8000) to work only with 8 kHz codecs.

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

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

Cr-Commit-Position: refs/heads/master@{#8830}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8830 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-23 12:58:17 +00:00
henrik.lundin@webrtc.org
09b6ff9460 Disable PLC for iSAC
A codec's packet-loss concealer is called once from NetEq before
decoding the first packet after a packet loss. The purpose is not to
use the PLC output, but to prepare the state of the decoder such that
it may recover faster after the loss. However, this effect is not
achieved by calling iSAC's PLC. Also, there are some problems with the
fixed-point implementation of the PLC (see the associated bug).

BUG=4423
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8827}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8827 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-23 12:24:14 +00:00
jmarusic@webrtc.org
aa0bbab8ec Fix build failure
There was a build failure due to including checks.h. Removed the include.
TBR=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8825}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8825 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-23 11:43:14 +00:00
jmarusic@webrtc.org
a4bef3e6c0 AcmReceiver: use std::map instead of an array to keep the list of decoders
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8824}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8824 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-23 11:20:31 +00:00
tommi@webrtc.org
38492c5b6f Re-land 8810 "- Add a SetPriority method to ThreadWr..."
> Revert 8810 "- Add a SetPriority method to ThreadWrapper"
> Seeing if this is causing roll issues.
> 
> > - Add a SetPriority method to ThreadWrapper
> > - Remove 'priority' from CreateThread and related member variables from implementations
> > - Make supplying a name for threads, non-optional
> > 
> > BUG=
> > R=magjed@webrtc.org
> > 
> > Review URL: https://webrtc-codereview.appspot.com/44729004
> 
> TBR=tommi@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/48609004

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8819}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8819 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-22 14:42:46 +00:00
tommi@webrtc.org
90a1cb4630 Revert 8810 "- Add a SetPriority method to ThreadWrapper"
Seeing if this is causing roll issues.

> - Add a SetPriority method to ThreadWrapper
> - Remove 'priority' from CreateThread and related member variables from implementations
> - Make supplying a name for threads, non-optional
> 
> BUG=
> R=magjed@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/44729004

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8818}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8818 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-22 14:34:46 +00:00
tommi@webrtc.org
b6817d793f - Add a SetPriority method to ThreadWrapper
- Remove 'priority' from CreateThread and related member variables from implementations
- Make supplying a name for threads, non-optional

BUG=
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8810}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8810 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-20 15:52:43 +00:00
bjornv@webrtc.org
6069032ebb Refactor audio_coding/isac: removed usage of macro WEBRTC_SPL_LSHIFT_W32
The macro is defined as
#define WEBRTC_SPL_LSHIFT_W32(a, b) ((a) << (b))
It is a trivial operation that need no macro. In fact it may be confusing for to the user, since it can be interpreted as having an implicit cast to int32_t.

BUG=3348,3353
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8801}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8801 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-20 07:03:41 +00:00
bjornv@webrtc.org
4ab23d0e8f Refactor audio_coding/ilbc: removes usage of macro WEBRTC_SPL_LSHIFT_W32
The macro is defined as
#define WEBRTC_SPL_LSHIFT_W32(a, b) ((a) << (b))
It is a trivial operation that need no macro. In fact it may be confusing for to the user, since it can be interpreted as having an implicit cast to int32_t.

Also removes unnecessary casts to int32_t from int16_t.

BUG=3348,3353
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8800}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8800 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-20 06:01:43 +00:00
tommi@webrtc.org
361981faa8 Use scoped_ptr for ThreadWrapper::CreateThread.
BUG=
R=henrika@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8794}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8794 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-19 14:45:42 +00:00
jmarusic@webrtc.org
9afaee74ab Reland 8749: AudioEncoder: return EncodedInfo from Encode() and EncodeInternal()
Old review at:
https://webrtc-codereview.appspot.com/43839004/

R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8788}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8788 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-19 08:51:20 +00:00
minyue@webrtc.org
8f76cd25ec Renaming neteq_opus_fec_quality_test.
neteq_opus_fec_quality_test has been modified to test more configurations of Opus than only FEC. It makes sense to rename it to neteq_opus_quality_test. This was planned in

https://webrtc-codereview.appspot.com/45619004/

but was forgotten. This CL handles it, and makes it easy for review.

BUG=
R=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8782}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8782 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-18 20:44:26 +00:00
henrik.lundin@webrtc.org
6dba1ebd14 Make AudioDecoder stateless
The channels_ member varable is removed from the base class, and the
associated accessor function is changed to Channels() which is a pure
virtual function.

R=jmarusic@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8775}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8775 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-18 09:48:12 +00:00
henrik.lundin@webrtc.org
fc562e0a56 Delete ACMGenericCodec::Encode and use AudioEncoder::Encode directly
Move timestamp conversion out of ACMGenericCodec. Also remove lock
from ACMGenericCodec since the instance is always protected by
acm_crit_sect_ in AudioCodingModuleImpl.

Restructuring the code in AudioCodingModuleImpl::Encode to streamline
the use of locks.

R=minyue@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8773}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8773 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-18 07:32:41 +00:00
tommi@webrtc.org
019955d770 Revert 8749 "We changed Encode() and EncodeInternal() return typ..."
The reason is that this cl adds a static initializer so we can't roll webrtc into Chromium.
See audio_encoder.cc and 'sizes' regression here:
http://build.chromium.org/p/chromium/builders/Linux%20x64/builds/186

> We changed Encode() and EncodeInternal() return type from bool to void in this issue:
> https://webrtc-codereview.appspot.com/38279004/
> Now we don't have to pass EncodedInfo as output parameter, but can return it instead. This also adds the benefit of making clear that EncodeInternal() needs to fill in this info.
> 
> R=kwiberg@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/43839004

TBR=jmarusic@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8772}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8772 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-18 06:38:40 +00:00
minyue@webrtc.org
7c112f3e5a Adding build_opus as a switch in GYP.
This is to allow not building Opus. On non-chromium non-gyp chases, one can let WebRTC depend on other Opus builds.

BUG=
R=kjellander@webrtc.org, tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8754}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8754 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-17 14:05:18 +00:00
jmarusic@webrtc.org
0cb612b43b We changed Encode() and EncodeInternal() return type from bool to void in this issue:
https://webrtc-codereview.appspot.com/38279004/
Now we don't have to pass EncodedInfo as output parameter, but can return it instead. This also adds the benefit of making clear that EncodeInternal() needs to fill in this info.

R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8749}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8749 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-17 12:13:13 +00:00