It's easy to make small errors when building field trial strings, and
those errors can cause all sorts of weird problems. This CL checks if
the FT string has an odd number of delimiters, duplicate
names or any trailing chars.
If so we'll log a error message. On debug builds we'll also crash.
Bug: webrtc:10729
Change-Id: Iebf7155d9b117a02d1e9cfe7f64408e11df2aec5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140866
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28234}
This reverts commit 11dfff0878c949f2e19d95a0ddc209cdad94b3b4.
Reason for revert: Downstream import failure.
Original change's description:
> Inform VideoEncoder of negotiated capabilities
>
> After this CL lands, an announcement will be made to
> discuss-webrtc about the deprecation of one version
> of InitEncode().
>
> Bug: webrtc:10720
> Change-Id: Ib992af0272bbb16ae16ef7e69491f365702d179e
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140884
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Elad Alon <eladalon@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28224}
TBR=sakal@webrtc.org,kwiberg@webrtc.org,eladalon@webrtc.org,kthelgason@webrtc.org,sprang@webrtc.org
Change-Id: I7f833055c67f1f879b01dd8c156ba7b8840e8747
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10720
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/141411
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28225}
After this CL lands, an announcement will be made to
discuss-webrtc about the deprecation of one version
of InitEncode().
Bug: webrtc:10720
Change-Id: Ib992af0272bbb16ae16ef7e69491f365702d179e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140884
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28224}
These are replaced with the methods SendPictureLossIndication and
SendFullIntraRequest, added in cl
https://webrtc-review.googlesource.com/c/src/+/140043.
Also delete the corresponding state variable
RtpRtcpImpl::key_frame_req_method_, the enum KeyFrameRequestMethod,
and the nearby unused enum RtpRtcpPacketType.
Bug: None
Change-Id: I1ac2e4ce6dbe20d1d1cbb3d5b2256ea55b341a57
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/141403
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28221}
This is a reland of 829a5dce900b781376ea72ba5d869c5dbe58a82d
(unchanged)
Downstream is fixed in https://chromium-review.googlesource.com/1651786
Original change's description:
> Link fewer X11-related libraries
>
> Use an explicit list and don't add X11 dependency to rtc_base.
>
> Allow skipping code that depends on rarer extensions such as Xdamage, Xfixes.
>
> Bug: None
> Change-Id: Icb8d20a267358f5cd3f1ff2af31a669e0670d2f6
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140865
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
> Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28204}
Bug: None
Change-Id: I51c60f7713eb49889cebbca2242f33b81b0aef39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/141301
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28218}
This change is part of a change to break the dependency between "api:rtp_headers" and "api/video:video_frame". It does so by first creating an empty "api/video:video_rtp_headers" build rule so that downstream projects can be fixed before moving the source files.
Bug: webrtc:10668
Change-Id: I81aa6edfef3639b457a40aa93de048e62cbfd8ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140291
Commit-Queue: Chen Xing <chxg@google.com>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28209}
It isn't actively maintained to be up to date but depends on internals
increasing maintenance burden. There's now better tools available to
evaluate congestion controller performance that should be used if we
want to start maintaining this functionality again.
Bug: webrtc:9883
Change-Id: I097747e6f31a3d1522ef8dfda84f995e33f3a697
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140887
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28205}
Use an explicit list and don't add X11 dependency to rtc_base.
Allow skipping code that depends on rarer extensions such as Xdamage, Xfixes.
Bug: None
Change-Id: Icb8d20a267358f5cd3f1ff2af31a669e0670d2f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140865
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28204}
While reading inpùt files until their end, the assert should be
ASSERT_TRUE.
Change-Id: Ib60b68173b58b77d9789c544c7cb647a752a24d1
Bug: webrtc:10690
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140280
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28202}
All usages compare the budget usage to ratios, so we can skip a few
multiplications.
Bug: webrtc:10719
Change-Id: I0205d74762043d972c087c152915e4fdd9510057
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140289
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28190}
As this is handled higher up the pipeline in a single
place for all encoders/decoders
Bug: webrtc:10460
Change-Id: I95b0a69aecaf07283c8776ac0d7e85d097e3576b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139882
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28172}
Using this flag, an encoder may inform the RTP sender module that
the packet is not elligible for retransmission. Specifically, it
may not be retransmitted in response to a NACK message,
nor because of early loss detection (see CL #135881).
Bug: webrtc:10702
Change-Id: Ib6a9cc361cf10ea7214cf672e05940c27899a6be
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140105
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28169}
Some of the TODOs associated with webrtc:10336 which are
currently in the codebase have recently been resolved,
but not all relevant TODOs have been removed.
TBR=kwiberg@webrtc.org
Bug: webrtc:10336
Change-Id: Iff1d0fc94dee5bf49226f6ea3d9127fea77e9d68
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139902
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28167}
Replaced by separate methods
SendPictureLossIndication and SendFullIntraRequest.
The split SetKeyFrameRequestMethod/RequestKeyFrame implicitly
requires that the two methods are called on the same thread, to avoid a
data race. After downstream code is updated, both deprecated
methods and the member |ModuleRtpRtcpImpl::key_frame_req_method_| can
be deleted.
Bug: None
Change-Id: I454f6d16b667f2306cba0dec467ddc183ad449c8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140043
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@{#28163}
It was introduced, together with the PacketLossStats class, in cl
https://codereview.webrtc.org/1198853004 (#9568). It is unused in webrtc,
but there's downstream usage of the PacketLossStats class, which
should perhaps be moved or deleted in a later cl.
Bug: None
Change-Id: I17a3d5c8748f2cc9809c438630cbe8ab680466c4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140042
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28153}
Insert first packet before calling to decode.
Bug: webrtc:10690
Change-Id: I721b7af0506f0dbaf4fa2ed6a9ba6a87250d08f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139103
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28149}
Loss notifications may either be sent immediately, or wait until another
RTCP feedback message is sent.
Bug: webrtc:10336
Change-Id: I40601d9fa1dec6c17b2ce905cb0c8cd2dcff7893
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139242
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28142}
This is an usual error while using neteq_quality_test. This tool
does not support wav files as input. Adding a validation.
Bug: webrtc:10690
Change-Id: I18ed308d2f688106728df5df25e0a58c7170f411
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139104
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28141}
The test RunPlayoutAndRecordingInFullDuplex makes the speakers play the
signal it simultaneously records from the microphone, which can cause
full howling.
The test itself measures buffer usage and does not depend on what signal
is played through the speakers. This change mutes the speakers to prevent
howling when running modules_unittests.
Bug: webrtc:10704
Change-Id: I6176adb2fb5ce0e4d86f6f447476be8a88c2f2cf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139889
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28140}
Currently, if LNTF and NACK messages are both created, they will
be sent out in separate RTCP messages. This is wasteful.
This CL is the first of in a series of CLs that will ensure that
these feedback messages can be buffered together, without introducing
more of a delay than the CPU time required to process both messages.
Bug: webrtc:10336
Change-Id: I950324112ee346695a12a17d025483ea5e99c732
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139112
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28136}
Instead of setting a runtime, allow neteq_quality_test to
consume a complete file using --runtime_ms -1
Bug: webrtc:10690
Change-Id: I90d35cf31996d9336fef817b9332a2cd1d04e77e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139101
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28134}
In addition to the 48 kHz that we've always used.
Bug: webrtc:10631
Change-Id: If73bf7ff9c1c0d22e0d1caa245128612850f8e41
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138268
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28104}
Currently, the packet in the history that most closely matches the bit
budget between two PacedSender::Process() calls is selected to be
retransmitted. This usually means that the smallest packet in the
history is selected over and over.
With this new field trial, we ignore the size constraint (since you're
sending padding, you obviously have some bandwidth to spare) and
instead prefer packets that have the fewest transmission times first,
and after that we prefer new packets over older ones. This way, in
case of available bandwidth but small loss, these padding packets have
a greater chance of actually being useful to the receiver.
Bug: webrtc:8975
Change-Id: I15a69231f44bfbefcb9ab38dd7886b966e3af6fe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/135954
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28084}
The probe configuration is currently a single field trial. To allow
multiple experiments with non-overlapping subsets of these keys I've
added a few extra keys that override different subsets of the config.
Bug: webrtc:10394
Change-Id: I54ffd1105129794fcdae4cce314910acaa4074af
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138274
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28076}