New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 913919 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 18
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug



Sign in to add a comment

Expose new RtpEncoder Network Priority Parameter

Project Member Reported by guidou@google.com, Dec 11

Issue description

What steps will reproduce the problem?
1. Enable "googDscp" constraint.
2. Create PeerConnection that bundles audio and video.
3. Look at the DSCP field of packets in Wireshark.

What is the expected result?

Audio packets are tagged "EF", video packets are tagged "AF41".

What do you see instead?

Every packet is tagged with the same value.

Please use labels and text to provide additional information.

This is happening because we don't call "setsockopt" for each packet; we only do it once per media channel. So when we're bundling and there's only one underlying socket, the last value to be set wins. There's a "SendPacket" method that takes a DSCP value, but it defaults to unset, and no one is setting it. We should probably start using it.


 
Cc: thaloun@chromium.org orphis@chromium.org
This bug has been tracked in bugs.webrtc.org/5008

The following Chromium CL needs to be merged to M72: r613218
Components: Blink>WebRTC
Owner: guidou@chromium.org
Status: Assigned (was: Untriaged)
Labels: -Pri-3 Merge-Request-72 OS-All Pri-2
Labels: -Merge-Request-72 Merge-Approved-72
Project Member

Comment 6 by bugdroid1@chromium.org, Dec 11

Labels: -merge-approved-72 merge-merged-3626
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/01530f6edfcb2a4511e097ddf202d2c3c35a0dfa

commit 01530f6edfcb2a4511e097ddf202d2c3c35a0dfa
Author: Tim Haloun <thaloun@chromium.org>
Date: Tue Dec 11 18:36:53 2018

Expose new RtpEncoder Network Priority Parameter

Added to webrtc rtpencoder struct is a field for specifying the dscp value
on a per-encoder basis, allowing audio and video to have different priorities.
The API is defined in https://w3c.github.io/webrtc-dscp-exp/ , and the
particular codepoints are defined in
https://tools.ietf.org/html/draft-ietf-tsvwg-rtcweb-qos-18#section-5
Note, actually enabling DSCP at all is still guarded by the googDscp
PeerConnection constraint, for now.

WPT tests:  https://chromium-review.googlesource.com/c/chromium/src/+/1357515
I2I: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/bVNynDp9PHo
chromestatus:  https://www.chromestatus.com/feature/5583278023114752


Bug:  913919 , webrtc:5008
Change-Id: I05bdcf62787d30211310a4686bb5fc18fda674da
Reviewed-on: https://chromium-review.googlesource.com/c/1298231
Reviewed-by: Florent Castelli <orphis@chromium.org>
Commit-Queue: Tim Haloun <thaloun@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#613218}(cherry picked from commit 4069547281eec565e2fc7a137542ba5639832a35)
Reviewed-on: https://chromium-review.googlesource.com/c/1371865
Reviewed-by: Abdul Syed <abdulsyed@google.com>
Cr-Commit-Position: refs/branch-heads/3626@{#257}
Cr-Branched-From: d897fb137fbaaa9355c0c93124cc048824eb1e65-refs/heads/master@{#612437}
[modify] https://crrev.com/01530f6edfcb2a4511e097ddf202d2c3c35a0dfa/content/renderer/media/webrtc/rtc_rtp_sender.cc
[modify] https://crrev.com/01530f6edfcb2a4511e097ddf202d2c3c35a0dfa/third_party/blink/renderer/modules/peerconnection/rtc_rtp_encoding_parameters.idl
[modify] https://crrev.com/01530f6edfcb2a4511e097ddf202d2c3c35a0dfa/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc

Status: Fixed (was: Assigned)
Labels: Merge-Merged-72-3626
The following revision refers to this bug: 
https://chromium.googlesource.com/chromium/src.git/+/01530f6edfcb2a4511e097ddf202d2c3c35a0dfa

Commit: 01530f6edfcb2a4511e097ddf202d2c3c35a0dfa
Author: thaloun@chromium.org
Commiter: abdulsyed@google.com
Date: 2018-12-11 18:36:53 +0000 UTC

Expose new RtpEncoder Network Priority Parameter

Added to webrtc rtpencoder struct is a field for specifying the dscp value
on a per-encoder basis, allowing audio and video to have different priorities.
The API is defined in https://w3c.github.io/webrtc-dscp-exp/ , and the
particular codepoints are defined in
https://tools.ietf.org/html/draft-ietf-tsvwg-rtcweb-qos-18#section-5
Note, actually enabling DSCP at all is still guarded by the googDscp
PeerConnection constraint, for now.

WPT tests:  https://chromium-review.googlesource.com/c/chromium/src/+/1357515
I2I: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/bVNynDp9PHo
chromestatus:  https://www.chromestatus.com/feature/5583278023114752


Bug:  913919 , webrtc:5008
Change-Id: I05bdcf62787d30211310a4686bb5fc18fda674da
Reviewed-on: https://chromium-review.googlesource.com/c/1298231
Reviewed-by: Florent Castelli <orphis@chromium.org>
Commit-Queue: Tim Haloun <thaloun@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#613218}(cherry picked from commit 4069547281eec565e2fc7a137542ba5639832a35)
Reviewed-on: https://chromium-review.googlesource.com/c/1371865
Reviewed-by: Abdul Syed <abdulsyed@google.com>
Cr-Commit-Position: refs/branch-heads/3626@{#257}
Cr-Branched-From: d897fb137fbaaa9355c0c93124cc048824eb1e65-refs/heads/master@{#612437}

Sign in to add a comment