mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-12 21:30:45 +01:00
![]() Implements a two-pass approach to packetization which creates packets of an even size similar to RtpPacketizer::SplitAboutEqually. This improves the bandwidth estimation. The algorithm does a first pass with the existing packetizer, then iterates through the resulting packet sizes and sums up the bytes left unused in each packet. It then calculates a new maximum packet length as configured_max_packet_len - ((unused_bytes - packets + 1) / packets) adjusts for the overhead and re-runs the packetization algorithm. For example, a list of OBUs with sizes {1206, 1476, 1431} currently gets packetized greedily as payload sizes {1200, 1200, 1200, 523} With this change, it gets packetized as {1032, 1032, 1032, 1028} This change is guarded by the field trial WebRTC-Video-AV1EvenPayloadSizes which is acting as a rollout flag. BUG=webrtc:15927 Co-authored-by: Shyam Sadhwani <shyamsadhwani@meta.com> Change-Id: I4f0b3c27de6f06104908dd769c4dd1f34115712c Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/348100 Commit-Queue: Philipp Hancke <phancke@meta.com> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Reviewed-by: Per Kjellander <perkj@webrtc.org> Cr-Commit-Position: refs/heads/main@{#42203} |
||
---|---|---|
.. | ||
async_audio_processing | ||
audio_coding | ||
audio_device | ||
audio_mixer | ||
audio_processing | ||
congestion_controller | ||
desktop_capture | ||
include | ||
pacing | ||
portal | ||
remote_bitrate_estimator | ||
rtp_rtcp | ||
third_party | ||
utility | ||
video_capture | ||
video_coding | ||
BUILD.gn | ||
module_common_types_unittest.cc |