Creating a Direct3D11Device from a DXGIDevice is necessary for the new
WGC based window capturer. However, the
CreateDirect3DDeviceFromDXGIDevice API is not available on all
versions of Windows, which means we have to load this function from
d3d11.dll at runtime.
You can see how this function will be used in this CL:
196624: Finish implementing WGC Window Capturer and add unit tests. |
https://webrtc-review.googlesource.com/c/src/+/196624
I also ensure we don't leak HSTRINGs in GetActivationFactory and fix
up some includes in ScopedComInitializer.
Bug: webrtc:9273
Change-Id: Ida240b2c0f637d70ec405de7d8f59f0c12aee1f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/196622
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Austin Orion <auorion@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#32984}
For the case where an unknown header extension URI is attempted
to be modified by SetOfferedRtpHeaderExtensions, WebRTC emitted
INVALID_PARAMETER. Fix this by emitting UNSUPPORTED_PARAMETER.
Bug: chromium:1051821
Change-Id: I98b68e1e3a3f90f9cfa0d45833f46a307c246ad0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201733
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32983}
SetNegotiatedHeaderExtensions_w queued a task to update the list
of negotiated header extensions on the signal thread from the
worker thread, in belief that a later call to
GetNegotiatedHeaderExtensions() would happen on the WebRTC proxies,
leading to the update happening before the readout. In downstream
project, this is not always the case.
Fix this by synchronously updating the list of negotiated header
extensions.
Bug: chromium:1051821
Change-Id: I3266292e7508bb7a22a3f7d871e82c12f60cfc83
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201728
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32977}
This adds a new way to poll decoder metadata.
A default implementation still delegates to the old methods.
Root call site is updates to not use the olds methods.
Follow-ups will dismantle usage of the olds methods in wrappers.
Bug: webrtc:12271
Change-Id: Id0fa6863c96ff9e3b849da452d6540e7c5da4512
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/196520
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32976}
residual_echo_detector and level_estimation is not part of gain_controller2
in AudioProcessing::Config.
Bug: None
Change-Id: Ic31b8c6bb4d9ed59b4f337e5dc8b8c587ae54202
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/200924
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32972}
Higher range of IDs for peer connection has been exhausted.
Adding AV1 to lower range as it was blocking enabling
libaom by default.
This is blocking crrev.com/c/2617229
Bug: chromium:1095763
Change-Id: If5135122954d00cc03afc563071aec99f145140b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201523
Commit-Queue: Jerome Jiang <jianj@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32967}
This is a reland of 444e04be6988fbdcc039d775481ac22481ff9ff4
Reason for reland: resolved the breaks from downstream project
Original change's description:
> ChannelStatistics used for RTP stats in VoipStatistics.
>
> - Added local and remote RTP statistics query API.
> - Change includes simplifying remote SSRC change handling
> via received RTP and RTCP packets.
>
> Bug: webrtc:11989
> Change-Id: Ia3ee62c1191baaedc67e033ea3c661d8c9301abc
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/199060
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Sam Zackrisson <saza@webrtc.org>
> Commit-Queue: Tim Na <natim@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32954}
Bug: webrtc:11989
Change-Id: I88620a9f1c037b512821cac9d556905149666870
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201481
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Tim Na <natim@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32966}
This removes every reference but the "--master/-m" cmd-line arg and the
"masters" mb_config.pyl key, which will be removed in a follow-up once
all users of mb.py (ie: recipes) have switched over.
"builder_group" is also the term we're using when replacing "master" in
recipe code: crbug.com/1109276. So we should conform on using that term
going forward.
Bug: chromium:1117773
Change-Id: I1de1b8e68bcf2c9d68b00a05f0f5761cf8b4ef9a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201382
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Dirk Pranke <dpranke@google.com>
Cr-Commit-Position: refs/heads/master@{#32964}
Ensures the state of the class remains correct even if an unhandled
exception is thrown from this method.
Bug: b/176214704
Change-Id: I94504bb8aa4bd2dba45d116d5fa13da070a3b60f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201621
Reviewed-by: Xavier Lepaul <xalep@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32963}
This version uses relative_packet_arrival_delay as the target metric.
Bug: none
Change-Id: Ie6eb575ce4d13fd005f026862892b14bd4fb1135
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201620
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32962}
Windows cpu clock has low accuracy. We need to fake some load to be sure that the clock ticks.
Bug: webrtc:12249
Change-Id: I6c3b2b0e51badd9b7a58391755a37f4d1c28af40
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201540
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32961}
- Added local and remote RTP statistics query API.
- Change includes simplifying remote SSRC change handling
via received RTP and RTCP packets.
Bug: webrtc:11989
Change-Id: Ia3ee62c1191baaedc67e033ea3c661d8c9301abc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/199060
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Tim Na <natim@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32954}
This reverts commit f23e2144e86400e2d68097345d4b3dc7a4b7f8a4.
Reason for revert: Need further discussion on appropriate thread/tq requirements.
Original change's description:
> Add task queue to RtpRtcpInterface::Configuration.
>
> Let ModuleRtpRtcpImpl2 use the configured value instead of
> TaskQueueBase::Current().
>
> Intention is to allow construction of RtpRtcpImpl2 on any thread.
> If a task queue is provided (required for periodic rtt updates), the
> destruction of the object must be done on that same task queue.
>
> Also, delete ModuleRtpRtcpImpl2::Create, callers updated to use std::make_unique.
>
> Bug: None
> Change-Id: I412b7b1e1ce24722ffd23d16aa6c48a7214c9bcd
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/199968
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Sam Zackrisson <saza@webrtc.org>
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32949}
TBR=danilchap@webrtc.org,ilnik@webrtc.org,saza@webrtc.org,nisse@webrtc.org,srte@webrtc.org
Change-Id: I7e5007f524a39a6552973ec9744cd04c13162432
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201420
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32953}
Absent fps allocation imply single layer stream which confuses bitrate adjuster.
As a result bitrate adjuster turned off S0T1 and S0T2 layers for the L3T3 structure.
Bug: webrtc:12148
Change-Id: I5b3a7b44322f347f41dd8858b3d703827e69dd72
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201384
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32952}
The abs max of a 16 bit integer cannot be represented as a 16 bit integer, because abs(-2^16) is too large. To work around this, we can instead use the index of the max element, convert it to a 32-bit int and then take the absolute value.
Bug: chromium:1158070, chromium:1146835, chromium:1161837
Change-Id: If56177c55ec62b4bd578986a5deae38a91bbc821
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/198123
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32950}
Let ModuleRtpRtcpImpl2 use the configured value instead of
TaskQueueBase::Current().
Intention is to allow construction of RtpRtcpImpl2 on any thread.
If a task queue is provided (required for periodic rtt updates), the
destruction of the object must be done on that same task queue.
Also, delete ModuleRtpRtcpImpl2::Create, callers updated to use std::make_unique.
Bug: None
Change-Id: I412b7b1e1ce24722ffd23d16aa6c48a7214c9bcd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/199968
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32949}
The "//rtc_base:rtc_base" build target has historically been one of the
biggest targets in the WebRTC build. Big targets are the main source of
circular dependencies and non-API types leakage.
This CL is a step forward into splitting "//rtc_base:rtc_base" into
smaller targets (as originally started in 2018).
The only non-automated changes are (like re-wiring the build system):
* The creation of //rtc_base/async_resolver.{h,cc} which allows to
break a circular dependency (is has been extracted from
//rtc_base/net_helpers.{h,cc}).
* The creation of //rtc_base/internal/default_socket_server.{h,cc} to
break another circular dependency.
Bug: webrtc:9987
Change-Id: I0c8f5e7efe2c8fd8e6bffa0d6dd2dd494cf3df02
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/196903
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32941}
This is just general cleanup.
The assumed behavior is late decoding, and this function is not used to make any decision (except in the deprecated jitter buffer).
Bug: webrtc:12271
Change-Id: Ifb48186d55903f068f25e44c5f73e7a724f6f456
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/200804
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32940}
OnVideoLayersAllocationUpdated is handled on the encoder task queue in
order to not race with OnEncodedImage callbacks.
Bug: webrtc:12000
Change-Id: I1c9a450cce819a7a0f8827aa0bb675c37350a0c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/200880
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32935}