Bug 1706917 Comment 5 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

[VideoCodecH264::frameDroppingOn](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#82) -> We set this to true [iff we are not screencasting](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#180,194). **I don't see any code actually using this field, however.** Someone who knows more about this should give it a look.

[VideoCodecH264::keyFrameInterval](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#83) -> Set to 3000 in [GetDefaultH264Settings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_encoder.cc#57), which we call in [ConfigureVideoEncoderSettings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#193). The only read I see is in [MultiplexEncoderAdapter::InitEncode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc#94), and that only has an effect in [MultiplexEncoderAdapter::Encode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc#162-164). I do not know if this is in the path for any of our H264 encoding. Further verification will be needed.

[VideoCodecH264::scaleDownBy](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#84) -> Set to 0 with [a memset](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_encoder.cc#54), and never read/written again. This is a double, so memset 0 is a little sketchy maybe, but it isn't being used anyway.

[VideoCodecH264::numberOfTemporalLayers](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#85) -> Set to 1 in [VideoEncoder::GetDefaultH264Settings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_encoder.cc#58), which we call in [ConfigureVideoEncoderSettings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#193). Not read in any mozilla specific code, and only appears to be used in libwebrtc code to [disable the frame dropper in some cases](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/video/video_stream_encoder.cc#825,840-842). Seems to have no real effect in our build.

[VideoCodecH264::packetizationMode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#86) -> Set in [ConfigureVideoEncoderSettings based on fmtp negotiation](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#195). Used to set [CodecSpecificInfoH264::packetization_mode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/modules/video_coding/include/video_codec_interface.h#88) inside [WebrtcGmpVideoEncoder::InitEncode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp#146-149) and [InitCodecSpecficInfo](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#134-137).
[VideoCodecH264::frameDroppingOn](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#82) -> We set this to true [iff we are not screencasting](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#180,194). **I don't see any code actually using this field, however. Query: Are we doing the right thing here?**

[VideoCodecH264::keyFrameInterval](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#83) -> Set to 3000 in [GetDefaultH264Settings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_encoder.cc#57), which we call in [ConfigureVideoEncoderSettings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#193). The only read I see is in [MultiplexEncoderAdapter::InitEncode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc#94), and that only has an effect in [MultiplexEncoderAdapter::Encode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc#162-164). I do not know if this is in the path for any of our H264 encoding. Further verification will be needed.

[VideoCodecH264::scaleDownBy](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#84) -> Set to 0 with [a memset](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_encoder.cc#54), and never read/written again. This is a double, so memset 0 is a little sketchy maybe, but it isn't being used anyway.

[VideoCodecH264::numberOfTemporalLayers](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#85) -> Set to 1 in [VideoEncoder::GetDefaultH264Settings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_encoder.cc#58), which we call in [ConfigureVideoEncoderSettings](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#193). Not read in any mozilla specific code, and only appears to be used in libwebrtc code to [disable the frame dropper in some cases](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/video/video_stream_encoder.cc#825,840-842). Seems to have no real effect in our build.

[VideoCodecH264::packetizationMode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/api/video_codecs/video_codec.h#86) -> Set in [ConfigureVideoEncoderSettings based on fmtp negotiation](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#195). Used to set [CodecSpecificInfoH264::packetization_mode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/third_party/libwebrtc/modules/video_coding/include/video_codec_interface.h#88) inside [WebrtcGmpVideoEncoder::InitEncode](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp#146-149) and [InitCodecSpecficInfo](https://searchfox.org/mozilla-central/rev/6c8d325e61b0b445ed2e04899da38c3a4c266cba/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#134-137).

Back to Bug 1706917 Comment 5