标签:锚点 rms layer read buffer chromium iot eof ada
###chromium webrtc视频显示 ###
两个数据源:
本地数据源: MediaStreamRemoteVideoSource(content/renderer/media/webrtc/media_stream_remote_video_source.cc),
数据锚点在video_track_adapter。
远端数据源: MediaStreamVideoCapturerSource(content/renderer/media/stream/media_stream_video_capturer_source.cc),
数据锚点在video_track_adapter。
一个WebMediaPlayerMS表示一个播放器。
TX:
OnFrameReadyInBuffer@content/browser/renderer_host/media/video_capture_controller.cc.
OnBufferReady@content/renderer/media/video_capture_impl.cc (收到相机帧)
VideoTrackAdapter::DeliverFrameOnIO @content\renderer\media\stream\video_track_adapter.cc.
DeliverFrameOnIO@content\renderer\media\stream\video_track_adapter.cc.
MediaStreamVideoTrack::FrameDeliverer::DeliverFrameOnIO @ media_stream_video_track.cc [本地video track]
WebRtcVideoSourceAdapter::OnVideoFrameOnIO @ media_stream_video_webrtc_sink.cc
WebRtcVideoCapturerAdapter::OnFrameCaptured @ webrtc_video_capturer_adapter.cc (录制的数据送进WEBRTC)。
预览显示:
OnVideoFrame @ media_stream_video_renderer_sink.cc [连接到了本地video track]
repaint_cb_.Run(frame);//绘制本地图像。
RX:
RemoteVideoSourceDelegate::OnFrame @ media_stream_remote_video_source.cc RTC线程。
RemoteVideoSourceDelegate::DoRenderFrameOnIOThread @ media_stream_remote_video_source.cc IO线程。
MediaStreamVideoTrack::FrameDeliverer::DeliverFrameOnIO @ media_stream_video_track.cc [远程video track]
OnVideoFrame @ media_stream_video_renderer_sink.cc
repaint_cb_.Run(frame);//绘制远程图像。
标签:锚点 rms layer read buffer chromium iot eof ada
原文地址:https://www.cnblogs.com/huangguanyuan/p/9720210.html