Javascript 构建phonegap/cordova iOS p2p视频聊天
我想建立一个供公众使用的Javascript 构建phonegap/cordova iOS p2p视频聊天,javascript,ios,cordova,video,p2p,Javascript,Ios,Cordova,Video,P2p,我想建立一个供公众使用的phonegap视频聊天,但我没有找到任何iOS解决方案 例如,我尝试了Phonertc,它看起来像是为p2p视频构建的唯一插件,但根本不起作用。它充满了bug,而且真的不稳定,你现在有什么建议 我曾考虑过在p2p中使用phonegap媒体插件和一些服务(如亚马逊服务器)在后台播放摄像头视频,我会避免使用tokbozx和twillio等工具 我真的需要能够管理视频流,这样我就可以从画布上应用过滤器等 如果你有什么想法,请告诉我,谢谢 那么,你认为构建cordova视频和音
phonegap
视频聊天,但我没有找到任何iOS解决方案
例如,我尝试了Phonertc
,它看起来像是为p2p
视频构建的唯一插件,但根本不起作用。它充满了bug,而且真的不稳定,你现在有什么建议
我曾考虑过在p2p
中使用phonegap媒体插件和一些服务(如亚马逊服务器)在后台播放摄像头视频,我会避免使用tokbozx
和twillio
等工具
我真的需要能够管理视频流,这样我就可以从画布上应用过滤器等
如果你有什么想法,请告诉我,谢谢
那么,你认为构建cordova
视频和音频p2p
聊天的背后应该有什么样的架构和逻辑?
thsanks不确定这是否是您想要的型号,但您可以尝试p2p: 我很少使用服务器端,但这里有一个教程: 仅客户端(从此处展开,可以添加画布):
navigator.getUserMedia=(navigator.getUserMedia||
navigator.webkitGetUserMedia||
navigator.mozGetUserMedia||
navigator.msGetUserMedia);
if(navigator.getUserMedia){
navigator.getUserMedia(
//约束条件
{
视频:没错,
音频:正确
},
//成功回调
函数(localMediaStream){
var video=document.querySelector('video');
video.src=window.URL.createObjectURL(localMediaStream);
//对此处的视频执行一些操作,例如video.play()
},
//错误回调
功能(err){
log(“发生以下错误:“+err”);
}
);
}否则{
log(“不支持getUserMedia”);
}
ConnectyCube平台提供Cordova聊天和视频聊天SDK和代码示例
以下是视频聊天指南:
它描述了如何在Cordova/PhoneGap下运行他们的视频聊天web代码示例。看起来很简单。它基于WebRTC API之上,是一种P2P视频聊天。他们使用cordova插件iosrtc插件让iOS正常工作iOS safari无论如何都不支持webRTC谢谢你的回答啊,对不起,我是一个安卓人:/希望客户端部分很有帮助,因为它应该在iOS上得到支持。您可能希望阅读服务器端解决方案,尽管这会产生大量开销,最好跳过。
<html><head>
<script>
navigator.getUserMedia = ( navigator.getUserMedia ||
navigator.webkitGetUserMedia ||
navigator.mozGetUserMedia ||
navigator.msGetUserMedia);
if (navigator.getUserMedia) {
navigator.getUserMedia (
// constraints
{
video: true,
audio: true
},
// successCallback
function(localMediaStream) {
var video = document.querySelector('video');
video.src = window.URL.createObjectURL(localMediaStream);
// Do something with the video here, e.g. video.play()
},
// errorCallback
function(err) {
console.log("The following error occured: " + err);
}
);
} else {
console.log("getUserMedia not supported");
}
</script>
</head><body>
<video style="border: solid 1px" autoplay="true">
</body></html>