zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Webrtc Native C++添加多个视频源,并实时切换

C++实时 添加 视频 多个 切换 native Webrtc
2023-09-14 09:12:42 时间

WebRTC的C++ API提供了一个rtc::VideoSourceInterface,它可以接收多个视频源,可以实时切换video0和video1。例如,可以使用以下步骤来实现:

  1. 创建一个rtc::VideoSourceInterface的实例。

  2. 使用AddOrUpdateSink()方法添加video0和video1视频源。

  3. 调用SwitchSource()方法来切换video0和video1之间的输入。

  4. 使用RemoveSink()方法移除不再使用的视频源。

//另一种方法

可以参考下面的代码:

// Create a MediaStreamTrack for the USB source.
rtc::scoped_refptrwebrtc::MediaStreamTrackInterface usb_track =
webrtc::CreateUsbMediaStreamTrack(usb_device);

// Add the MediaStreamTrack to the PeerConnection.
rtc::scoped_refptrwebrtc::RtpSenderInterface usb_sender =
peer_connection->AddTrack(usb_track);

// Switch to the USB source.
peer_connection->RemoveTrack(default_sender);
peer_connection->AddTrack(usb_sender);

//另一种方法

rtc::scoped_refptrwebrtc::VideoTrackSourceInterface new_video_source =
n