The declaration in common_types.h is probably a left-over from a
previous cleanup.
Bug: None
Change-Id: I3ee1bad2494ede0022c6aa8fdd106035471d50e2
Reviewed-on: https://webrtc-review.googlesource.com/99220
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24666}
Use a map of packet sizes in RtpPacketHistory instead of looping through the whole history for every call.
Bug: webrtc:9731
Change-Id: I44a4f6221e261a6cb3d5039edfa7556a102ee6f1
Reviewed-on: https://webrtc-review.googlesource.com/98882
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24662}
Patch by justincohen@, uploaded by phoglund@.
This moves our trybots to 10.13+, which is required for xcode 10,
which is now required by the build scripts.
Bug: None
Change-Id: I77d47bcb6696d290a397b098966ecc4ea1c0aeb9
Reviewed-on: https://webrtc-review.googlesource.com/97301
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24661}
The NetEqTest class was recently refactored. In the process, the
functionality for measuring the simulation time suffered a bug. This
CL fixes it.
Bug: webrtc:9667
Change-Id: I139e697ede21584ef77ae23cfa8e77f6dac65b51
Reviewed-on: https://webrtc-review.googlesource.com/98982
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24658}
Added back the 'agc2 level estimation' flag. Also added a flag for
moving the level measurement before AEC and NS. This is to run offline
experiments with audioproc_f.
Bug: webrtc:7494
Change-Id: I3e3ffceede7166b754130be2b707b620ba527e9f
Reviewed-on: https://webrtc-review.googlesource.com/97442
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24657}
This CL adjusts the behavior of the AEC3 echo suppressor behavior
initially in the call, and when there has been delay changes. The
results is that short echo blips/bursts present in some such cases
no longer occur.
In particular this CL:
-Ensures that the suppressor back-off under stationary render
conditions does not occur until the linear filter has had the
ability to converge.
-Ensures that a previously converged filter behavior detection
is not sticky for stable and linear echo paths, which in turn
prevents echo leakage due to the more liberal echo suppressor
behavior applied on such platforms.
-Removes a bug that caused a random and jittery behavior for
the usage of the linear filter output initially in the calls
and after echo path changes
Bug: webrtc:9737, chromium:882396
Change-Id: Id2b46e366dc58ab8137f19ed59a2034c89ca3087
Reviewed-on: https://webrtc-review.googlesource.com/99063
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24656}
no behavior changes expected.
Different exension for the 1st packet will be added in a follow-up
Bug: webrtc:9680
Change-Id: I8c853b2710d58df579aeb4b029b42210310423cc
Reviewed-on: https://webrtc-review.googlesource.com/98843
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24655}
Fix race between FrameGeneratorCapturer destructor and inserting a frame.
(aka do not use this after reposting self to a TaskQueue)
Separate periodic case from one-time case.
When Generator can't keep up with fps, drop frames instead of trying to catch up.
Use absl::make_unique and absl::WrapUnique
Bug: None
Change-Id: I9d5d1fcacf174e28d83310099b79e26ece9b7b37
Reviewed-on: https://webrtc-review.googlesource.com/98844
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24654}
With "aggressive" preset the default bundlePolicy is set to "maxBundle" when it shoud be "balanced" according to spec.
Bug: webrtc:9458
Change-Id: Ifbdd76be3a6d9968574cba857f178d5f859dcb87
Reviewed-on: https://webrtc-review.googlesource.com/88567
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24650}
This should also solve the trigger problem on the iOS perf bot.
Remove device_type which appears to be ignored anyway. For instance,
device_type said iphone 6s but we got iPhone 8 when I actually looked
in the swarming dimension.
Bug: webrtc:7156
Change-Id: I1aa22e7f217deebf9eeee18363622e37ecc2a40e
Reviewed-on: https://webrtc-review.googlesource.com/99060
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24648}
Also read and apply settings when parsing and replaying dumps.
The implementation contains
* an extra field in debug.proto for the runtime settings
* code in AudioProcessingImpl to initiate the logging of the RS to the
AecDump
* code in aec_dump/ to log the RS in the AecDump
* code in test/ for re-playing the RS. E.g. for APM simulation with
audioproc_f.
Bug: webrtc:9138
Change-Id: Ia2a00537c2eb19484ff442fbffd0b95f8495516f
Reviewed-on: https://webrtc-review.googlesource.com/70502
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24647}
This reverts commit ae9e188e67a489db597224e3cfcfdee04edf0cba.
Reason for revert: Verify if this causes chromium:882358.
Original change's description:
> Frame rate controller per spatial layer.
>
> This allows VP9 encoder wrapper to control frame rate of each spatial
> layer. The wrapper configures encoder to skip encoding spatial layer
> when actual frame rate exceeds the target frame rate of that layer.
> Target frame rate of high spatial layer is expected to be equal or
> higher then that of low spatial layer. For now frame rate controller
> is only enabled in screen sharing mode.
>
> Added unit test which configures encoder to produce 3 spatial layers
> with frame rates 10, 20 and 30fps and verifies that absolute delta of
> final and target rate doesn't exceed 10%.
>
> Bug: webrtc:9682
> Change-Id: I7a7833f63927dd475e7b42d43e4d29061613e64e
> Reviewed-on: https://webrtc-review.googlesource.com/96640
> Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24593}
TBR=sprang@webrtc.org,ssilkin@webrtc.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: webrtc:9682, chromium:882358
Change-Id: Idc4051eef72104823038ed9139bb9c75018f7d86
Reviewed-on: https://webrtc-review.googlesource.com/99082
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24646}
Today, the internal frame dropper in libvpx vp8 encoder is enabled or
disabled based on video or screen content. This is then expected to
match up with screenshare vs default temporal layers implementation.
This cl makes libvpx query the temporal layers implementation as well,
breaking this implicit dependency and allows frames to be dropped if
default temporal layers is used with screen content.
Bug: webrtc:9734
Change-Id: If2523a211f4929f16e65a02fa7a6b4edf7328571
Reviewed-on: https://webrtc-review.googlesource.com/99062
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24645}
This CL adds more useful information to NetEqState, and implements setting action_times_ms, which can be used to get a better idea of what actually happened during a timestep.
Bug: webrtc:9667
Change-Id: I789a3e1ad852066fdf4e9b4c96b8fb6033dacb27
Reviewed-on: https://webrtc-review.googlesource.com/98163
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24643}
Improve HasAttribute to handle the case where the beginning of an
attribute name is also an attribute name in it self. Two attributes
that have this relation are extmap-allow-mixed and extmap.
Bug: webrtc:9712
Change-Id: Iee660cc6e3dc7f2e7c56664a4f0ffb298eca9208
Reviewed-on: https://webrtc-review.googlesource.com/97422
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24640}
The tests crashed and were disabled temporarily. The crash was probably
caused by chromium:879307 which was fixed recently.
Bug: webrtc:9506
Change-Id: I08872c0370c9cf5dc4769daf68b7c61135a55c9e
Reviewed-on: https://webrtc-review.googlesource.com/99080
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24638}
Currently, invalid PeerConnection object is returned. With this change,
null is returned instead. This can be more easily handled in the
application layer.
Bug: webrtc:9440
Change-Id: I44dfee81a681f033b8d336c999d43ff1c69fb015
Reviewed-on: https://webrtc-review.googlesource.com/98480
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24637}
Non trivially destructible objects with static storage are disallowed
by the style guide.
This CL just removes 'static' since these objects are constructed once
or twice in the entire application.
Bug: webrtc:9693
Change-Id: I7509e2c088dd5ec0ac13f08053ecb76cf8259d90
Reviewed-on: https://webrtc-review.googlesource.com/98840
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24634}
At cost of removing assumption callbacks can't be used after destructor.
Bug: webrtc:8239
Change-Id: Id79f7553528cf6c102d3ee0bf7aa2de5b0437d2a
Reviewed-on: https://webrtc-review.googlesource.com/98860
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24632}
Currently we check if a message should be printed at the call site using LogMessage::Loggable, in the LogMessage itself using LogMessage::IsNoop and in LogMessage::OutputToDebug using log_to_stderr_.
This change unifies the first two of these into a early return in Log().
Bug: webrtc:8982
Change-Id: I462b1cf63c44fec46e5c59b147b2b99605aaae0c
Reviewed-on: https://webrtc-review.googlesource.com/98820
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24630}
Rely on C++11 thread-safe initialization on first call to
MessageQueueManager::Instance(), in the same way as for
ThreadManager::Instance().
Bug: None
Change-Id: I26244f90c5d7f94a2454688297f55bf96617e78c
Reviewed-on: https://webrtc-review.googlesource.com/97721
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24625}
Assume that stream has single temporal layer if number of frames in GOF
is set to zero (valid case).
Bug: chromium:879584
Change-Id: I7ced082190e40c1bf4cc1468babfd98b0a61f0dd
Reviewed-on: https://webrtc-review.googlesource.com/98800
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24622}
Using signed integers allows to centralize checking of edge cases
in RtpPacketizer::SplitAboutEqually and
reduce chance of hitting issues with size_t underflow
Bug: webrtc:9680
Change-Id: Ic05bf0a9565a277c4608f43061ca46cf44e82d08
Reviewed-on: https://webrtc-review.googlesource.com/98602
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24618}