请分享您在 Android 上使用软件回声消除器的经验:
我指的是并浏览了 AppRTCDemo 的源代码,它是 WebRTC 的演示应用程序。
我正在尝试的是:
https://apprtc.appspot.com/服务器和相关功能。 为了存档以上几点,我想了解 WebRTC 函数调用的基本流程和发出/接收调用的步骤(我需要调用并在那里流动的函数)。
我已经浏览了源代码并理解了一些东西,但是因为代码很难理解,而且没有任何文档。
如果有人提供任何示例或文档来解释拨打/接收 AV 呼叫的步骤(我们如何获取/设置 SDP,如何呈现本地/远程视频等),这将是非常有帮助的。
我看过这些帖子,非常有帮助:
我能够构建和运行 AppRTCDemo 应用程序。
对此的任何帮助都会有很大帮助!
我是 WebRTC 原生框架的新手。
我能够获得 WebRTC 源代码并运行基于http://andrii.sergiienko.me/?go=all/building-webrtc-demo-for-android/ enter link description here的演示 Android 应用程序。
我能够在同一本地网络上的两个 Android 设备之间发送/接收音频和视频。
有没有办法在这个对等连接中发送一个小的 JSON 有效负载?
我尝试在源代码中寻找它,但我只找到了发送视频和音频的支持。
谢谢你。
我正在尝试了解有关流式网络摄像头的更多信息,但我一直无法停止视频,希望有人可以帮助我停止视频
var videoDiv = $("#video"),
vendorUrl = window.URL || window.webkitURL;
navigator.getMedia = navigator.getUserMedia ||
navigator.webkitGetUserMedia ||
navigator.mozGetUserMedia ||
navigator.oGetUserMedia ||
navigator.msGetUserMedia;
function captureWebcam(video, audio){
navigator.getMedia({
video: video,
audio: audio
}, function(stream){
localStream = stream;
videoDiv.attr("src", vendorUrl.createObjectURL(localStream))
}, function(error){
// An error occured
// error.code
console.log(error)
});
}
$("#stop").on("click", function(){
videoDiv.attr("src", "")
//captureWebcam(false, false)
// Stop the video
});
$("#start").on("click", function(){
captureWebcam(true, false)
});Run Code Online (Sandbox Code Playgroud)
<video id="video" width="400" height="300"></video>
<button id="start">START!</button>
<button id="stop">STOP!</button>Run Code Online (Sandbox Code Playgroud)
当我在使用 rtc.close() 调用后尝试关闭 WebRTC 连接时,我认识到 Chrome 中的 about:webrtc-internals 和 about:webrtc 会保留列出的连接。在 Firefox 中,它们被标记为已关闭,而在 Chrome 中我看不到这样的标记。
我问是因为这似乎在一段时间后会对性能产生重大影响。在进行了大量调用后,性能明显受损,并且 webrtc-internals 列出了大量连接。
除了 .close() 使浏览器完全忘记连接之外,还有什么可以关闭 WebRTC 连接吗?
我正在尝试在 Chrome 应用程序中调整麦克风音量。有可能做到吗?我正在使用 webrtc。
如果我的kurento媒体服务器(S1)设置在公共服务器上,并且用户A可以连接到S1,但它很慢!我想买一台主机(H1),让用户A快速连接到H1!服务器 H1 快速连接到 S1!所以我认为在 H1 上安装 coturn 作为媒体中继。我可以在 H1 上安装 coturn,并通过 H1 的 coturn 强制传输用户 A 媒体流吗?
我决定学习 WebRTC,但不展示视频。请帮忙。我究竟做错了什么?使用 Chrome 我的代码:
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<script>
window.onload = function () {
navigator.webkitGetUserMedia({ video: true }, getStream, noStream);
};
function getStream(stream) {
var url = window.webkitURL.createObjectURL(stream);
var video = document.getElementById('video');
video.src = url;
}
function noStream(faild) {
}
</script>
<video id="video" autoplay="autoplay" width="400"></video>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我正在尝试让 verto 在 Chrome 57.0.2987.133(64 位)中工作。
在关注https://dopensource.com/2017/01/21/setting-up-freeswitch-webrtc-functionality/ 之后,我能够让 webrtc/verto 在服务器上工作。我能够获得演示应用程序(在 verto 存储库中)来连接和拨打电话。
我按照http://evoluxbr.github.io/verto-docs/tut/making-a-call.html在我的最后设置了 verto,但我得到了(Uncaught TypeError: Cannot read property 'srcObject' of undefined and Uncaught TypeError : 无法在 Chrome 控制台中读取 undefined 的属性“sinkId”。见下文:
Uncaught TypeError: Cannot read property 'srcObject' of undefined
at FSRTCattachMediaStream (jquery.FSRTC.js:236)
at onRemoteStream (jquery.FSRTC.js:255)
at Object.self.peer.FSRTCPeerConnection.onRemoteStream (jquery.FSRTC.js:593)
at RTCPeerConnection.FSRTCPeerConnection.peer.onaddstream (jquery.FSRTC.js:737)
Uncaught TypeError: Cannot read property 'sinkId' of undefined
at $.verto.dialog.setAudioPlaybackDevice (jquery.verto.js:2144)
at jquery.verto.js:2214
Run Code Online (Sandbox Code Playgroud)
https://pastebin.com/j4GrER0Q。我的脚本导入看起来像https://pastebin.com/H55piU1r。
将不胜感激
所以我按照本教程学习如何实现 WebRTC 服务器-客户端设置。一旦我开始工作,我想将客户端分成两部分,一个发送者和一个接收者。现在他们可以相互建立连接,但接收者永远不会从发送者那里得到流。
我设法确定原始代码和拆分版本之间的代码流保持不变,只是两个对等方都不执行 onicecandidate 事件。
根据这个,我需要明确包括OfferToReceiveAudio: true和OfferToReceiveVideo: true因为我使用的是Chrome,我做到了,但它似乎没有任何区别。
目前,它们都从对方接收 SDP,peerConnection 中有本地和远程描述,并且iceGatheringState是“新的”但iceConnectionState正在“检查”(与他声明的第二个链接也应该是“新的”不同)
当像这样一分为二时,他们为什么不交换 ICE 候选人?
const HTTPSPort = 3434;
const domain = '127.0.0.1';
const wssHost = 'wss://' + domain + ':' + HTTPSPort + '/websocket/';
// Feed settings
const video = true;
const audio = true;
const constraints = { "audio": audio, "video": video };
var videoContainer = null, feed = null,
pC = null, wsc = …Run Code Online (Sandbox Code Playgroud)webrtc ×10
javascript ×4
android ×3
getusermedia ×2
apprtcdemo ×1
audio ×1
coturn ×1
echo ×1
firefox ×1
freeswitch ×1
mod-verto ×1
speex ×1
video ×1