Bug 1706917 Comment 2 Edit History

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

[VideoCodecVP8::complexity](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#44) -> Set to 0 ([kComplexityNormal](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#32)) [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#24), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). Then, this is mapped to [MediaDataEncoder::VPXSpecific::Complexity](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#94-95) from [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#240).

[VideoCodecVP8::numberOfTemporalLayers](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#45) -> Set to 1 [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#26), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#240).

[VideoCodecVP8::denoisingOn](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#46) -> Set to true [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#27), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). However, we override this, setting it to false [iff we're doing screencasting](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#183-189,204). We ignore the value returned by WebrtcVideoConduit::Denoising [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#187-188); if |denoising| is true, |codec_default_denoising| is false, causing us to use true [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#204), whereas if |denoising| false, |codec_default_denoising| is true, also causing us to use true in the same place. I do not see anything else using WebrtcVideoConduit::Denoising in the tree. There is either a bug here, or we can eliminate WebrtcVideoConduit::Denoising. Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#241).

[VideoCodecVP8::automaticResizeOn](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#47) -> Set to false [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#28), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201), however we override the value based on [this code](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#179,202), setting it to true for non-screencast unicast, and false otherwise. Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#241).

[VideoCodecVP8::frameDroppingOn](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#48) -> Set to true [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#29), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201), but we override, setting it to true [iff we aren't screencasting](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#180,205). Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#241).

[VideoCodecVP8::keyFrameInterval](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#49) -> Set to 3000 [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#30), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#213).
[VideoCodecVP8::complexity](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#44) -> Set to 0 ([kComplexityNormal](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#32)) [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#24), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). Then, this is mapped to [MediaDataEncoder::VPXSpecific::Complexity](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#94-95) and passed to MediaDataEncoder from [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#240).

[VideoCodecVP8::numberOfTemporalLayers](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#45) -> Set to 1 [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#26), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#240).

[VideoCodecVP8::denoisingOn](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#46) -> Set to true [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#27), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). However, we override this, setting it to false [iff we're doing screencasting](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#183-189,204). We ignore the value returned by WebrtcVideoConduit::Denoising [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#187-188); if |denoising| is true, |codec_default_denoising| is false, causing us to use true [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#204), whereas if |denoising| false, |codec_default_denoising| is true, also causing us to use true in the same place. I do not see anything else using WebrtcVideoConduit::Denoising in the tree. There is either a bug here, or we can eliminate WebrtcVideoConduit::Denoising. Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#241).

[VideoCodecVP8::automaticResizeOn](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#47) -> Set to false [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#28), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201), however we override the value based on [this code](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#179,202), setting it to true for non-screencast unicast, and false otherwise. Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#241).

[VideoCodecVP8::frameDroppingOn](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#48) -> Set to true [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#29), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201), but we override, setting it to true [iff we aren't screencasting](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#180,205). Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#241).

[VideoCodecVP8::keyFrameInterval](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_codec.h#49) -> Set to 3000 [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/third_party/libwebrtc/api/video_codecs/video_encoder.cc#30), which we then use [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/VideoConduit.cpp#201). Passed to MediaDataEncoder [here](https://searchfox.org/mozilla-central/rev/364aa1d41eb9b5ea583fa6cedc56fb5343e3514f/dom/media/webrtc/libwebrtcglue/WebrtcMediaDataEncoderCodec.cpp#213).

Back to Bug 1706917 Comment 2