我想在对等体之间只进行音频流通信,我改变了kurento.utils.js的部分,只通过getusermedia获取音频流 但它不起作用 我使用了这个示例node-hello-world示例
WebRtcPeer.prototype.userMediaConstraints = {
audio : true,
video : {
mandatory : {
maxWidth : 640,
maxFrameRate : 15,
minFrameRate : 15
}
}
};
到
WebRtcPeer.prototype.userMediaConstraints = {
audio : true,
video : false
};
是否可以仅将kurento服务用于音频流?
答案 0 :(得分:6)
Kurento确实可以做到这一点。有两种方法可以执行此操作,具体取决于所需的修改范围:
processOffer
方法调用后,您可以篡改SDP以删除所有视频部分。这样,您的客户端将仅发送回音频。/etc/kurento/sdp_pattern.txt
文件,删除所有与视频相关的部分,这将强制SdpEndpoints(WebrtcEndpoint的父类)仅使用音频。编辑1
文件sdp_pattern.txt
在KMS 6.1.0中已弃用,因此不应使用方法2.
编辑2
kurento-utils库存在问题,客户端未正确设置OfferToReceiveAudio
。它已经修复了一段时间了,你现在不应该篡改SDP。
答案 1 :(得分:2)
git origin:https://github.com/Kurento/kurento-tutorial-js.git git branch:6.6.0
我的解决方案只是在kurento-utils.js文件的var offerVideo = true;
函数中将var offerVideo = false;
更改为generateOffer
。
答案 2 :(得分:1)
我的方法是修改传递给WebRtcPeer的选项。
var options = {
onicecandidate: onIceCandidate,
iceServers: iceServers,
mediaConstraints: {
audio:true,
video:false
}
}
此外,在kurento-utils.js中,mediaContraints被这一行覆盖:
constraints.unshift(MEDIA_CONSTRAINTS);
所以评论它。