RTCRtpSender - (void)setParameters & set_content_hint
title RTCRtpSender - (void)setParameters:(RTC_OBJC_TYPE(RTCRtpParameters) *)parameters {
RTCRtpSender->RtpSenderBase:SetParameters
RtpSenderBase->RtpSenderBase:SetParametersInternal
note left of RtpSenderBase:worker_thread_->Invoke<RTCError>(RTC_FROM_HERE, [&] {)
RtpSenderBase->WebRtcVideoChannel:SetRtpSendParameters
WebRtcVideoChannel->WebRtcVideoSendStream:SetRtpParameters
WebRtcVideoSendStream->WebRtcVideoSendStream:ReconfigureEncoder
WebRtcVideoSendStream->VideoSendStream:ReconfigureVideoEncoder
VideoSendStream->VideoStreamEncoder:ConfigureEncoder
note left of VideoStreamEncoder:encoder_queue_.PostTask(
VideoStreamEncoder->VideoStreamEncoder:ReconfigureEncoder
VideoStreamEncoder->VideoStreamEncoder:ReleaseEncoder
VideoStreamEncoder->VideoEncoder:Release()
title Set Content Hint
SDK->VideoTrack: set_content_hint(hint)
VideoTrack->Notifier: FireOnChanged
VideoTrack->VideoRtpSender:OnChanged()
VideoRtpSender->VideoTrack:content_hint()
VideoRtpSender->VideoRtpSender:SetSend()
note right of VideoRtpSender: options.is_screencast
VideoRtpSender->WebRtcVideoSendChannel:SetVideoSend
WebRtcVideoSendChannel->WebRtcVideoSendStream:SetVideoSend
WebRtcVideoSendStream->WebRtcVideoSendStream:ReconfigureEncoder
WebRtcVideoSendStream->VideoSendStream:ReconfigureVideoEncoder
VideoSendStream->VideoStreamEncoder:ConfigureEncoder
note left of VideoStreamEncoder:encoder_queue_.PostTask(
VideoStreamEncoder->VideoStreamEncoder:ReconfigureEncoder