Reland "Make WebRTC-RTP-Lifetime enabled-by-default."

This reverts commit 0e582e5b50e5642a5cbc49d654d09a388f9b3f69.

Reason for revert: We accidentally impacted Plan B, but this CL no
longer impacts Plan B because we fixed the gating problem in
https://webrtc-review.googlesource.com/c/src/+/406725

Bug: chromium:406585888
Original change's description:
> Revert "Make WebRTC-RTP-Lifetime enabled-by-default."
>
> This reverts commit 0deb9d6d33111cbf2a5b248434870dd9d8b982fc.
>
> Reason for revert: Breaks internal test that assumes RTP stats exist
> prior to reception
>
> Bug: chromium:406585888
> Original change's description:
> > Make WebRTC-RTP-Lifetime enabled-by-default.
> >
> > Ships spec-compliant RTP stats lifetimes as per Intent to Ship:
> > https://groups.google.com/a/chromium.org/g/blink-dev/c/GYqPzIUUZCQ
> >
> > The TL;DR change is:
> > 1. outbound-rtp creation is delayed until O/A has completed, but can
> >    exist prior to sending any packets.
> > 2. inbound-rtp creation is delayed until first packet has been received,
> >    whether or not O/A has completed (allowing early media use case).
> >
> > The flag is kept as a kill-switch, to be removed after this has reached
> > Chrome stable.
> >
> > Bug: chromium:406585888
> > Change-Id: Ibb42d77eb156ba14d2f50e6521d51615551fe489
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/406620
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Commit-Queue: Henrik Boström <hbos@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#45468}
>
> Bug: chromium:406585888
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Change-Id: I0dad2172691d78945b82a7796e51a42cace85d33
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/406761
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Auto-Submit: Henrik Boström <hbos@webrtc.org>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Cr-Commit-Position: refs/heads/main@{#45470}

Bug: chromium:406585888
Change-Id: I99ca9de9fd84cdfe2cfc5f4ac9548ab823fc363d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/406763
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#45477}
2 files changed
tree: 659b4c951a5ca36802dc04863a9b4f046c1f1b55
  1. api/
  2. audio/
  3. build_overrides/
  4. call/
  5. common_audio/
  6. common_video/
  7. data/
  8. docs/
  9. examples/
  10. experiments/
  11. g3doc/
  12. infra/
  13. logging/
  14. media/
  15. modules/
  16. net/
  17. p2p/
  18. pc/
  19. resources/
  20. rtc_base/
  21. rtc_tools/
  22. sdk/
  23. stats/
  24. system_wrappers/
  25. test/
  26. tools_webrtc/
  27. video/
  28. .clang-format
  29. .clang-tidy
  30. .git-blame-ignore-revs
  31. .gitignore
  32. .gn
  33. .mailmap
  34. .rustfmt.toml
  35. .style.yapf
  36. .vpython3
  37. AUTHORS
  38. BUILD.gn
  39. CODE_OF_CONDUCT.md
  40. codereview.settings
  41. DEPS
  42. DIR_METADATA
  43. ENG_REVIEW_OWNERS
  44. LICENSE
  45. license_template.txt
  46. native-api.md
  47. OWNERS
  48. OWNERS_INFRA
  49. PATENTS
  50. PRESUBMIT.py
  51. presubmit_test.py
  52. presubmit_test_mocks.py
  53. pylintrc
  54. pylintrc_old_style
  55. README.chromium
  56. README.md
  57. WATCHLISTS
  58. webrtc.gni
  59. webrtc_lib_link_test.cc
  60. whitespace.txt
README.md

WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.

Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.

The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.

Development

See here for instructions on how to get started developing with the native code.

Authoritative list of directories that contain the native API header files.

More info