Commit graph

20098 commits

Author SHA1 Message Date
Steve Anton
9de3aaccc9 Reland "Enable the clang style plugin in rtc_base/"
This is a reland of Id63f0deb7b335690157ab157c35177b7836688da.

Original change's description:
> Enable the clang style plugin in rtc_base/
> 
> Enabled the plugin and cleaned up all issues it found.
> 
> Bug: webrtc:163
> Change-Id: Id63f0deb7b335690157ab157c35177b7836688da
> Reviewed-on: https://webrtc-review.googlesource.com/14660
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20401}

Bug: webrtc:163
Change-Id: I861a5fe741215115b0e7a2be9c0786836ff5376e
Reviewed-on: https://webrtc-review.googlesource.com/15040
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20416}
2017-10-24 20:50:13 +00:00
Steve Anton
074dece085 Fix flaky DataChannel integration test
The DataChannel OPEN message is sent in-band in this test, and waiting
for the signaling state to change is not sufficient to guarantee that the
callee received this message

Bug: webrtc:8443
Change-Id: I76fa6348b6f8e1e70fb41a4e644aee805b2ef4de
Reviewed-on: https://webrtc-review.googlesource.com/15060
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20415}
2017-10-24 20:41:48 +00:00
Danil Chapovalov
398a7c67b1 Create skeleton of the rtcp transceiver.
RtcpTransceiver name reserved for thread-safe version that planned to
be wrapper of the RtcpTransceiverImpl

BUG=webrtc:8239

Change-Id: If8a3092eb1b8e4175e3efd23b52e1043cdabf19f
Reviewed-on: https://webrtc-review.googlesource.com/7920
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20414}
2017-10-24 19:35:38 +00:00
Steve Anton
d5585ca956 Move almost all references from WebRtcSession to PeerConnection
WebRtcSession is being merged into PeerConnection, and to make the
code review easier this is the first step towards achieving that.

Bug: webrtc:8323
Change-Id: I33778e46f20cb14089dff4328947868e207476bd
Reviewed-on: https://webrtc-review.googlesource.com/8760
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20413}
2017-10-24 17:59:20 +00:00
Steve Anton
c4faa9c4e1 Remove QUIC transport/data channel
Originally, the idea was to implement QUIC data channels as a
PeerConnection API. Now, the effort has shifted to implementing it as a
part of ORTC which will live in Chromium. Since this code has not been
maintained and is not currently being used, remove it to reduce
maintenance overhead while a copy will be retained in the Git history.

Bug: webrtc:8385
Change-Id: I2719c007a0de0118b67d41a425f900b66c52f65a
Reviewed-on: https://webrtc-review.googlesource.com/14100
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20412}
2017-10-24 16:14:18 +00:00
Ilya Nikolaevskiy
a0b66c7566 Enable cpu adaptation for screenshare in chrome as field trial
Bug: webrtc:8433
Change-Id: I1632cb0191b06e99d090a090bad9db20d7a81349
Reviewed-on: https://webrtc-review.googlesource.com/14980
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20411}
2017-10-24 15:07:38 +00:00
Dino Radaković
21360eb01e Add application extension field to RtpPacketReceived.
Bug: webrtc:8439
Change-Id: I372e90c81a68351d343554fb77ce6ef77d538e62
Reviewed-on: https://webrtc-review.googlesource.com/14820
Commit-Queue: Dino Radaković <dinor@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20410}
2017-10-24 14:22:18 +00:00
Rasmus Brandt
f7a3558f3e Add VideoProcessor tests verifying that H.264 keyframes contain SPS/PPS/IDR.
This CL adds an EncodedFrameChecker interface which can be used by users
of the VideoProcessor to inject customized per-frame checks to the
encoding/decoding pipeline. This currently has two uses:
- Verifying that the QP parser works correctly for VP8 and VP9, by comparing the
  parsed QP to that produced by libvpx.
- Verifying that our H.264 encoders always produce SPS/PPS/IDR in tandem.

TESTED=Galaxy S8, Pixel 2 XL, iPhone 7.
BUG=webrtc:8423

Change-Id: Ic3e401546e239a9ffaf2ed2907689cebb1127805
Reviewed-on: https://webrtc-review.googlesource.com/14559
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20409}
2017-10-24 13:58:38 +00:00
Rasmus Brandt
edf4ff7e0f Only treat H.264 frames containing SPS, PPS, and IDR as key frames.
This is protected behind a field trial, for controlled rollout.

TESTED=MediaCodec (Qualcomm + Exynos) and VideoToolbox senders.
BUG=webrtc:8423

Change-Id: Ibccefb3d374e4a44461d33e77eff754d8d752666
Reviewed-on: https://webrtc-review.googlesource.com/13863
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20408}
2017-10-24 11:51:18 +00:00
Bjorn Terelius
6984ad212c Print state of AcknowledgedBitrateEstimator in event_log_visualizer.
Bug: None
Change-Id: Iabf53be419ba94874619f417131674692172f6ba
Reviewed-on: https://webrtc-review.googlesource.com/14322
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20407}
2017-10-24 11:19:48 +00:00
Alessio Bazzica
45adbafefe APM-QA unit test bug fix
- temporary wav files created in temporary folder in TestExport.setUp()
- rename TestEchoPathSimulators -> TestExport

TBR=

Bug: webrtc:7494
Change-Id: I5b0c0675f539888e7392728055842c7772185921
Reviewed-on: https://webrtc-review.googlesource.com/14842
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20406}
2017-10-24 10:23:08 +00:00
Alex Loiko
c531af77c3 Fix 'Left shift cannot be represented in int32_t'.
In the legacy C part of AGC, an audio level 'cur_level' is represented as

  (1+frac) * 2^(31 - zeros)

The 'zeros' exponent part is used for looking up a gain value in a
table, and 'frac' is used for interpolating between two nearby table
values. Code snippet below:

  zeros = WebRtcSpl_NormU32((uint32_t)cur_level);
  tmp32 = (cur_level << zeros) & 0x7FFFFFFF;
  frac = (int16_t)(tmp32 >> 19);

In the second line, 'cur_level' is shifted upwards so that the leading
bit is '1', after which the leading bit is cleared. The result is
'frac' in Q31.

The compiler type of 'cur_level << zeros' is 'int32_t'. This is a
fuzzer error 'Left shift cannot be represented in int32_t', 
because the leading sign bit is 1. This CL changes the compiler type to
uint32_t.

Bug: chromium:776286
Change-Id: Ie29552b75e690057bd76fc88e747841b531e3802
Reviewed-on: https://webrtc-review.googlesource.com/14841
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20405}
2017-10-24 09:56:08 +00:00
Alessio Bazzica
330bf4076e WebRTC VAD wrapper for APM-QA
Alternative VAD based on the existing one in WebRTC.
It is used to extract VAD annotations in APM-QA.

TBR=

Bug: webrtc:7494
Change-Id: I6af412742f804631ad4f3ba3ccf71a30d74de984
Reviewed-on: https://webrtc-review.googlesource.com/14553
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20404}
2017-10-24 08:34:38 +00:00
Zhi Huang
ef48df9aeb Fix the issues in SrtpTransport.
In SrtpTransport::SetRtcpParams, send_rtcp_session_ should really call
SetSend rather than SetRecv.

Modified the LOG message in SrtpTransport::SetRtpParams.

Bug: webrtc:8436
Change-Id: Iccbfbc5ef2d4f4ebd5f876c3f6dcc81671fdc631
Reviewed-on: https://webrtc-review.googlesource.com/14562
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20403}
2017-10-24 01:08:18 +00:00
Steve Anton
a17ce27b20 Revert "Enable the clang style plugin in rtc_base/"
This reverts commit af551a1956.

Reason for revert: Fails to compile on Chromium FYI bot: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/21375

Original change's description:
> Enable the clang style plugin in rtc_base/
> 
> Enabled the plugin and cleaned up all issues it found.
> 
> Bug: webrtc:163
> Change-Id: Id63f0deb7b335690157ab157c35177b7836688da
> Reviewed-on: https://webrtc-review.googlesource.com/14660
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20401}

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

Change-Id: Iafdf4bc1744a981b5d7d38e4a0c5b2d88753f00a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:163
Reviewed-on: https://webrtc-review.googlesource.com/14740
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20402}
2017-10-24 00:43:59 +00:00
Steve Anton
af551a1956 Enable the clang style plugin in rtc_base/
Enabled the plugin and cleaned up all issues it found.

Bug: webrtc:163
Change-Id: Id63f0deb7b335690157ab157c35177b7836688da
Reviewed-on: https://webrtc-review.googlesource.com/14660
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20401}
2017-10-23 23:25:17 +00:00
Edward Lemur
c5ee987d26 Stop using std::tr1
It's all in std now.

Bug: b/67839180
Change-Id: I95fc78e87055f5f7456e4fc1a80779e29e98db3d
Reviewed-on: https://webrtc-review.googlesource.com/14642
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20400}
2017-10-23 22:11:58 +00:00
Steve Anton
8a63f78ffa Rewrite the remaining few WebRtcSession tests.
Bug: webrtc:8222
Change-Id: I18e2a449b77cee2ecb8c0c2ae94c105247116458
Reviewed-on: https://webrtc-review.googlesource.com/8740
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20399}
2017-10-23 21:05:17 +00:00
Steve Anton
da6c095b30 Rewrite WebRtcSession data channel tests as PeerConnection tests
Bug: webrtc:8222
Change-Id: I1382a0727b04dfd33e79992841d885f640b3a032
Reviewed-on: https://webrtc-review.googlesource.com/8281
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20398}
2017-10-23 19:13:47 +00:00
Steve Anton
6f25b090d4 Reland "Rewrite WebRtcSession BUNDLE tests as PeerConnection tests"
This is a reland of b49b66109e.

Original change's description:
> Rewrite WebRtcSession BUNDLE tests as PeerConnection tests
> 
> Bug: webrtc:8222
> Change-Id: Id47e4544dc073564ad7e63d02865ca80dd5a85ff
> Reviewed-on: https://webrtc-review.googlesource.com/8280
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20365}

Bug: webrtc:8222
Change-Id: If3dcd8090875c641881e2b9e92fc1db387ba1de5
Reviewed-on: https://webrtc-review.googlesource.com/14400
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20397}
2017-10-23 17:10:47 +00:00
Anders Carlsson
f3ee3b7478 Support RGB frames in RTCCVPixelBuffer
In addition to NV12 frames, also support cropping/scaling RGB frames and
converting RGB frames to i420.

This CL also removes the hardcoding of pixel format in
RTCCameraVideoCapturer. Instead, use the first available format for the
output device that our pipeline supports.

Bug: webrtc:8351
Change-Id: If479b4934c47cd2994936913f55e60fbbee3893b
Reviewed-on: https://webrtc-review.googlesource.com/8920
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Daniela Jovanoska Petrenko <denicija@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20396}
2017-10-23 15:34:28 +00:00
henrika
a642efb6ee Ensures that iOS audio parameters are valid.
Bug: b/62909493
Change-Id: I0f7621f884f7cb9ae9262fb99d2cf33770b31344
Reviewed-on: https://webrtc-review.googlesource.com/14554
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20395}
2017-10-23 14:57:57 +00:00
Alessio Bazzica
ba68aabb06 Fix of integer overflow in WebRtcAecm_ProcessBlock / ApmTest.Process
This CL includes the patch from oprypin@webrtc.org, which is also applied
to the MIPS code (also affected), and the protobuf for ApmTest.Process
(audio_processing_unittest.cc), which used when WEBRTC_AUDIOPROC_FIXED_PROFILE
is set.

This change has been tested on mobile platforms.

Bug: webrtc:8200
Change-Id: Ic50a5ab57c16551397756b1fb473e1067b8e7ece
Reviewed-on: https://webrtc-review.googlesource.com/10811
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20394}
2017-10-23 14:25:37 +00:00
Niels Möller
f92d871f4f Let ChanneOwner use scoped_refptr and RefCountedBase.
Eliminates manual reference counting logic, and one of the few
remaining uses of the Atomic32 type.

Bug: webrtc:8270
Change-Id: Ibbbf227c710f7e8f68a98bac46d3e24b7cb5ee2f
Reviewed-on: https://webrtc-review.googlesource.com/14600
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20393}
2017-10-23 14:22:17 +00:00
Peter Hanspers
d92e0b5923 Fixing crash in Mac client when no cameras are available.
Bug: webrtc:8348
Change-Id: Ibf84ca76812d8c002fae9bd7bcf616abc53c78b1
Reviewed-on: https://webrtc-review.googlesource.com/7340
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Daniela Jovanoska Petrenko <denicija@webrtc.org>
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20392}
2017-10-23 13:56:08 +00:00
Edward Lemur
93bc308f31 MB: Add Android Perf (swarming)
TBR=phoglund@webrtc.org

No-Try: true
Bug: chromium:755660
Change-Id: I9ff6304142bfd3b0ab4d2b1cfa46466685d58e09
Reviewed-on: https://webrtc-review.googlesource.com/14060
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Reviewed-by: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20391}
2017-10-23 13:02:07 +00:00
Kári Tristan Helgason
fc313dcda6 Add prefix to codec name constants.
Bug: webrtc:8401
Change-Id: I8cd4685df3609e8b91a79b19789aadef484138d4
Reviewed-on: https://webrtc-review.googlesource.com/14140
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20390}
2017-10-23 12:49:17 +00:00
Peter Hanspers
47217364f5 Adding a KVO context to avoid issues with future super/sub-classing.
Bug: webrtc:8342
Change-Id: I457858056ffc7f33bbfb261153301ea2ccd71a51
Reviewed-on: https://webrtc-review.googlesource.com/6440
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Daniela Jovanoska Petrenko <denicija@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20389}
2017-10-23 12:33:17 +00:00
Alex Loiko
bd92d8dd2a Forgotten 'memset' in NoiseSuppression.
The 'parametricNoise' field is never initialized in the
'WebRtcNs_InitCore' function that initializes a 'NoiseSuppressionC'
struct.

This leads to use of unititialized value, which may affect the audio
output and result of the noise suppressor.

The issue was found by the Chrome fuzzer:
https://clusterfuzz.com/v2/testcase-detail/4749034115039232

Bug: chromium:776673
Change-Id: I1c3fd80cff178f2d5917064ad07f88c7b9a29e7d
Reviewed-on: https://webrtc-review.googlesource.com/14556
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20388}
2017-10-23 12:11:47 +00:00
Henrik Lundin
8731176b92 NetEq: Fix an UBSan error
UBSan will trigger when shifting a negative value. This change avoids
that by replacing "x << 8" with "x * (1 << 8)".

Bug: chromium:666877
Change-Id: Ic89bd98e5a3feff35075df96b104b386cb4d8803
Reviewed-on: https://webrtc-review.googlesource.com/14552
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20387}
2017-10-23 11:56:47 +00:00
Niels Möller
9155e4986d New classes RefCounter and RefCountedBase.
Bug: webrtc:8270
Change-Id: Ibdab81b3fcbe6cba9ae24033f56c84b13c868b21
Reviewed-on: https://webrtc-review.googlesource.com/2684
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20386}
2017-10-23 11:46:47 +00:00
philipel
ccdfccaa6f New PacketQueue2 behind WebRTC-RoundRobinPacing field trial.
To make testing easier all of PacketQueues functions have been made virtual,
and PacketQueue2 now inherits PacketQueue. This change was made to minimize
changes in PacedSender.

Bug: webrtc:8287, webrtc:8288
Change-Id: I2593340e7cc7da617370b0a33e7b9deeb46d9487
Reviewed-on: https://webrtc-review.googlesource.com/9380
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20385}
2017-10-23 11:39:57 +00:00
Mark Brand
0c720505af Adding libFuzzer target for UlpFEC receiver.
Bug: none
Change-Id: I20e622455aee2f5aebad835e915d65f3475fbd17
Reviewed-on: https://webrtc-review.googlesource.com/14300
Commit-Queue: Mark Brand <markbrand@google.com>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20384}
2017-10-23 11:37:07 +00:00
Niels Möller
4d9ac5886d Use C++11 static initialization, replacing Atomic32 CompareExchange.
Bug: webrtc:8270
Change-Id: I328cec46be2a017a518946d19d21c242a067747d
Reviewed-on: https://webrtc-review.googlesource.com/14220
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Zijie He <zijiehe@chromium.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20383}
2017-10-23 10:57:57 +00:00
Niels Möller
d6314d9fc1 Delete unused method PacedSender::AverageQueueTimeMs
It was used only in tests.

Bug: webrtc:8422
Change-Id: I67b58663c171202240d1c5a7c230d6cd4cd6149b
Reviewed-on: https://webrtc-review.googlesource.com/13102
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20382}
2017-10-23 09:06:17 +00:00
Mirko Bonadei
b7e1788466 Fixing other unsafe conversions.
The bot "Win (more_configs)" has spotted another unsafe type conversion.

This CL is a follow-up of:
- https://webrtc-review.googlesource.com/c/src/+/12921
- https://webrtc-review.googlesource.com/c/src/+/13122
- https://webrtc-review.googlesource.com/c/src/+/13622

Bug: chromium:759980
Change-Id: I9a4268e7ea938cc85376211b40767fd8465f37fd
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/13623
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20381}
2017-10-23 07:59:39 +00:00
Taylor Brandstetter
5526687dfc Add instructions for converting SCTP verbose log to pcap file.
This is pretty useful if you need to debug an SCTP issue. SCTP goes
over DTLS, which is encrypted, which means you need a private key
in order to decrypt a normal packet capture. We don't log this key,
for understandable reasons. So the alternative is to turn on SCTP
verbose logging, then turn the text log into a pcap file.

NOTRY=True
TBR=zhihuang@webrtc.org

Bug: None
Change-Id: If3380d7953ea829b3ae9945326d3c820ce7cc6a3
Reviewed-on: https://webrtc-review.googlesource.com/14561
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20380}
2017-10-22 23:13:55 +00:00
Taylor Brandstetter
cb423c43b0 Adding comment about ice_connection_state really being ICE+DTLS.
NOTRY=True
TBR=zhihuang@webrtc.org

Bug: webrtc:6145
Change-Id: I02c75ddd96007d942cc4d3ee8313691cf0be6827
Reviewed-on: https://webrtc-review.googlesource.com/14560
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20379}
2017-10-22 20:46:05 +00:00
Ilya Nikolaevskiy
1c1a6815ae Revert "Add fine grained dropped video frames counters on sending side"
This reverts commit 4b1a363e4c.

Reason for revert: Breaks dependent android projects.

Original change's description:
> Add fine grained dropped video frames counters on sending side
> 
> 4 new counters added to SendStatisticsProxy and reported to UMA and logs.
> 
> Bug: webrtc:8355
> Change-Id: Idf9b8dfc295c92821e058a97cb3894dc6a446082
> Reviewed-on: https://webrtc-review.googlesource.com/12260
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20347}

TBR=deadbeef@webrtc.org,ilnik@webrtc.org,sprang@webrtc.org,stefan@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8355
Change-Id: I59b02f4eb77abad7ff1fbcbfa61844918c95d723
Reviewed-on: https://webrtc-review.googlesource.com/14500
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20378}
2017-10-21 09:23:54 +00:00
Steve Anton
8d3444df2d Reland "Rewrite WebRtcSession media tests as PeerConnection tests"
This is a reland of 3df5dcac9b
Original change's description:
> Rewrite WebRtcSession media tests as PeerConnection tests
> 
> Bug: webrtc:8222
> Change-Id: I782a3227e30de70eb8f6c26a48723cb3510a84ad
> Reviewed-on: https://webrtc-review.googlesource.com/6640
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20364}

Bug: webrtc:8222
Change-Id: I0a5398170d469eb9223bc781bfb417a85a72a2d2
Reviewed-on: https://webrtc-review.googlesource.com/14380
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20377}
2017-10-21 01:38:14 +00:00
Yuwei Huang
160c02089e Implement Atomic32 using C++11's std::atomic
Chromoting is planning to bump up the iOS deployment target to 10.0
before but is blocked by WebRTC because it uses deprecated OSAtomic*
APIs.

This CL replaces the platform specific Atomic32 implementation and uses
C++11's std::atomic instead.

Bug: webrtc:8413
Change-Id: Icbd29bb92eec60066589bbabf53e0d50df2f9b0d
Reviewed-on: https://webrtc-review.googlesource.com/12740
Commit-Queue: Yuwei Huang <yuweih@google.com>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20376}
2017-10-20 23:25:04 +00:00
Olga Sharonova
f2662f08e5 Revert "Rewrite WebRtcSession media tests as PeerConnection tests"
This reverts commit 3df5dcac9b.

Reason for revert: suspected of breaking chromium.webrtc.fyi:
WebRtcBrowserTest.NegotiateUnsupportedVideoCodec
WebRtcBrowserTest.NegotiateNonCryptoCall

android https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus5%29/builds/25506
linux https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Linux%20Tester/builds/38809
mac
https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Mac%20Tester/builds/44120
windows
https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Win10%20Tester/builds/9236

Original change's description:
> Rewrite WebRtcSession media tests as PeerConnection tests
> 
> Bug: webrtc:8222
> Change-Id: I782a3227e30de70eb8f6c26a48723cb3510a84ad
> Reviewed-on: https://webrtc-review.googlesource.com/6640
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20364}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org

Change-Id: Iaacc950d050ba2835d262908658dc045f234ef5b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8222
Reviewed-on: https://webrtc-review.googlesource.com/14160
Commit-Queue: Olga Sharonova <olka@webrtc.org>
Reviewed-by: Olga Sharonova <olka@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20375}
2017-10-20 13:00:45 +00:00
Olga Sharonova
b49b66109e Revert "Rewrite WebRtcSession BUNDLE tests as PeerConnection tests"
This reverts commit 096e367bfd.

Reason for revert:
suspected of breaking chromium.webrtc.fyi:
WebRtcBrowserTest.NegotiateUnsupportedVideoCodec
WebRtcBrowserTest.NegotiateNonCryptoCall

android https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus5%29/builds/25506
linux https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Linux%20Tester/builds/38809
mac
https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Mac%20Tester/builds/44120
windows
https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Win10%20Tester/builds/9236

Original change's description:
> Rewrite WebRtcSession BUNDLE tests as PeerConnection tests
> 
> Bug: webrtc:8222
> Change-Id: Id47e4544dc073564ad7e63d02865ca80dd5a85ff
> Reviewed-on: https://webrtc-review.googlesource.com/8280
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20365}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org

Change-Id: I571d8c7fdce4b47137260e0f3276ea4eb04a496c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8222
Reviewed-on: https://webrtc-review.googlesource.com/14240
Reviewed-by: Olga Sharonova <olka@webrtc.org>
Commit-Queue: Olga Sharonova <olka@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20374}
2017-10-20 12:57:06 +00:00
Ivo Creusen
fd7c0a566a Avoid NetEq triggering a Framelength change when receiving an FEC packet.
Internally in NetEq, an FEC packet looks very similar to a split packet, which caused NetEq to miscalculate the frame length of FEC packets. This incorrect framelength calculation was incorrectly handled as a framelength change by NetEq.

Bug: webrtc:8410
Change-Id: Icaea961d055e49d7726b87811881db0b9149805b
Reviewed-on: https://webrtc-review.googlesource.com/12420
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20373}
2017-10-20 11:56:23 +00:00
Sami Kalliomäki
9434240f7e Fix a crash in AppRTCMobile when videoCodec is set to null.
peerConnectionParameters.videoCodec can be null in some cases.
Previously, this would cause a crash in AppRTCMobile.

Bug: b/67938523
Change-Id: I30ebf0f91fad23a3cf34946736b9f4e6c266277f
Reviewed-on: https://webrtc-review.googlesource.com/14200
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20372}
2017-10-20 11:55:03 +00:00
henrika
36636a2d6c Removes StaticAccessedFromInstance warning in Android audio track.
Fixes the warning below:

WebRtcAudioTrack.java:364: warning: [StaticAccessedFromInstance] Static method getMaxVolume
should not be accessed from an object instance; instead use AudioTrack.getMaxVolume
+ "max gain: " + audioTrack.getMaxVolume());

Bug: NONE
Change-Id: I6247584b65ac972a6a3739fba718387873964f9f
Reviewed-on: https://webrtc-review.googlesource.com/14180
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20371}
2017-10-20 11:02:03 +00:00
Åsa Persson
d29b54c93a Set start time for encoded framerate tracker on first incoming frame (instead of
when first key frame is encoded) to avoid a too high initial estimate.

Bug: webrtc:8375
Change-Id: I404e394d8f2ac648170dd3828065435a4d2c6147
Reviewed-on: https://webrtc-review.googlesource.com/14061
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20370}
2017-10-20 10:20:43 +00:00
Alex Narest
78609d5b6b Reland of BWE allocation strategy
TBR=stefan@webrtc.org,alexnarest@webrtc.org

Bug: webrtc:8243
Change-Id: Ie68e4f414b2ac32ba4e64877cb250fabcb089a07
Reviewed-on: https://webrtc-review.googlesource.com/13940
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Alex Narest <alexnarest@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20369}
2017-10-20 10:16:15 +00:00
Henrik Lundin
b82de30080 Add new neteq_signal_fuzzer
NetEq has been fuzzed by neteq_rtp_fuzzer for some time. That fuzzer
hammers the RTP data, but leaves much of the other data alone. This
new fuzzer instead alters the encoded audio, packet arrival timing,
clock drift, and packet losses.

Bug: webrtc:8421
Change-Id: Ie25b77590a66a7451f32a73c6b5b570944244027
Reviewed-on: https://webrtc-review.googlesource.com/13860
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20368}
2017-10-20 09:05:54 +00:00
Sam Zackrisson
6f38d25f11 Add Java support for AudioProcessing and PostProcessing injection
This allows injection of a user-defined post processing module from
the Android layer.

Bug: webrtc:8163
Change-Id: If3a6b4726c34c5f82d186b8cf95373c283cbd3f6
Reviewed-on: https://webrtc-review.googlesource.com/7610
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20367}
2017-10-20 08:37:23 +00:00