java - 我们可以在不重新协商的情况下在 webRTC 视频通话中动态删除和添加音频流吗
问题描述
我正在做一个 webRTC videoCall 应用程序。在某一点我需要一个语音记录(正常),所以我只是从 peerconnection 中删除了音轨,录制后我需要将音轨添加到 peerconnection 。但是我做不到!!
public void removeAudioTrack() {
List<RtpSender> senders = new ArrayList<>();
senders.addAll(peerConnection.getSenders());
try {
for (RtpSender sender : senders) {
if (sender.track() != null) {
if (sender.track().id().equals(AUDIO_TRACK_ID)) {
boolean flag = peerConnection.removeTrack(sender);
rtpSender = sender;
}
}
}
} catch (Exception e) {
}
}
public void addAudioTrack() {
localAudioTrack = createAudioTrack();
mediaStream.addTrack(localAudioTrack);
audioSender = peerConnection.addTrack(localAudioTrack,mediaStreamLabels);
}
音频声音没有进入另一侧(错误)
解决方案
推荐阅读
- powershell - 是否可以创建具有不同功能的 Cmdlet
- sql - 函数 string_agg 在 SMSS 17 中不起作用
- r - 过滤回归输出的结果 + 将后续数据帧导出为 CSV/XLS/XLSX
- excel - Databricks:转换数据框并导出为 xls/xlsx
- powershell - Windows NRPE - 无效返回码:-196608 Nagios Core
- function - 针对关键字参数绘制函数会导致 Julia 出错
- ckeditor5 - CKEditor:添加列支持
- sql - Oracle SQL 添加额外的外键
- sonarqube - SonarQube 中的自定义 TypeScript 规则
- python - 在完整数据框中查找 excat 字符串