Commit Graph

132 Commits

Author SHA1 Message Date
f782492948 Delete RtpFeedback. The ssrc for a receive stream should be known at
configuration time.

Bug: webrtc:8995
Change-Id: I3d63a76e472a8948c98c98450e96d3301fa2688b
Reviewed-on: https://webrtc-review.googlesource.com/78701
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23409}
2018-05-28 11:05:19 +00:00
eda0087e57 Drop the RTT as input to IsRetransmitOfOldPacket.
Bug: webrtc:7135
Change-Id: I532334934a757ba0ea6a2daf97b0f1cfd04246e6
Reviewed-on: https://webrtc-review.googlesource.com/12320
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23366}
2018-05-23 13:14:40 +00:00
5f83cf0c6d Replacing rtc::TimeDelta with webrtc::TimeDelta.
This removes the redundant type and replaces all usages. A slight change
in behavior is that we no longer get nanosecond resolution. This should
not matter since no current code requires nanosecond resolution.

Bug: webrtc:9155
Change-Id: I04334e08c686d95731621a6c8a7e40400d0ae3b2
Reviewed-on: https://webrtc-review.googlesource.com/71163
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23174}
2018-05-08 13:22:53 +00:00
24ad720885 Uses config struct with bitrate allocator.
This makes it easier to refactor the interface in upcoming CLs.

Bug: None
Change-Id: I67d0216e24f087294e95ac96f7278f302bf69832
Reviewed-on: https://webrtc-review.googlesource.com/71041
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22933}
2018-04-19 09:15:33 +00:00
104ad0b62b Remove stale dependencies from APM static lib target:
- protobuf library
- file_wrapper.h

These appear to have been left behind during the AecDump refactoring.
After this CL, APM no longer depends on zlib by default! :)

Bug: webrtc:9139
Change-Id: I12a8df2a17a575515b9c07165825f0879c4e15eb
Reviewed-on: https://webrtc-review.googlesource.com/70762
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22923}
2018-04-18 17:00:05 +00:00
7ce3091d8a IWYU: Include <string.h> for memcpy(3) after bbf21a3fd.
Commit bbf21a3fd617abb37567a86e65f8ba18b8d64eb2 ("Remove dependencies on
modules:module_api from AudioProcessing") causes the build to fail with
libstdc++ due to several files using memcpy(3) or memset(3) while relying on
string.h being included implicitly by other headers.

Bug: webrtc:9139
Change-Id: Ib73284962f8694d8bed0551968265bfd13cab967
Reviewed-on: https://webrtc-review.googlesource.com/70180
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
Cr-Commit-Position: refs/heads/master@{#22895}
2018-04-17 11:48:13 +00:00
bbf21a3fd6 Remove dependencies on modules:module_api from AudioProcessing.
- Directly include api/audio/audio_frame.h everywhere AudioFrame is used.
- This *will* remove transient dependencies on libjpeg and a bunch of other things from the e.g. APM.
- audio_frame.h still included from module_common_types.h for backwards compatibility with clients.

Bug: webrtc:9139, webrtc:7504
Change-Id: Id96f9268c01667fbcc29a01f5c1dd25a37836897
Reviewed-on: https://webrtc-review.googlesource.com/62464
Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22845}
2018-04-12 22:05:27 +00:00
abbe841721 This CL removes all usages of our custom ostream << overloads.
This prepares us for removing them altogether.

Bug: webrtc:8982
Change-Id: I66002cc8d4bf0e07925766d568d2498422f0f38e
Reviewed-on: https://webrtc-review.googlesource.com/64142
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Henrik Grunell <henrikg@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22707}
2018-04-03 12:51:00 +00:00
003930a3ce Fix MID not always getting set with audio
Bug: webrtc:4050
Change-Id: I543a9f70c6c7fd10cd177ce16eba6c335db367ec
Reviewed-on: https://webrtc-review.googlesource.com/65020
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22681}
2018-03-29 20:22:28 +00:00
ef99888bca Delete OnIncomingCSRCChanged and related code.
Bug: webrtc:8995
Change-Id: I1987d1527cce5a0c315b2d15cfffa76e7343b1fa
Reviewed-on: https://webrtc-review.googlesource.com/64220
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22626}
2018-03-27 13:18:35 +00:00
bb50ce5bb6 Wire up MID send value to the PeerConnection API
Bug: webrtc:4050
Change-Id: I522cf8621e2cb639f54be2402174befd23e4af59
Reviewed-on: https://webrtc-review.googlesource.com/60962
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22610}
2018-03-26 18:14:30 +00:00
5f22365dd7 Remove unnecessary proxy+lock code around RtcpRttStats pointer
Change-Id: I9c7fdc695be1e424488fa46962d459c66cf4d1e7
Bug: webrtc:9068
Reviewed-on: https://webrtc-review.googlesource.com/64721
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22603}
2018-03-26 12:49:00 +00:00
9cfb18c5b3 Delete obsolete method RtpFeedback::OnInitializeDecoder.
Bug: None
Change-Id: I55e01e5ff1c54c76c43b378414a31fc43c9aa444
Reviewed-on: https://webrtc-review.googlesource.com/62142
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22561}
2018-03-22 12:06:54 +00:00
77490b95c0 Pass a real audio codec pair ID to encoders that we create
Bug: webrtc:8941
Change-Id: I0c0cb547e8424dd80b93e240bd0d40a9269bd1fc
Reviewed-on: https://webrtc-review.googlesource.com/63263
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22546}
2018-03-21 23:29:53 +00:00
763e947cf3 Reporting packet feedback availability in AudioSendStream
This CL adds tracking and reporting of packet feedback availability in
the AudioSendStream class.

This is part of a series of CLs tracking the transport feedback status
of the streams known to BitrateAllocator and reporting the status to
the congestion controller.

Bug: webrtc:8415
Change-Id: I1053675d245a59c1b97fd482de88e63cbfae0038
Reviewed-on: https://webrtc-review.googlesource.com/63203
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22539}
2018-03-21 14:03:38 +00:00
08126349f5 Pass a real audio codec pair ID to decoders that we create
Bug: webrtc:8941
Change-Id: Ic2aed2ca759eb378164f3f65465e23fd7c13a9f8
Reviewed-on: https://webrtc-review.googlesource.com/63261
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22538}
2018-03-21 13:55:18 +00:00
fe617a3af1 Adding has_packet_feedback to LimitObserver callback.
This CL adds a boolean indicating availability of per packet feedback
to the OnAllocationLimitsChanged callback on the
BitrateAllocator::LimitObserver interface.

This is part of a series of CLs tracking the transport feedback status
of the streams known to BitrateAllocator and reporting the status to
the congestion controller.

Bug: webrtc:8415
Change-Id: I5bd6e5796733da312556f2f681ff06d49ea2becc
Reviewed-on: https://webrtc-review.googlesource.com/63201
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22533}
2018-03-21 13:13:08 +00:00
9c1ee368e0 Fix low_bandwidth_audio_perf_test resource dependency on Android
The executable that's pushed to the device must depend on all
files that need to be on the device.

No-Try: True
TBR: phoglund@webrtc.org
Bug: chromium:755660
Change-Id: Iee041bd51e789e3ce6612fbda1582286a5cf4680
Reviewed-on: https://webrtc-review.googlesource.com/62961
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22494}
2018-03-19 15:02:51 +00:00
7b2676fee9 Fix low_bandwidth_audio_perf_test binary dependency on Windows
The split in https://webrtc-review.googlesource.com/c/src/+/62660
broke it.

No-Try: True
Bug: chromium:755660
Change-Id: I664f022cac9f8e7e0bb64a7cb59992f030543aa6
Reviewed-on: https://webrtc-review.googlesource.com/62801
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22486}
2018-03-19 10:54:11 +00:00
8cf0a87bc3 Reland "Split perf-test-specific resources in low_bandwidth_audio_test"
This is a reland of 4bbc150b18e961811991e3e524378e703b6d5b31

Now with explicitly specified `write_runtime_deps`

Original change's description:
> Split perf-test-specific resources in low_bandwidth_audio_test
>
> Bug: chromium:755660
> Change-Id: I7c60a47b26ad86892218497f28a09a04574077e6
> Reviewed-on: https://webrtc-review.googlesource.com/61961
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22439}

Bug: chromium:755660
TBR: phoglund@webrtc.org
Change-Id: I3d4bcc5156ee25de399ab23773ecb73cd995075c
Reviewed-on: https://webrtc-review.googlesource.com/62660
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22483}
2018-03-19 09:30:01 +00:00
7696bef463 Remove the public_deps to fileutils from test_support.
Bug: webrtc:8946
Change-Id: Ia01d8bb1b42485e29f26792b9266228743d7fd90
No-Presubmit: true
Reviewed-on: https://webrtc-review.googlesource.com/62100
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22465}
2018-03-16 09:06:27 +00:00
650a826cda Revert "Reland "Split perf-test-specific resources in low_bandwidth_audio_test""
This reverts commit b3808dcc36e4dca8b3d2b68c79e20c5888397690.

Reason for revert: Still fails to generate runtime_deps

Original change's description:
> Reland "Split perf-test-specific resources in low_bandwidth_audio_test"
> 
> This is a reland of 4bbc150b18e961811991e3e524378e703b6d5b31
> 
> Now using rtc_source_set to be able to generate runtime deps
> 
> Original change's description:
> > Split perf-test-specific resources in low_bandwidth_audio_test
> >
> > Bug: chromium:755660
> > Change-Id: I7c60a47b26ad86892218497f28a09a04574077e6
> > Reviewed-on: https://webrtc-review.googlesource.com/61961
> > Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> > Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#22439}
> 
> No-Try: True
> Bug: chromium:755660
> Change-Id: I66eda6f016c98e2a8a99f230d9e0323cc09e4976
> Reviewed-on: https://webrtc-review.googlesource.com/62020
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22450}

TBR=phoglund@webrtc.org,oprypin@webrtc.org

Change-Id: I781e3172416164e6d313574a31e4c982de8bcd9c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:755660
Reviewed-on: https://webrtc-review.googlesource.com/62120
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22454}
2018-03-15 13:52:47 +00:00
b3808dcc36 Reland "Split perf-test-specific resources in low_bandwidth_audio_test"
This is a reland of 4bbc150b18e961811991e3e524378e703b6d5b31

Now using rtc_source_set to be able to generate runtime deps

Original change's description:
> Split perf-test-specific resources in low_bandwidth_audio_test
>
> Bug: chromium:755660
> Change-Id: I7c60a47b26ad86892218497f28a09a04574077e6
> Reviewed-on: https://webrtc-review.googlesource.com/61961
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22439}

No-Try: True
Bug: chromium:755660
Change-Id: I66eda6f016c98e2a8a99f230d9e0323cc09e4976
Reviewed-on: https://webrtc-review.googlesource.com/62020
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22450}
2018-03-15 13:04:57 +00:00
aaa882cea5 Revert "Split perf-test-specific resources in low_bandwidth_audio_test"
This reverts commit 4bbc150b18e961811991e3e524378e703b6d5b31.

Reason for revert: Breaks on perf Mac bot
https://build.chromium.org/p/client.webrtc.perf/builders/Mac%2010.11/builds/5696

Original change's description:
> Split perf-test-specific resources in low_bandwidth_audio_test
> 
> Bug: chromium:755660
> Change-Id: I7c60a47b26ad86892218497f28a09a04574077e6
> Reviewed-on: https://webrtc-review.googlesource.com/61961
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22439}

TBR=phoglund@webrtc.org,oprypin@webrtc.org

Change-Id: I235301020417416745c1e754b4dd57726dfb27ea
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:755660
Reviewed-on: https://webrtc-review.googlesource.com/61980
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22442}
2018-03-15 10:47:47 +00:00
4bbc150b18 Split perf-test-specific resources in low_bandwidth_audio_test
Bug: chromium:755660
Change-Id: I7c60a47b26ad86892218497f28a09a04574077e6
Reviewed-on: https://webrtc-review.googlesource.com/61961
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22439}
2018-03-15 10:22:56 +00:00
9599fd4414 Make num-retries default a string.
TBR=phoglund@webrtc.org

Bug: chromium:755660
Change-Id: I770a79a78721a312b603aec40d23689245a48001
Reviewed-on: https://webrtc-review.googlesource.com/61343
Reviewed-by: Edward Lemur <ehmaldonado@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22392}
2018-03-12 21:19:51 +00:00
5b9c6840b1 Add num-retries flag to Android perf tests.
Add a flag to Android perf tests, so we can specify the number of
retries.

Bug: chromium:755660
Change-Id: Ic498373421b7e0fdf779a4659a0c79d47a59fbde
Reviewed-on: https://webrtc-review.googlesource.com/61103
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22390}
2018-03-12 19:51:09 +00:00
3faa832247 Separate test/fake_audio_device on API and implementation. Step 2.
Switch WebRTC internal usage of FakeAudioDevice on TestAudioDeviceModule.

Bug: webrtc:8946
Change-Id: I96b8b5d3b475d2197662e9007f836bd71f8ed04d
Reviewed-on: https://webrtc-review.googlesource.com/60521
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22388}
2018-03-12 16:14:39 +00:00
d6fbf2a4b1 Tests: Pass codec ID argument to audio codecs
Bug: webrtc:8941
Change-Id: Ia6d51dcbf7d69b38f3615e01d3f7031b8f5c31d0
Reviewed-on: https://webrtc-review.googlesource.com/58092
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22383}
2018-03-12 13:25:29 +00:00
6fed924857 Delete RTPPayloadRegistry::SetIncomingPayloadType.
It only affects the write-only member |incoming_payload_type_|.

Bug: webrtc:8995
Change-Id: I0cf86a6d0603c809367105cee31eb1b8b2802d32
Reviewed-on: https://webrtc-review.googlesource.com/61040
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22382}
2018-03-12 11:03:59 +00:00
881f16891b Make SimpleStringBuilder into a non-template
So that future CLs can de-inline its methods.

We do this by asking the caller to allocate the buffer instead of
having it as a data member.

Bug: webrtc:8982
Change-Id: I246b0973e54510fdd880c3b6875336c31334d008
Reviewed-on: https://webrtc-review.googlesource.com/60000
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22355}
2018-03-09 11:32:34 +00:00
8493594dc2 Cleanup of TransportFeedbackObserver interface
The GetTransportFeedbackVector() method is only used in tests, and they
can access the class directly anyway. Keeping it is adding code bloat
and is also making upcoming refactoring more difficult.

Bug: webrtc:8975
Change-Id: I8323addb3c1461dd73b30353c8d9fe9410471c15
Reviewed-on: https://webrtc-review.googlesource.com/60860
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22349}
2018-03-08 22:51:53 +00:00
12edf4ce34 Separate build target for rtc_base/numerics/safe_minmax.h
So that we can avoid dependency cycles.

Bug: none
Change-Id: I821d9f1319dff01403d6e4e310cbb2d4b2b125e8
Reviewed-on: https://webrtc-review.googlesource.com/60500
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22328}
2018-03-07 14:12:00 +00:00
98cd810d31 Production code: Pass codec ID argument to audio codecs
Just a null ID for now, but future CLs will fix that.

Bug: webrtc:8941
Change-Id: I393af0fef752ca3711421bdaf4b2e41cbe286bcf
Reviewed-on: https://webrtc-review.googlesource.com/58093
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22296}
2018-03-05 18:55:19 +00:00
6723cdc8a4 Revert "Separate test/fake_audio_device on API and implementation."
This reverts commit 8ea5f9ae5b757aa3a0e6abe46f5c9ef3aaf4b337.

Reason for revert: breaks downstream project

Original change's description:
> Separate test/fake_audio_device on API and implementation.
> 
> Adding ability of injecting audio in end to end tests, that are using
> WebRTC. For this purpose as a 1st step test/fake_audio_device will
> be moved to production part of WebRTC source code and renamed to
> test_audio_device_module. Old header is replaced with alias to the
> new one and will be deleted after a while.
> 
> Change-Id: I5284d1dd46ce9bf86cf43268e855520606fa8c5c
> 
> Bug: webrtc:8946
> Change-Id: I5284d1dd46ce9bf86cf43268e855520606fa8c5c
> Reviewed-on: https://webrtc-review.googlesource.com/58086
> Commit-Queue: Artem Titov <titovartem@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22289}

TBR=kwiberg@webrtc.org,titovartem@webrtc.org

Change-Id: I88d9c4f09cc576ed7c9182dcf0a873d25a8bab54
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8946
Reviewed-on: https://webrtc-review.googlesource.com/59720
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22291}
2018-03-05 15:36:23 +00:00
8ea5f9ae5b Separate test/fake_audio_device on API and implementation.
Adding ability of injecting audio in end to end tests, that are using
WebRTC. For this purpose as a 1st step test/fake_audio_device will
be moved to production part of WebRTC source code and renamed to
test_audio_device_module. Old header is replaced with alias to the
new one and will be deleted after a while.

Change-Id: I5284d1dd46ce9bf86cf43268e855520606fa8c5c

Bug: webrtc:8946
Change-Id: I5284d1dd46ce9bf86cf43268e855520606fa8c5c
Reviewed-on: https://webrtc-review.googlesource.com/58086
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22289}
2018-03-05 14:30:42 +00:00
f69e768032 Propagating total_bitrate_bps from BitrateAllocator to ProbeController, part 1.
Added total_bitrate_bps to LimitObserver::OnAllocationLimitsChanged.

Bug: webrtc:8955
Change-Id: Ied9b2d24ab97cff21518ce70d5d35dfd8230ed08
Reviewed-on: https://webrtc-review.googlesource.com/58801
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22233}
2018-02-28 15:38:15 +00:00
3c24ea8340 Removed SetTransportOverhead in transport controller.
SetTransportOverhead was used by send streams to signal the packet
overhead that they received from Call. However, call receives the value
from OnNetworkRouteChanged in WebRtcVideoChannel and
WebRtcVoiceMediaChannel which is already propagated to
RtpTransportControllerSend. By skipping the round trip, the interface on
the rtp transport controller can be reduced.

Bug: None
Change-Id: I759b1207aab214bbc2b993106f6ff7cc24e177f7
Reviewed-on: https://webrtc-review.googlesource.com/57182
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22226}
2018-02-28 12:36:16 +00:00
fef0500aa7 Adding a new string utility class: SimpleStringBuilder.
This is a fairly minimalistic string building class that
can be used instead of stringstream, which is discouraged
but tempting to use due to its convenient interface and
familiarity for anyone using our logging macros.

As a starter, I'm changing the string building code in
ReceiveStatisticsProxy and SendStatisticsProxy from using
stringstream and using SimpleStringBuilder instead.

In the case of SimpleStringBuilder, there's a single allocation,
it's done on the stack (fast), and minimal code is required for
each concatenation. The developer is responsible for ensuring
that the buffer size is adequate but the class won't overflow
the buffer.  In dcheck-enabled builds, a check will go off if
we run out of buffer space.

As part of using SimpleStringBuilder for a small part of
rtc::LogMessage, a few more changes were made:
- SimpleStringBuilder is used for formatting errors instead of ostringstream.
- A new 'noop' state has been introduced for log messages that will be dropped.
- Use a static (singleton) noop ostream object for noop logging messages
  instead of building up an actual ostringstream object that will be dropped.
- Add a LogMessageForTest class for better state inspection/testing.
- Fix benign bug in LogTest.Perf, change the test to not use File IO and
  always enable it.
- Ensure that minimal work is done for noop messages.
- Remove dependency on rtc::Thread.
- Add tests for the extra_ field, correctly parsed paths and noop handling.

Bug: webrtc:8529, webrtc:4364, webrtc:8933
Change-Id: Ifa258c135135945e4560d9e24315f7d96f784acb
Reviewed-on: https://webrtc-review.googlesource.com/55520
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22203}
2018-02-27 13:37:39 +00:00
f35c6667d6 Separate build targets for aec3 and aec3_unittests
Bug: webrtc:8844
Change-Id: Id6a98eae19aaedc87c3f402a004f58f0290d5c28
Reviewed-on: https://webrtc-review.googlesource.com/56580
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22173}
2018-02-23 13:16:16 +00:00
ef9daee934 Using mock transport controller in audio unit tests.
Using a mock of rtp transport controller send in audio send stream unit
tests. This reduces the dependencies and makes the tests more focused
on testing the functionality of audio send stream itself.

Bug: webrtc:8415
Change-Id: Ia8d9cf47d93decc74b10ca75a6771f39df658dc2
Reviewed-on: https://webrtc-review.googlesource.com/56600
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22161}
2018-02-22 17:32:25 +00:00
41f16bec9f Silencing warnings in audio send stream unit tests.
The unit tests for AudioSendStream was generating a lot of warnings
about "Uninteresting mock function call" on mocked objects. This is due
to the default gmock implementation being NaggyMock and there was no
NiceMock override.

With this change the mocks are replaced with NiceMock implementations
which do not output warnings for unexpected calls. This makes the error
output from the test runner much easier to visually parse to find the
actual errors in failing tests.

Bug: None
Change-Id: Ic40db78159536ddeaa72a468fc2cb3ec17386d44
Reviewed-on: https://webrtc-review.googlesource.com/56220
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22152}
2018-02-22 14:26:59 +00:00
97f61ea684 Moved bitrate configuration to rtp controller
Since rtp transport controller send owns the congestion controller it
also should own the bitrate configuration logic, this way it can
initialize the send side congestion controller with the bitrate
configuration.

Bug: webrtc:8415
Change-Id: Ifaa16139ca477cb1c80bf4aa24f17652af997553
Reviewed-on: https://webrtc-review.googlesource.com/54303
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22127}
2018-02-21 13:55:16 +00:00
1896cece01 Removed dependencies from audio send stream unit test
The audio send stream unit tests did not use the mocks injected to the
fake rtp transport controller send. This CL prepares for removing the
fake controller which makes it harder to refactor the rtp transport
controller interface.

Bug: webrt:8415
Change-Id: I73f7d105e66f9beb80aeaa92f3490cd61c80c5b8
Reviewed-on: https://webrtc-review.googlesource.com/54302
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22102}
2018-02-20 15:05:57 +00:00
2ae140ae7e BUILD.gn file for api/audio.
Targets containing files in api/audio are moved from api/BUILD.gn to
api/audio/BUILD.gn.

Bug: webrtc:8844
Change-Id: Ib7ea4b7eb3c2ea38ef8261a1fc5c2b4674985981
Reviewed-on: https://webrtc-review.googlesource.com/54360
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22074}
2018-02-19 10:38:29 +00:00
4c1ffb86c0 Removing access to pacer in rtp controller.
Bug: webrt:8415
Change-Id: I1f318c41c3913acb573affb4520e128bef7efa02
Reviewed-on: https://webrtc-review.googlesource.com/53900
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22049}
2018-02-16 11:37:38 +00:00
e4be6dad65 Removing access to send side cc in rtp controller.
This CL removes direct access to SendSideCongestionController (SSCC) via
the RtpTransportControllerSend interface and replaces all usages with
calls on RtpTransportControllerSend which will in turn calls SSCC. This
prepares for later refactor of RtpTransportControllerSend.

Bug: webrtc:8415
Change-Id: I68363a3ab0203b95579f747402a1e7f58a5eeeb5
Reviewed-on: https://webrtc-review.googlesource.com/53860
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22044}
2018-02-16 10:40:48 +00:00
1e06289cdb Delete macro RTC_ACCESS_ON, replaced by RTC_GUARDED_BY.
Both macros do the same thing, as wrappers for
__attribute__((guarded_by)), and more names for the same thing doesn't
add to clarity.

Bug: none
Change-Id: Iaaf7b21dbf3345ee90fee22c39b636823d195eb0
Reviewed-on: https://webrtc-review.googlesource.com/48361
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21929}
2018-02-07 10:07:28 +00:00
dbbb33cd00 Stop using public_deps in common_audio.
Bug: webrtc:8603
Change-Id: I315311977f2a75476a7028b8d3eaf3c98caf4178
Reviewed-on: https://webrtc-review.googlesource.com/47920
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21902}
2018-02-06 09:44:20 +00:00
970b088878 Reland "Break up rtc_event_log_api to solve circular dependencies."
This is a reland of 001546da953275c7a39eb220592b440c9b47d756
Original change's description:
> Break up rtc_event_log_api to solve circular dependencies.
>
> The original rtc_event_log_api is refactored to a pure API target plus
> multiple targets coupled with WebRTC implementations.
>
> Bug: None
> Change-Id: Iab9eee3f7bf4228c52d94a5f26fc39bb99b5033f
> Reviewed-on: https://webrtc-review.googlesource.com/43247
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Reviewed-by: Björn Terelius <terelius@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Cr-Commit-Position: refs/heads/master@{#21811}

TBR=pthatcher@webrtc.org,deadbeef@webrtc.org,terelius@webrtc.org,stefan@webrtc.org

Bug: None
Change-Id: I3e7213733741cbfd5dd0076f32209e6bc42a0647
Reviewed-on: https://webrtc-review.googlesource.com/46900
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21862}
2018-02-01 22:47:52 +00:00