gpt4 book ai didi

android - 来自android webview的peerjs webrtc流式传输视频太慢

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:34:45 29 4
gpt4 key购买 nike

我有一个 android 应用程序,它通过 peerjs (webrtc) 通过 webview 发送摄像头流,浏览器上的 web 应用程序接收视频并进行流式传输。

一切正常,但网络上的视频速度太慢,图像在获取第二张图像之前卡住了一段时间...

有没有办法降低分辨率?或缓冲网络应用程序上的视频?还是我的实现有问题?

Android Webview代码:

        initVideo = function(videoSourceValue) {

var video = document.querySelector('video');
navigator.getUserMedia({video: {optional: [{
sourceId: videoSourceValue
}]
}
},function(stream) {
video.src = window.URL.createObjectURL(stream);
$('#peerId').text("calling : " + SERVER_PEER_ID);
var mediaConnection = peer.call(SERVER_PEER_ID, stream);
mediaConnection.on('stream', function(remoteStream) {
// Show stream in some video/canvas element.
});
},function(e){
console.log('failed',e);
});
}

网络部分:

   function getVideoStream() {
PEER.on('call', function(call) {
var mediaConnection = navigator.getUserMedia({video: true}, function(stream) {
call.answer(stream); // Answer the call with an A/V stream.
call.on('stream', onReceiveStream);
}, function(err) {
console.log('Failed to get local stream' ,err);
});
});
}


function onReceiveStream(stream){
console.log('received stream');
$('video').prop('src',window.URL.createObjectURL(stream));

}

谢谢

更新 1

我尝试添加 {reliable : true},仍然有同样的问题。

我也在向服务器发送位置数据,视频流和位置数据似乎是定期一起发送的(网络上的图表显示速度和视频同时移动)但帧率是太慢了。

最佳答案

当您建立视频/音频流时,您可以指定一些约束...

var videoOptions = (isCordova) ? {audio: true, video: true} :
{ audio: true,
video: {
mandatory: {
maxWidth: 640,
maxHeight: 360,
// maxAspectRatio:4/3,
// maxFrameRate:1
},
quality: 7,
width: { ideal: 320 },
height: { ideal: 240 }
}
};

navigator.getUserMedia(videoOptions, function (stream) {

在上面的代码中,如果你在一个设备上(android/ios)你不能选择,但是你可以在浏览器上控制它。质量 5 是视频驱动程序作者认为在质量和带宽之间可接受的权衡的级别。限制图片的尺寸也有帮助。

有关模式详细信息,请参阅此链接:https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia

关于android - 来自android webview的peerjs webrtc流式传输视频太慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41737037/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com