This is to make it easier to add new arguments to the method in the
future. We will remove the already existing method accordingly to WebRTCs deprecation rules.
Bug: webrtc:358039777
Change-Id: Id0706de5216fbd0182cac80ebfccfc4a6a055ee8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364642
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Auto-Submit: Fanny Linderborg <linderborg@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43181}
The goal is to be able to write the rtc::Buffer by another utility
(like rtc::ByteBufferWriter) and pass it into EncodedImageBuffer
without memcpy.
Bug: webrtc:42223344
Change-Id: Ieda55e77a36636e8cdff6ad6b7d078de0aeafec0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364243
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43179}
The field trial is just a kill-switch and is enabled by default.
No need to test with and without it.
Bug: chromium:371233788
Change-Id: I1b21670761284d974319aa7adaa3af60863b23ad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364780
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Auto-Submit: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43177}
In simulcast, BW adaptation causes layers to be disabled rather than
downscaling layers. But CPU adaptation restricts the resolution of all
layers, this means that a 540p restriction on 180p:360p:720p results in
180p:360p:540p, which is fine but a) it's inconsistent with BW
adaptation and b) it's not ideal for performance, because non power of
two scaling factors means we can't use a single encoder instance to
produce all layers (the CPU adaptation could actually result in even
more CPU usage and further adaptation as a result).
This CL disables top layers by limiting `max_num_layers` based on
`restrictions_` and the layers' `requested_resolution`, the end result
is 180p:360p:- when CPU adaptation kicks in.
Note that the problem described (and therefore the solution) is
specific to the `requested_resolution` API. If instead the
`scale_resolution_down_by` API is used, all scaling is relative and we
get 135p:270p:540p, which is problematic for other reasons (180p and
360p no longer sent, middle layer no longer HW accelerated).
Bug: webrtc:366415118
Change-Id: I2e238b1b87470413c21623b21d0ce20eadf6c8c7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364660
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43172}
PacketBuffer will ignore any non-idr frame which is firs packet has not
is_first_packet_in_frame set to true if there was a packet loss in the
previous frame even if the cseqs are continous:
https://issues.webrtc.org/issues/368335257#comment14
This CL sets this flag to true to SEI and PPS nal units that would have
caused the delta frames after an idr frame to be dropped in case of loss.
Bug: webrtc:368335257
Change-Id: Ic7150297d7fb4ed274c7d99175ff367100b5cf75
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364241
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43168}
I have implemented that adds multiple codec settings to RtpConfig and
passes them down to the lower layers from WebRtcVideoSendChannel.
Bug: webrtc:362277533
Change-Id: I088d6583f7dcbd4de5deb1e9e08c80a6dc10494f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364440
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43166}
To support libraries and dependencies compatible with absl way of debug printing custom types.
In particular gtest can use AbslStringify to produce nice output when unit types are compared with EXPECT macros.
Bug: None
Change-Id: Ie78293a225f61977f256f0234e07d166b1977e2d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364162
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43164}
Compiling webrtc with `-Werror=unused-parameters` is failling duo to
those parameters.
Also, it shouldn't harm us to put those in comment for code readability as
well.
Bug: webrtc:370878648
Change-Id: I0ab2eafd26e46312e4595f302b92006c9e23d5d2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364340
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43157}
Add media config for using environment monotonic timestamps (i.e. not UTC) in RTCStats constructor, and implemented the usage of the flag.
Bug: chromium:369369568
Change-Id: Ia93d048742c28af201164fe7b2152b791bb6d0b6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/363946
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Olov Brändström <brandstrom@google.com>
Cr-Commit-Position: refs/heads/main@{#43156}
This is a reland of commit 4334cdfc5c0619a5f06125ea1f039cb123ccf21e
Original change's description:
> Reland "Return audio stats regarless if we have a codec."
>
> This is a reland of commit 7fff587a096c6ef40f5601f47ef50b221b3a4abf
>
> Original change's description:
> > Return audio stats regarless if we have a codec.
> >
> > Bug: b/331602608
> > Change-Id: I2d12a3ed83645fe1e7cbd8950fd86d5ba2d7c94d
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361743
> > Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
> > Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#42964}
>
> Bug: b/331602608
> Change-Id: I95c89e7059005bc8dd8569ef41bfe9e863b4082f
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361762
> Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
> Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#42969}
Bug: b/331602608
Change-Id: I743f0d623230bf871de262792981de35c156ba3e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364461
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43142}
This has been deprecated since November 2022.
Bug: None
Change-Id: Ia547489b1f703d0744ab7ffc096eeadbb937974a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364381
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43140}
A slight behavior change is that we only increment total samples received when GetAudio is successful.
Bug: webrtc:370424996
Change-Id: I8607418c179ca3bc22963b98792a9e8b9af2d451
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364220
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43139}
When AdaptFrameResolution() applies the requested resolution as a
restriction (max width and max height) it does so on the "input" size
rather than on the "output" size. While this results in the correct
output size anyway, it also produces cropping which results in the image
looking zoomed in (see https://crbug.com/webrtc/369865055 for repro).
To fix this issue the restrict logic is moved and applied on the
"output" instead. The logic is updated to take alignment into account
since the resulting size is the final output.
Bug: webrtc:369865055
Change-Id: I2d5476929432c45173a57c0f4964ab9a38518189
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364163
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43138}