The first argument of FindMatchingCodec is supposed to be the list that
contains the codec to be found, specifically to handle RTX codecs that
point to other codecs. But this wasn't being done everywhere, and wasn't
noticed because *most of the time* it just results in adding the RTX
codec in a different location, which isn't an issue.
But, it's still not standards-compliant. And it sometimes is an issue
when talking to older endpoints.
Adding a regression test, and DCHECK in FindMatchingCodec to ensure this
doesn't happen by accident again.
Bug: webrtc:8332
Change-Id: I5def056b245c6d00a49a59d429f1dee303fb7cef
Reviewed-on: https://webrtc-review.googlesource.com/6240
Reviewed-by: Justin Uberti <juberti@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20130}
This method allows the client to get details about the SSL
certificate sent by the remote side in the DTLS handshake.
This functionality in this new method has been standardized in the
RTCDtlsTransport, but until we have that implemented we wish to
expose this functionality so clients do not need to depend on
WebRtcSession.
Bug: webrtc:8323
Change-Id: Ic964266dd7e734cec07289a147fd8d090d74ce6b
Reviewed-on: https://webrtc-review.googlesource.com/5641
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20129}
This CL changed the behavior of the logging APIs:
https://webrtc-review.googlesource.com/c/src/+/4160
They now no longer automatically load the native library. So the
comment needs to be updated. This change broke at least one application
that was trying to enable logging before anything else.
NOTRY=True
TBR=sakal@webrtc.org
Bug: None
Change-Id: I845aa8de2eebf3687884fbf69668f56e11a3d93c
Reviewed-on: https://webrtc-review.googlesource.com/6200
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20127}
SignalProcessingUtils.MixSignals() now allows different padding options.
This CL also adds more unit tests for SignalProcessingUtils.MixSignals().
Bug: webrtc:7494
Change-Id: Id62fe9998e512c275cb6399e0aedf11f23a9f36e
Reviewed-on: https://webrtc-review.googlesource.com/5780
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20122}
RegisterPacketFeedbackObserver signals congestion controller object is
ready to process incoming packet, thus call it as last statement in the constructor
Bug: webrtc:8325
Change-Id: I31d8ab04c568e639db12c97b649c2d50a489ce24
Reviewed-on: https://webrtc-review.googlesource.com/5860
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20121}
The two timestamps, rtp time and corresponding system time, are always
used together, for audio/video sync. The new method reads both
timestamps, without releasing a lock in between. Ensures that the
caller gets values corresponding to the same packet.
Bug: webrtc:7135
Change-Id: I25bdcbe9ad620016bfad39841b339c266efade14
Reviewed-on: https://webrtc-review.googlesource.com/4062
Commit-Queue: Niels Moller <nisse@webrtc.org>
Commit-Queue: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20120}
RtcEventLogImpl no longer hard-codes the way encoding is done. It now relies on RtcEventEncoder for it. This gives two benefits:
1. We can decide between the current encoding and the new encoding (which is still WIP) without code duplication (no need for RtcEventLogImplNew).
2. Encoding is done only when the event needs to be written to a file. This both avoids unnecessary encoding of events which don't end up getting written to a file, as well as is useful for the new, delta-based encoding, which is stateful.
BUG=webrtc:8111
Change-Id: I9517132e5f96b8059002a66fde8d42d3a678c3bb
Reviewed-on: https://webrtc-review.googlesource.com/1365
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20118}
We're moving to an RtcEventLog interface that accepts std::unique_ptr<EventLog> and stores the event for encoding when encoding becomes necessary, rather than before. This will be useful while we maintain the legacy (current) encoding alongside the new encoding on which we're working.
This CL introduces RtcEventLogEncoderLegacy, which takes provides the encoding currently done by RtcEventLogImpl. After this, we can modify RtcEventLogImpl to use a dynamically chosen encoding, allowing us to easily choose between the current encoding and the new one on which we're working.
BUG=webrtc:8111
TBR=stefan@webrtc.org
Change-Id: I3dde7e222a40a117549a094a59b04219467f490a
Reviewed-on: https://webrtc-review.googlesource.com/1364
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20116}
We're moving to an RtcEventLog interface that accepts std::unique_ptr<EventLog> and stores the event for encoding when encoding becomes necessary, rather than before. This will be useful while we maintain the legacy (current) encoding alongside the new encoding on which we're working.
This CL adds the internals of RtcEvent's subclasses - the actual data that they keep. (Work on this was broken down into several CLs in order to make reviewing easier.)
BUG=webrtc:8111
Change-Id: I402c9c64bffef6a5a6d227bde5da0fd3152daba1
Reviewed-on: https://webrtc-review.googlesource.com/1362
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20108}
This reverts commit b7239a9dc825ddb25dbc800aed3a065163b9a10e.
Reason for revert: Broke chromium mac build, compilation failures on content/renderer/media/webrtc/webrtc_video_frame_adapter.h.
Original change's description:
> Make rtc_base/refcount.h self contained, not including refcountedobject.h.
>
> The refcount.h file doesn't depend on anything from
> refcountedobject.h. The motivation of this change to make it possible
> to add additional declarations to refcount.h, and include it from
> refcountedobject.h.
>
> Bug: webrtc:8270
> Change-Id: I24f6131f471e675570968d00065ff9b1f55e3373
> Reviewed-on: https://webrtc-review.googlesource.com/5760
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20106}
TBR=kwiberg@webrtc.org,nisse@webrtc.org
Change-Id: I7334597cc8979ba9cfaff526967084349ef27f3c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8270
Reviewed-on: https://webrtc-review.googlesource.com/5800
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20107}
The refcount.h file doesn't depend on anything from
refcountedobject.h. The motivation of this change to make it possible
to add additional declarations to refcount.h, and include it from
refcountedobject.h.
Bug: webrtc:8270
Change-Id: I24f6131f471e675570968d00065ff9b1f55e3373
Reviewed-on: https://webrtc-review.googlesource.com/5760
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20106}
This CL is a clean-up to prepare for adding more supported codecs for the internal H264 SW codec.
Bug: webrtc:8317
Change-Id: If483d05c01c40bbc81cbd1a6aad89961689714ef
Reviewed-on: https://webrtc-review.googlesource.com/4940
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20105}
We don't support pre-lion, so all this screencapture code is unnecessary.
This also enables us to delete some code from rtc_base/macutils
Bug: webrtc:6424
Change-Id: I4ef068e8d7b48de9370feee51399033a4d1ae1c3
Reviewed-on: https://webrtc-review.googlesource.com/3420
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20104}
This reverts commit 17a0474379ebba7f48a59f2952b0a184071c47d8.
Reason for revert: Blocks roll into chromium. The Chromium CL this depends on was reverted.
Original change's description:
> Delete reference to webrtc_overides/rtc_base/task_queue.cc.
>
> This change depends on Chromium cl
> https://chromium-review.googlesource.com/c/chromium/src/+/681814,
> which must be landed first.
>
> Bug: webrtc:8166
> Change-Id: I8e1c96ad5927e1d9d4e45e6f6c0b5f712d58cef7
> Reviewed-on: https://webrtc-review.googlesource.com/3940
> Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
> Reviewed-by: Per Kjellander <perkj@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20071}
TBR=kjellander@webrtc.org,nisse@webrtc.org,perkj@webrtc.org
Change-Id: I8bf5a27adb6549c70d9e2b632dfeaf23fab3cdd2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8166
Reviewed-on: https://webrtc-review.googlesource.com/5740
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20103}
This enables the bit exactness tests for the audio level controller.
Additionally, some expected test values are updated.
Bug: webrtc:8309
Change-Id: Ia73f2a16aea4b3e926d70d8b4b8e5d5d801833c7
Reviewed-on: https://webrtc-review.googlesource.com/4426
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20102}
This reverts commit bc675ff3fa71549b0a0fdeca56803b41f4de0f53.
Reason for revert: Crashing video_quality_loopback_test on Android64 Tests (L Nexus9) buildbot. See bug for more details.
Original change's description:
> Reland "Use injectable hardware video decoder/encoder in AppRTCMobile."
>
> This is a reland of 0cbaf1a6f6ad13a25993f6ea3be931894a196834
> Original change's description:
> > Use injectable hardware video decoder/encoder in AppRTCMobile.
> >
> > Also include a small fix for getting the encoder queue.
> >
> > Bug: webrtc:7760
> > Change-Id: I96dc8ffb363b90382276d88148f81d5f89dca5f2
> > Reviewed-on: https://webrtc-review.googlesource.com/2683
> > Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> > Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20022}
>
> Bug: webrtc:7760
> Change-Id: Ia82129fde7abb59120ba5bb23938db9eb576ae91
> Reviewed-on: https://webrtc-review.googlesource.com/4701
> Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20080}
TBR=magjed@webrtc.org,sakal@webrtc.org
Change-Id: Iec30e92c1cc5a547bc2d0b74d12554873fba5e26
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7760
Reviewed-on: https://webrtc-review.googlesource.com/5681
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20096}
In particular, this allows us to have a
SSLCertChain(std::vector<std::unique_ptr<SSLCertificate>>) constructor
that avoids making a copy.
Bug: webrtc:8289
Change-Id: If353ad886a73aecff98b2939db15c40ada6b4474
Reviewed-on: https://webrtc-review.googlesource.com/4361
Commit-Queue: David Benjamin <davidben@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20093}
First patch set runs a script to directly convert log statements.
Second patch sets manually fixes smaller errors.
Due to the size of this change, the remaining WEBRTC_TRACE statements will
be handled in a different CL.
Bug: webrtc:5118
Change-Id: Ic39c3a6310a2b461b47a7b4757210d98637e8acd
Reviewed-on: https://webrtc-review.googlesource.com/1228
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20091}
This change is part of the work to merge WebRtcSession into
PeerConnection. To make that work easier, this moves all clients
of WebRtcSession to use shims added to PeerConnection. That way
when the classes are merged they won't need to be modified.
Bug: webrtc:8183
Change-Id: I5758a5954b91d235faf810c8bf4bf9f6f31d83c1
Reviewed-on: https://webrtc-review.googlesource.com/5040
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20090}
This CL fine-tunes the internal AEC3 parameters to increase the
transparency of the nearend signal.
Bug: webrtc:8322
Change-Id: I2e35165082d88b8f2b1e8367d8ed0e29bd67b4e5
Reviewed-on: https://webrtc-review.googlesource.com/5365
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20082}