| # x-google-per-layer-pli FMTP parameter |
| |
| The x-google-per-layer-pli FMTP parameter is a format specific parameter |
| that can be added to a remote description in the `a=fmtp:` line: |
| a=fmtp:96 x-google-per-layer-pli=1 |
| |
| When using simulcast with more than a single SSRC, it will change how the |
| simulcast encoder reacts to Picture Loss Indication (PLI) and Full Intra |
| Request (FIR) RTCP feedback. |
| |
| When the parameter value is 1, a PLI requests the generation of a key frame |
| for the spatial layer associated with the SSRC of the media source and a |
| FIR does the same for the SSRC value of the media sender. |
| |
| When the value is 0 or the parameter is missing, a keyframe is generated |
| on all spatial layers for backward compability. |
| |
| ## Experimentation |
| |
| This parameter does allow for large-scale A/B testing and opt-in to the |
| new behavior. For multiparty calls enabling it should reduce the number of |
| keyframes sent by the client and number of key frames received by the |
| receivers which results in a better bandwidth utilization. |
| |
| This parameter is experimental and may be removed again in the future. |
| |
| ## IANA considerations |
| |
| Since the current behavior of reacting to a PLI for a specific SSRC with |
| key frames on all spatial layers can be considered an implementation bug |
| this parameter is not registered with the IANA. |
| |
| If experimentation shows that the current behavior is better for some |
| codecs like VP8 which can share encoding parameters with synchronous |
| keyframes a standardized variant of this parameter shall be registered |
| with the IANA. |