226 Commits

Author SHA1 Message Date
ehmaldonado
f6a861ab6c Remove remains of webrtc/base
All downstream code have been updated to the new location.

In PRESUBMIT.py:
* Remove webrtc/rtc_base from CPP_BLACKLIST
* Add webrtc/rtc_base to LEGACY_API_DIRS

Fix some duplicated paths in
webrtc/modules/audio_processing/test/conversational_speech/BUILD.gn

BUG=webrtc:7634
TBR=kwiberg@webrtc.org

Review-Url: https://codereview.webrtc.org/2976293002
Cr-Commit-Position: refs/heads/master@{#19094}
2017-07-19 17:40:47 +00:00
tschumim
e76f55e3bf Disable flaky NoBandwidthDropAfterDtx test.
BUG=chromium:744695

Review-Url: https://codereview.webrtc.org/2978323002
Cr-Commit-Position: refs/heads/master@{#19092}
2017-07-19 14:52:47 +00:00
saza
c58f8c0962 Adds a histogram metric tracking for how long audio RTP packets are sent
through streams related to a call object.

The Call object does not know directly when packets pass through it, only which
AudioSendStreams are used. Each AudioSendStream has a pointer to the Transport
object through which its packets are send.

This CL:
By registering an internal wrapper class, TimedTransport, the AudioSendStream
can stay up-to-date on when packets have passed through its Transport. This
lifetime (as an interval) is then queried by the Call when the AudioSendStream
is destroyed. When Call is destroyed, all streams are guaranteed to have been
destroyed and hence Call is up-to-date on packet activity.

The class TimeInterval keeps the code in Call and AudioSendStream smaller, with
fewer get methods in their APIs and less code for updating values.

Also modifies the unit test for AudioSendStream: it previously enforced that
the stream registers (with its channel proxy) the same transport that it was
constructed with.

BUG=webrtc:7882

Review-Url: https://codereview.webrtc.org/2979833002
Cr-Commit-Position: refs/heads/master@{#19087}
2017-07-19 07:39:19 +00:00
tschumim
d98d38c060 Don't run NoBandwidthDropAfterDtx test on andriod because it's flaky.
BUG=None

Review-Url: https://codereview.webrtc.org/2977233002
Cr-Commit-Position: refs/heads/master@{#19057}
2017-07-17 15:19:27 +00:00
tschumim
9d11764344 Reimplemeted "Test and fix for huge bwe drop after alr state"
BUG=webrtc:7746

Test and fix for huge bwe drop after alr state.

BUG=webrtc:7746

Review-Url: https://codereview.webrtc.org/2931873002
Cr-Commit-Position: refs/heads/master@{#18692}
Committed: 37aa8ba616

patch from issue 2931873002 at patchset 320001 (http://crrev.com/2931873002#ps320001)

Review-Url: https://codereview.webrtc.org/2970653004
Cr-Commit-Position: refs/heads/master@{#19055}
2017-07-17 08:41:41 +00:00
zstein
e76bd3aa43 Adding stats that can be used to compute output audio levels as described here https://w3c.github.io/webrtc-stats/#dom-rtcmediastreamtrackstats-totalaudioenergy.
BUG=webrtc:7982

Review-Url: https://codereview.webrtc.org/2964593002
Cr-Commit-Position: refs/heads/master@{#19027}
2017-07-14 19:17:49 +00:00
jianjun.zhu
c024740b5e Use relative paths in GN files.
BUG=webrtc:7952
TBR=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2974863003
Cr-Commit-Position: refs/heads/master@{#18970}
2017-07-11 13:20:45 +00:00
ehmaldonado
370dd47973 Revert of Remove remains of webrtc/base (patchset #7 id:120001 of https://codereview.webrtc.org/2973183002/ )
Reason for revert:
Breaks lots of downstream projects.

Original issue's description:
> Remove remains of webrtc/base
>
> All downstream code have been updated to the new location.
>
> In PRESUBMIT.py:
> * Remove webrtc/rtc_base from CPP_BLACKLIST
> * Add webrtc/rtc_base to LEGACY_API_DIRS
>
> Fix some duplicated paths in
> webrtc/modules/audio_processing/test/conversational_speech/BUILD.gn
>
> BUG=webrtc:7634
> TBR=kwiberg@webrtc.org
>
> Review-Url: https://codereview.webrtc.org/2973183002
> Cr-Commit-Position: refs/heads/master@{#18948}
> Committed:
9483b49baf

TBR=kwiberg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7634

Review-Url: https://codereview.webrtc.org/2976633002
Cr-Commit-Position: refs/heads/master@{#18949}
2017-07-10 12:58:42 +00:00
ehmaldonado
9483b49baf Remove remains of webrtc/base
All downstream code have been updated to the new location.

In PRESUBMIT.py:
* Remove webrtc/rtc_base from CPP_BLACKLIST
* Add webrtc/rtc_base to LEGACY_API_DIRS

Fix some duplicated paths in
webrtc/modules/audio_processing/test/conversational_speech/BUILD.gn

BUG=webrtc:7634
TBR=kwiberg@webrtc.org

Review-Url: https://codereview.webrtc.org/2973183002
Cr-Commit-Position: refs/heads/master@{#18948}
2017-07-10 11:50:54 +00:00
peah
e67bedbac3 External APM usage downstream dependency support cleanup
This CL removes code that supported the now removed
downstream dependencies in the support for using an
external audio processing module.

BUG=webrtc:7939

Review-Url: https://codereview.webrtc.org/2969213002
Cr-Commit-Position: refs/heads/master@{#18929}
2017-07-07 11:25:11 +00:00
Edward Lemur
c20978e581 Rename webrtc/base -> webrtc/rtc_base
NOPRESUBMIT=True # cpplint errors that aren't caused by this CL.
NOTRY=True
NOTREECHECKS=True
TBR=kwiberg@webrtc.org, kjellander@webrtc.org

Bug: webrtc:7634
Change-Id: I3cca0fbaa807b563c95979cccd6d1bec32055f36
Reviewed-on: https://chromium-review.googlesource.com/562156
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18919}
2017-07-06 19:11:40 +00:00
Henrik Kjellander
a80c16a67c Revert "Update includes for webrtc/{base => rtc_base} rename (2/3)"
This reverts commit c3771cc4d37f5573fe53b7c7cff295a4f0f9560f.
(breaks downstream internal project)

BUG=webrtc:7634
NOTRY=True
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2972463002 .
Cr-Commit-Position: refs/heads/master@{#18873}
2017-07-01 14:48:18 +00:00
kjellander
c3771cc4d3 Update includes for webrtc/{base => rtc_base} rename (2/3)
I used a command like this to update the paths:
perl -pi -e "s/webrtc\/base/webrtc\/rtc_base/g" `find webrtc/rtc_base -name "*.cc" -o -name "*.h"`

BUG=webrtc:7634
NOPRESUBMIT=True # cpplint errors that aren't caused by this CL.

Review-Url: https://codereview.webrtc.org/2969623003
Cr-Commit-Position: refs/heads/master@{#18870}
2017-06-30 20:42:44 +00:00
terelius
e75d96b5bd Revert of Test and fix for huge bwe drop after alr state. (patchset #13 id:320001 of https://codereview.webrtc.org/2931873002/ )
Reason for revert:
Resetting the estimate means that we need to start gathering data from scratch again. The combination of
1) DelayBasedEstimator not reacting to overuse unless there is a valid estimate of the acknowledged bitrate, and
2) AcknowledgedBitrateEstimator needing a significant amount of time/data to obtain an provide an estimate
causes poor performance in simulations/tests. It is not clear whether this will affect real networks negatively, but I suggest reverting this to be on the safe side.
See also https://bugs.chromium.org/p/webrtc/issues/detail?id=7884

Original issue's description:
> Test and fix for huge bwe drop after alr state.
>
> BUG=webrtc:7746
>
> Review-Url: https://codereview.webrtc.org/2931873002
> Cr-Commit-Position: refs/heads/master@{#18692}
> Committed: 37aa8ba616

TBR=solenberg@webrtc.org,kwiberg@webrtc.org,minyue@webrtc.org,holmer@chromium.org,philipel@webrtc.org,oprypin@webrtc.org,holmer@google.com,stefan@webrtc.org,tschumim@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7746

Review-Url: https://codereview.webrtc.org/2964213002
Cr-Commit-Position: refs/heads/master@{#18866}
2017-06-30 15:11:44 +00:00
ossu
1129df26b0 Always ResetSenderCongestionControlObjects before RegisterEtc...
BUG=webrtc:7896

Review-Url: https://codereview.webrtc.org/2966503002
Cr-Commit-Position: refs/heads/master@{#18844}
2017-06-30 08:38:56 +00:00
peah
a9cc40b7d2 Allow an external audio processing module to be used in WebRTC
[This CL is a rebase of an original CL by solenberg@:
https://codereview.webrtc.org/2948763002/ which in turn was a
rebase of an original CL by peah@:
https://chromium-review.googlesource.com/c/527032/]

Allow an external audio processing module to be used in WebRTC

This CL adds support for optionally using an externally created audio
processing module in a peerconnection. The ownership is shared
between the peerconnection and the external creator of the module.

As part of this the internal ownership of the audio processing module
is moved from VoiceEngine to WebRtcVoiceEngine.

BUG=webrtc:7775

Review-Url: https://codereview.webrtc.org/2961723004
Cr-Commit-Position: refs/heads/master@{#18837}
2017-06-29 15:32:09 +00:00
eladalon
3ac91c7580 Disable AudioBweIntegrationTest.NoBandwidthDropAfterDtx - it's flaky
BUG=webrtc:7872

Review-Url: https://codereview.webrtc.org/2962493002
Cr-Commit-Position: refs/heads/master@{#18762}
2017-06-26 12:04:12 +00:00
nisse
0f15f926e3 Introduce RtpStreamReceiverInterface and RtpStreamReceiverControllerInterface.
And implementation class RtpStreamReceiverController.
It's responsible for demuxing, and acts as factory for
RtpStreamReceiverInterface.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2886993005
Cr-Commit-Position: refs/heads/master@{#18696}
2017-06-21 08:05:22 +00:00
tschumim
37aa8ba616 Test and fix for huge bwe drop after alr state.
BUG=webrtc:7746

Review-Url: https://codereview.webrtc.org/2931873002
Cr-Commit-Position: refs/heads/master@{#18692}
2017-06-21 06:42:30 +00:00
oprypin
4f1f458a14 Also scan stderr for audio files to test, due to change in Android test_runner
BUG=chromium:733108
NOTRY=True

Review-Url: https://codereview.webrtc.org/2935263002
Cr-Commit-Position: refs/heads/master@{#18595}
2017-06-14 16:35:11 +00:00
yujo
36b1a5fcec Add mute state field to AudioFrame and switch some callers to use it. Also make AudioFrame::data_ private and instead provide:
const int16_t* data() const;
int16_t* mutable_data();

- data() returns a zeroed static buffer on muted frames (to avoid unnecessary zeroing of the member buffer) and directly returns AudioFrame::data_ on unmuted frames.
- mutable_data(), lazily zeroes AudioFrame::data_ if the frame is currently muted, sets muted=false, and returns AudioFrame::data_.

These accessors serve to "force" callers to be aware of the mute state field, i.e. lazy zeroing is not the primary motivation.

This change only optimizes handling of muted frames where it is somewhat trivial to do so. Other improvements requiring more significant structural changes will come later.

BUG=webrtc:7343
TBR=henrika

Review-Url: https://codereview.webrtc.org/2750783004
Cr-Commit-Position: refs/heads/master@{#18543}
2017-06-12 19:45:32 +00:00
nisse
d76b7b294a New targets call:rtp_interfaces, call:rtp_receiver, call:rtp_sender.
BUG=webrtc:7135
TBR=sprang@webrtc.org

Review-Url: https://codereview.webrtc.org/2913143003
Cr-Commit-Position: refs/heads/master@{#18371}
2017-06-01 11:02:35 +00:00
eladalon
edd6eea542 Rename elad.alon to eladalon, to avoid confusion between repositories.
BUG=None
NOTRY=true

Review-Url: https://codereview.webrtc.org/2899303002
Cr-Commit-Position: refs/heads/master@{#18264}
2017-05-25 07:15:35 +00:00
ossu
c3d4b48e7e Store/restore RTP state for audio streams with same SSRC within a call
This functionality already exists for video streams, so not having it
for audio is unexpected and has lead to problems.

BUG=webrtc:7631

Review-Url: https://codereview.webrtc.org/2887733002
Cr-Commit-Position: refs/heads/master@{#18231}
2017-05-23 13:07:11 +00:00
minyue
93e4522105 Renaming probing_interval to bwe_period globally.
probing_interval as a name is used for the period that BWE attempt to increase its estimate. The name is confusing since it is not related to "probing" which is a special mechanism for estimating BWE.

BUG=None

Review-Url: https://codereview.webrtc.org/2888893002
Cr-Commit-Position: refs/heads/master@{#18203}
2017-05-18 21:32:41 +00:00
zstein
8c96a148a8 Simple tests for Call::SetBitrateConfig.
This will enable safer refactoring of SetBitrateConfig when we add methods to control BWE from PeerConnection (https://codereview.chromium.org/2838233002/).

BUG=webrtc:7395

Review-Url: https://codereview.webrtc.org/2870383003
Cr-Commit-Position: refs/heads/master@{#18187}
2017-05-17 18:49:12 +00:00
nisse
e4bcd6d02a New class RtpDemuxer and RtpPacketSinkInterface, use in Call.
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2867943003
Cr-Commit-Position: refs/heads/master@{#18160}
2017-05-16 11:47:04 +00:00
minyue
48368ad6c6 Fixing video loopback test with encoder factory.
BUG=webrtc:5806

Review-Url: https://codereview.webrtc.org/2870123002
Cr-Commit-Position: refs/heads/master@{#18079}
2017-05-10 11:06:11 +00:00
oprypin
99d9f61ad7 Drop deprecated AudioFrameOperations::Scale method signatures
Context:
https://codereview.webrtc.org/2739073003/diff/280003/webrtc/audio/utility/audio_frame_operations.h
To satisfy cpplint, the signature of the Scale* methods needed to be changed from a reference to a pointer. However, not to break internal users, the old signature was kept temporarily. Now it can be removed because it's not used anymore.

BUG=webrtc:5268

Review-Url: https://codereview.webrtc.org/2861003004
Cr-Commit-Position: refs/heads/master@{#18064}
2017-05-09 09:43:51 +00:00
Henrik Kjellander
90fd7d84fd Rename tools-webrtc -> tools_webrtc
This aligns with established naming convention for all
other directories.

BUG=webrtc:7593
NOTRY=True
NOTREECHECKS=True
R=ehmaldonado@webrtc.org, mbonadei@webrtc.org
TBR=henrika@webrtc.org

Review-Url: https://codereview.webrtc.org/2864213004 .
Cr-Commit-Position: refs/heads/master@{#18059}
2017-05-09 06:30:13 +00:00
zstein
7cb69d5cc7 This will allow me to test that Call invokes SendSideCongestionController::SetBweBitrates as expected (for https://codereview.chromium.org/2793913008).
FakeRtpTransportController moves to a common header and its constructor is changed to take a SendSideCongestionController to enable injecting the mock.

BUG=webrtc:7395

Review-Url: https://codereview.webrtc.org/2834663003
Cr-Commit-Position: refs/heads/master@{#18055}
2017-05-08 18:52:38 +00:00
oprypin
76a1ce71f9 Add --quick flag to low bandwidth audio test
BUG=webrtc:7229

Review-Url: https://codereview.webrtc.org/2855163003
Cr-Commit-Position: refs/heads/master@{#18010}
2017-05-04 10:06:18 +00:00
ossu
eb1fde4a26 Injectable audio encoders: Moved audio encoder, factory and builtin factory to api/.
Plumbed AudioEncoderFactory up into CreatePeerConnectionFactory.

BUG=webrtc:5806

Review-Url: https://codereview.webrtc.org/2799033006
Cr-Commit-Position: refs/heads/master@{#17977}
2017-05-02 13:46:30 +00:00
ossu
3b9ff38d8a Have AudioSendStream register CNG payload types with the RtpRtcpModule.
TBR=kwiberg@webrtc.org # Turn perf-bots green again

BUG=webrtc:5806

Review-Url: https://codereview.webrtc.org/2844803003
Cr-Commit-Position: refs/heads/master@{#17911}
2017-04-27 15:03:42 +00:00
ossu
20a4b3fb2a Injectable audio encoders: WebRtcVoiceEngine and company
These are the changes made to WebRtcVoiceEngine and surrounding
code. It still contains some things that are inelegant, like how
AudioCodecSpec and AudioFormatInfo is ferried around in
SendCodecSpec. This should probably be resolved before landing.

There are also a few test still that are disabled. They should be
removed or fixed, as the case may be.

I've put this CL up to get a better overview of the changes made and
how reviewable they are.

BUG=webrtc:5806

Review-Url: https://codereview.webrtc.org/2705093002
Cr-Commit-Position: refs/heads/master@{#17904}
2017-04-27 09:08:52 +00:00
mbonadei
1140f97e48 Reland of Creating webrtc/modules:module_api (patchset #1 id:1 of https://codereview.webrtc.org/2839963005/ )
Reason for revert:
Fixing the Gn error and try to reland.

Original issue's description:
> Revert of Creating webrtc/modules:module_api (patchset #5 id:80001 of https://codereview.webrtc.org/2838873002/ )
>
> Reason for revert:
> Causes build problem: https://build.chromium.org/p/client.webrtc/builders/iOS64%20Sim%20Debug%20%28iOS%209.0%29/builds/1630/steps/generate%20build%20files%20%28mb%29/logs/stdio
>
> Original issue's description:
> > Creating webrtc/modules:module_api
> >
> > This target keeps track of .h the files under webrtc/modules/include/
> > that are not part of any target.
> > If a .h file is not part of a target the 'gn check' utility is not
> > able to spot if a target is missing a dependency because even if
> > it parses '#include' directives it is not able to find a target that
> > contains these headers.
> >
> > BUG=webrtc:7513
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2838873002
> > Cr-Commit-Position: refs/heads/master@{#17880}
> > Committed: 5a1a092ed0
>
> TBR=kjellander@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7513
>
> Review-Url: https://codereview.webrtc.org/2839963005
> Cr-Commit-Position: refs/heads/master@{#17881}
> Committed: bb08c3e296

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
TBR=kjellander@webrtc.org
BUG=webrtc:7513

Review-Url: https://codereview.webrtc.org/2843913002
Cr-Commit-Position: refs/heads/master@{#17884}
2017-04-26 10:38:35 +00:00
mbonadei
bb08c3e296 Revert of Creating webrtc/modules:module_api (patchset #5 id:80001 of https://codereview.webrtc.org/2838873002/ )
Reason for revert:
Causes build problem: https://build.chromium.org/p/client.webrtc/builders/iOS64%20Sim%20Debug%20%28iOS%209.0%29/builds/1630/steps/generate%20build%20files%20%28mb%29/logs/stdio

Original issue's description:
> Creating webrtc/modules:module_api
>
> This target keeps track of .h the files under webrtc/modules/include/
> that are not part of any target.
> If a .h file is not part of a target the 'gn check' utility is not
> able to spot if a target is missing a dependency because even if
> it parses '#include' directives it is not able to find a target that
> contains these headers.
>
> BUG=webrtc:7513
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2838873002
> Cr-Commit-Position: refs/heads/master@{#17880}
> Committed: 5a1a092ed0

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7513

Review-Url: https://codereview.webrtc.org/2839963005
Cr-Commit-Position: refs/heads/master@{#17881}
2017-04-26 09:00:16 +00:00
mbonadei
5a1a092ed0 Creating webrtc/modules:module_api
This target keeps track of .h the files under webrtc/modules/include/
that are not part of any target.
If a .h file is not part of a target the 'gn check' utility is not
able to spot if a target is missing a dependency because even if
it parses '#include' directives it is not able to find a target that
contains these headers.

BUG=webrtc:7513
NOTRY=True

Review-Url: https://codereview.webrtc.org/2838873002
Cr-Commit-Position: refs/heads/master@{#17880}
2017-04-26 08:53:54 +00:00
kjellander
e0629c045e GN: Tighten up test target visibility + refactorings
Make all rtc_source_test target that contains tests that
are included in a test executable only be visible to the
rtc_test target. Doing this exposed a couple of errors and
dependency problems that were resolved. Having this could
have prevented duplicated execution of tests like the case that
was recently fixed by deadbeef@ in
https://codereview.webrtc.org/2820263004

New targets:
* //webrtc/modules/rtp_rtcp:fec_test_helper
* //webrtc/modules/rtp_rtcp:mock_rtp_rtcp
* //webrtc/modules/remote_bitrate_estimator:mock_remote_bitrate_observer

The mock files and targets should probably be moved into webrtc/test in
the future, but that's out of the scope of this CL.

BUG=webrtc:5716
NOTRY=True

Review-Url: https://codereview.webrtc.org/2828793003
Cr-Commit-Position: refs/heads/master@{#17863}
2017-04-25 11:04:50 +00:00
nisse
cae45d0469 Move RtpTransportControllerSend to a new file.
Also move RtpTransportControllerSendInterface to its own header file.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2808043002
Cr-Commit-Position: refs/heads/master@{#17840}
2017-04-24 12:53:20 +00:00
kjellander
dd460e2aa2 Fix lint errors to enable stricter PyLint rules
These fixes are needed to avoid errors after submitting
https://codereview.webrtc.org/2737963003

BUG=webrtc:7303
NOTRY=True

Review-Url: https://codereview.webrtc.org/2812273002
Cr-Commit-Position: refs/heads/master@{#17679}
2017-04-12 19:06:13 +00:00
oprypin
f250100475 Add POLQA to low bandwidth audio test
BUG=webrtc:7229

Review-Url: https://codereview.webrtc.org/2804083003
Cr-Commit-Position: refs/heads/master@{#17671}
2017-04-12 12:00:56 +00:00
minyue
20c84ccd48 Making FakeNetworkPipe demux audio and video packets.
BUG=None

Review-Url: https://codereview.webrtc.org/2794243002
Cr-Commit-Position: refs/heads/master@{#17629}
2017-04-10 23:57:57 +00:00
hbos
8d609f6b6d Reland of Implemented the GetSources() in native code. (patchset #1 id:1 of https://codereview.webrtc.org/2809613002/ )
Reason for revert:
Re-land, reverting did not fix bug.

https://bugs.chromium.org/p/webrtc/issues/detail?id=7465

Original issue's description:
> Revert of Implemented the GetSources() in native code. (patchset #11 id:510001 of https://codereview.webrtc.org/2770233003/ )
>
> Reason for revert:
> Suspected of WebRtcApprtcBrowserTest.MANUAL_WorksOnApprtc breakage, see
>
> https://bugs.chromium.org/p/webrtc/issues/detail?id=7465
>
> Original issue's description:
> > Added the GetSources() to the RtpReceiverInterface and implemented
> > it for the AudioRtpReceiver.
> >
> > This method returns a vector of RtpSource(both CSRC source and SSRC
> > source) which contains the ID of a source, the timestamp, the source
> > type (SSRC or CSRC) and the audio level.
> >
> > The RtpSource objects are buffered and maintained by the
> > RtpReceiver in webrtc/modules/rtp_rtcp/. When the method is called,
> > the info of the contributing source will be pulled along the object
> > chain:
> > AudioRtpReceiver -> VoiceChannel -> WebRtcVoiceMediaChannel ->
> > AudioReceiveStream -> voe::Channel -> RtpRtcp module
> >
> > Spec:https://w3c.github.io/webrtc-pc/archives/20151006/webrtc.html#widl-RTCRtpReceiver-getContributingSources-sequence-RTCRtpContributingSource
> >
> > BUG=chromium:703122
> > TBR=stefan@webrtc.org, danilchap@webrtc.org
> >
> > Review-Url: https://codereview.webrtc.org/2770233003
> > Cr-Commit-Position: refs/heads/master@{#17591}
> > Committed: 292084c376
>
> TBR=deadbeef@webrtc.org,solenberg@webrtc.org,hbos@webrtc.org,philipel@webrtc.org,stefan@webrtc.org,danilchap@webrtc.org,zhihuang@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=chromium:703122
>
> Review-Url: https://codereview.webrtc.org/2809613002
> Cr-Commit-Position: refs/heads/master@{#17616}
> Committed: fbcc5cb386

TBR=deadbeef@webrtc.org,solenberg@webrtc.org,philipel@webrtc.org,stefan@webrtc.org,danilchap@webrtc.org,zhihuang@webrtc.org,olka@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:703122

Review-Url: https://codereview.webrtc.org/2810623003
Cr-Commit-Position: refs/heads/master@{#17621}
2017-04-10 14:39:05 +00:00
kwiberg
37e99fd3fa Move AudioDecoder and AudioDecoderFactory mocks to webrtc/test/
AudioDecoder and AudioDecoderFactory are in webrtc/api/ now, so move
their mocks to someplace central where tests from all over WebRTC are
allowed to #include them.

BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/2798063004
Cr-Commit-Position: refs/heads/master@{#17619}
2017-04-10 12:15:48 +00:00
olka
fbcc5cb386 Revert of Implemented the GetSources() in native code. (patchset #11 id:510001 of https://codereview.webrtc.org/2770233003/ )
Reason for revert:
Suspected of WebRtcApprtcBrowserTest.MANUAL_WorksOnApprtc breakage, see

https://bugs.chromium.org/p/webrtc/issues/detail?id=7465

Original issue's description:
> Added the GetSources() to the RtpReceiverInterface and implemented
> it for the AudioRtpReceiver.
>
> This method returns a vector of RtpSource(both CSRC source and SSRC
> source) which contains the ID of a source, the timestamp, the source
> type (SSRC or CSRC) and the audio level.
>
> The RtpSource objects are buffered and maintained by the
> RtpReceiver in webrtc/modules/rtp_rtcp/. When the method is called,
> the info of the contributing source will be pulled along the object
> chain:
> AudioRtpReceiver -> VoiceChannel -> WebRtcVoiceMediaChannel ->
> AudioReceiveStream -> voe::Channel -> RtpRtcp module
>
> Spec:https://w3c.github.io/webrtc-pc/archives/20151006/webrtc.html#widl-RTCRtpReceiver-getContributingSources-sequence-RTCRtpContributingSource
>
> BUG=chromium:703122
> TBR=stefan@webrtc.org, danilchap@webrtc.org
>
> Review-Url: https://codereview.webrtc.org/2770233003
> Cr-Commit-Position: refs/heads/master@{#17591}
> Committed: 292084c376

TBR=deadbeef@webrtc.org,solenberg@webrtc.org,hbos@webrtc.org,philipel@webrtc.org,stefan@webrtc.org,danilchap@webrtc.org,zhihuang@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=chromium:703122

Review-Url: https://codereview.webrtc.org/2809613002
Cr-Commit-Position: refs/heads/master@{#17616}
2017-04-10 11:38:13 +00:00
stefan
fca900aa37 Fix two invalid DCHECKs related to audio BWE.
These are invalid since:
- An allocated bitrate of 0 means that the stream should be disabled. Changing the behavior to send audio at min bitrate even though the allocator asks for the stream to be disabled.
- It should be OK to set a min bitrate equal to the start bitrate.

BUG=webrtc:5079

Review-Url: https://codereview.webrtc.org/2806163003
Cr-Commit-Position: refs/heads/master@{#17613}
2017-04-10 10:53:00 +00:00
zhihuang
292084c376 Added the GetSources() to the RtpReceiverInterface and implemented
it for the AudioRtpReceiver.

This method returns a vector of RtpSource(both CSRC source and SSRC
source) which contains the ID of a source, the timestamp, the source
type (SSRC or CSRC) and the audio level.

The RtpSource objects are buffered and maintained by the
RtpReceiver in webrtc/modules/rtp_rtcp/. When the method is called,
the info of the contributing source will be pulled along the object
chain:
AudioRtpReceiver -> VoiceChannel -> WebRtcVoiceMediaChannel ->
AudioReceiveStream -> voe::Channel -> RtpRtcp module

Spec:https://w3c.github.io/webrtc-pc/archives/20151006/webrtc.html#widl-RTCRtpReceiver-getContributingSources-sequence-RTCRtpContributingSource

BUG=chromium:703122
TBR=stefan@webrtc.org, danilchap@webrtc.org

Review-Url: https://codereview.webrtc.org/2770233003
Cr-Commit-Position: refs/heads/master@{#17591}
2017-04-07 17:57:22 +00:00
oprypin
abd101b91f Support multiple connected Android devices in low bandwidth audio test
Previously it was assumed that exactly one device is connected.
Now adb will get an argument with the device ID taken from the runner
script's stdout.

BUG=webrtc:7229
TBR=kjellander@webrtc.org
NOTRY=true

Review-Url: https://codereview.webrtc.org/2783343003
Cr-Commit-Position: refs/heads/master@{#17580}
2017-04-07 06:21:30 +00:00
nisse
fdbfdc9786 Let PacketRouter separate send and receive modules.
This is in preparation for merging the ViERemb logic in packet_router,
to send REMB feedback as sender reports if possible, otherwise as
receiver reports.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2774623006
Cr-Commit-Position: refs/heads/master@{#17489}
2017-03-31 12:44:52 +00:00