-
Notifications
You must be signed in to change notification settings - Fork 114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RTCRtpCodecCapability is superfluous and should be deleted from the spec. #2974
Comments
As a result of this getCapabilities returns
which seems quite inconsistent? The more consistent way to collapse this would have been to fold RTCRtpCodec into this? |
Is the consistency concern over naming or hierarchy? RTCRtpCodecs appear both in getCapabilities() and getParameters() #2834 so it seems wrong to label them either. They're valid inputs to Hierarchy-wise It seems wrong for RTCRtpCodecParameters to inherit from RTCRtpCodecCapability. IMHO the word "Capability" isn't carrying a lot of weight here. Would s/RTCRtpHeaderExtensionCapability/RTCRtpHeaderExtension/ help? |
I've always seen the "capability" as a "I support" in the sense of XMPPs entity caps which had a nice mapping to ORTC. The way this traditionally worked was that getCapabilities returned static capabilities, getParameters the negotiated parameters (which include a payload type which is a dynamic thing). The negotiation is adding the dynamic payload type to the parameters. The goal of #2834 was fine but missing that these objects semantically build ontop of each other. Same for header extensions. Now whether the payload type member is even required is questionable, it is read-only and can not be changed as it is determined by SDP negotiation. |
At the moment we have the definition:
dictionary RTCRtpCodecCapability : RTCRtpCodec {
};
The text talks about what codecs should be a member of a set of RTCRtpCodecCapability, which doesn't belong there.
This dictionary isn't carrying its weight. Proposing to delete it.
The text was updated successfully, but these errors were encountered: