Skip to content

feat: Make the p2p H.264 high profile stripping configurable. - #3072

Draft
th-aslam wants to merge 1 commit into
jitsi:masterfrom
th-aslam:h264-configurable-high-profile-strip
Draft

feat: Make the p2p H.264 high profile stripping configurable.#3072
th-aslam wants to merge 1 commit into
jitsi:masterfrom
th-aslam:h264-configurable-high-profile-strip

Conversation

@th-aslam

Copy link
Copy Markdown

Companion to jitsi/jicofo#1296, as discussed in the community thread with @jallamsetty1.

TPCUtils.mungeCodecOrder unconditionally strips the non-baseline H.264 payload types from the SDP on p2p connections (SDPUtil.stripCodec(mLine, codec, true) keeps only profile-level-id=42*). For deployments that want to negotiate Main/High profile — e.g. hardware encoders that don't advertise the baseline profiles — this hardcoded strip undoes the codec configuration client-side.

This makes it configurable:

  • New per-codec setting videoQuality.h264.stripHighProfile in config.js, default true — behavior is unchanged unless a deployment opts out.
  • Plumbed through STANDARD_CODEC_SETTINGS and the existing per-codec config overlay in the TPCUtils constructor, same pattern as scalabilityModeEnabled/useSimulcast.
  • The VP9 profile stripping and the ULPFEC/RED stripping on p2p are untouched.
  • MockPeerConnection gains codecSettings/usesCodecSelectionAPI() so mungeCodecOrder is now unit-testable; two new specs cover the default strip and the opt-out (full suite 537/537 green, tsc --noEmit and eslint clean).

@jitsi-jenkins

Copy link
Copy Markdown

Hi, thanks for your contribution!
If you haven't already done so, could you please make sure you sign our CLA (https://jitsi.org/icla for individuals and https://jitsi.org/ccla for corporations)? We would unfortunately be unable to merge your patch unless we have that piece :(.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants