Node教程一对多无加载远程服务器Stream Spinner动不停

2024-04-02

我对在项目中使用所需的 Kurrento 很陌生,但是当我克隆 git hub 上为 Kurento 提供的教程并遵循 one2Many 调用的说明时。首先,adapter.js 的软件包损坏了,因为我成功解决了它们,但之后出现了一个问题,即我的网络摄像头运行良好,我能够看到我的侧流,但无法看到见远方溪流有旋动不已。

而且我在 chrome 控制台上看到两个错误,即:-

1)Failed to parse SessionDescription. m=audio 0 UDP/TLS/RTP/SAVPF
Expects at least 4 fields. 
2)Uncaught (in promise) Failed to parse
SessionDescription. m=audio 0 UDP/TLS/RTP/SAVPF Expects at least 4 fields.

现在上面的错误已解决,我的控制台上没有任何错误

以下是我遵循的步骤:

1)sudo git clone https://github.com/Kurento/kurento-tutorial-node.git 2)curl -sL https://deb.nodesource.com/setup | sudo bash -  
3)sudo apt-get install -y nodejs  
4)sudo npm install npm -g  
5)cd static 
6)bower install  
7)node server.js

现在 kurento 示例在端口号:8443 上运行

之后我在我的 chrome 浏览器版本号上打开该 URL版本 46.0.2490.86

之后我看到了 In Hello World 的例子。 截图位于以下网址,请检查:-

https://www.evernote.com/shard/s574/sh/589ac65d-00ca-4611-8907-0646d5e0818a/bd2dc0297bde0181cf3271ecc6b7ac09 https://www.evernote.com/shard/s574/sh/589ac65d-00ca-4611-8907-0646d5e0818a/bd2dc0297bde0181cf3271ecc6b7ac09

在消息文本区域中它将显示:-

Page loaded ...
Starting video call ...
Creating WebRtcPeer and generating local sdp offer ...
chrome: {"audio":true,"video":{"optional":[{"minWidth":640},{"maxWidth":640},{"minFramerate":15},{"maxFramerate":15}]}}
constraints: {"mandatory":{"OfferToReceiveAudio":true,"OfferToReceiveVideo":true},"optional":[{"DtlsSrtpKeyAgreement":true}]}
Created SDP offer
Local description set
'v=0
o=- 5127129914819809209 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video
a=msid-semantic: WMS Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 126
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:BNeugX+OQ8/t6pt3
a=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r
a=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=sendrecv
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10; useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:126 telephone-event/8000
a=maxptime:60
a=ssrc:524015682 cname:aXshARqNMIZF2d2q
a=ssrc:524015682 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk 84518c74-a89d-4e0d-91c6-aa89d3112443
a=ssrc:524015682 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
a=ssrc:524015682 label:84518c74-a89d-4e0d-91c6-aa89d3112443
m=video 9 UDP/TLS/RTP/SAVPF 100 116 117 96
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:BNeugX+OQ8/t6pt3
a=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r
a=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10
a=setup:actpass
a=mid:video
a=extmap:2 urn:ietf:params:rtp-hdrext:toffset
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:4 urn:3gpp:video-orientation
a=sendrecv
a=rtcp-mux
a=rtpmap:100 VP8/90000
a=rtcp-fb:100 ccm fir
a=rtcp-fb:100 nack
a=rtcp-fb:100 nack pli
a=rtcp-fb:100 goog-remb
a=rtpmap:116 red/90000
a=rtpmap:117 ulpfec/90000
a=rtpmap:96 rtx/90000
a=fmtp:96 apt=100
a=ssrc-group:FID 390686982 668808432
a=ssrc:390686982 cname:aXshARqNMIZF2d2q
a=ssrc:390686982 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e
a=ssrc:390686982 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
a=ssrc:390686982 label:b0dd89aa-6651-4534-90f6-facded136a0e
a=ssrc:668808432 cname:aXshARqNMIZF2d2q
a=ssrc:668808432 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e
a=ssrc:668808432 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
a=ssrc:668808432 label:b0dd89aa-6651-4534-90f6-facded136a0e
'
Invoking SDP offer callback function 182.71.214.253:8443
Senging message: {"id":"start","sdpOffer":"v=0\r\no=- 5127129914819809209 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:BNeugX+OQ8/t6pt3\r\na=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r\r\na=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 minptime=10; useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\r\na=rtpmap:9 G722/8000\r\na=rtpmap:0 PCMU/8000\r\na=rtpmap:8 PCMA/8000\r\na=rtpmap:106 CN/32000\r\na=rtpmap:105 CN/16000\r\na=rtpmap:13 CN/8000\r\na=rtpmap:126 telephone-event/8000\r\na=maxptime:60\r\na=ssrc:524015682 cname:aXshARqNMIZF2d2q\r\na=ssrc:524015682 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk 84518c74-a89d-4e0d-91c6-aa89d3112443\r\na=ssrc:524015682 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\na=ssrc:524015682 label:84518c74-a89d-4e0d-91c6-aa89d3112443\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 116 117 96\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:BNeugX+OQ8/t6pt3\r\na=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r\r\na=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10\r\na=setup:actpass\r\na=mid:video\r\na=extmap:2 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 urn:3gpp:video-orientation\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:100 VP8/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:116 red/90000\r\na=rtpmap:117 ulpfec/90000\r\na=rtpmap:96 rtx/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 390686982 668808432\r\na=ssrc:390686982 cname:aXshARqNMIZF2d2q\r\na=ssrc:390686982 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e\r\na=ssrc:390686982 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\na=ssrc:390686982 label:b0dd89aa-6651-4534-90f6-facded136a0e\r\na=ssrc:668808432 cname:aXshARqNMIZF2d2q\r\na=ssrc:668808432 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e\r\na=ssrc:668808432 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\na=ssrc:668808432 label:b0dd89aa-6651-4534-90f6-facded136a0e\r\n"}
Local candidate{"candidate":"candidate:3366644091 1 udp 2122260223 192.168.2.140 35246 typ host generation 0","sdpMid":"audio","sdpMLineIndex":0}
Senging message: {"id":"onIceCandidate","candidate":{"candidate":"candidate:3366644091 1 udp 2122260223 192.168.2.140 35246 typ host generation 0","sdpMid":"audio","sdpMLineIndex":0}}
Local candidate{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 22889 typ srflx raddr 192.168.2.140 rport 49338 generation 0","sdpMid":"video","sdpMLineIndex":1}
Senging message: {"id":"onIceCandidate","candidate":{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 22889 typ srflx raddr 192.168.2.140 rport 49338 generation 0","sdpMid":"video","sdpMLineIndex":1}}
Local candidate{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 13120 typ srflx raddr 192.168.2.140 rport 45775 generation 0","sdpMid":"audio","sdpMLineIndex":0}
Senging message: {"id":"onIceCandidate","candidate":{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 13120 typ srflx raddr 192.168.2.140 rport 45775 generation 0","sdpMid":"audio","sdpMLineIndex":0}}

在节点控制台中我看到以下内容

Queueing candidate
Connection mj_op2LrzDzfqOCUojr3JJYjBpVxSlcT received message  { id: 'onIceCandidate',
  candidate: 
   { candidate: 'candidate:1239609295 1 udp 1686052607 180.151.85.198 25665 typ srflx raddr 192.168.2.140 rport 42447 generation 0',
     sdpMid: 'video',
     sdpMLineIndex: 1 } }
Queueing candidate
Connection mj_op2LrzDzfqOCUojr3JJYjBpVxSlcT received message  { id: 'onIceCandidate',
  candidate: 
   { candidate: 'candidate:1239609295 2 udp 1686052606 180.151.85.198 22889 typ srflx raddr 192.168.2.140 rport 49338 generation 0',
     sdpMid: 'video',
     sdpMLineIndex: 1 } }
Queueing candidate
Connection mj_op2LrzDzfqOCUojr3JJYjBpVxSlcT received message  { id: 'onIceCandidate',
  candidate: 
   { candidate: 'candidate:1239609295 2 udp 1686052606 180.151.85.198 13120 typ srflx raddr 192.168.2.140 rport 45775 generation 0',
     sdpMid: 'audio',
     sdpMLineIndex: 0 } }
Queueing candidate
reconnect to server 2 200 undefined
reconnect to server 3 300 undefined
reconnect to server 4 500 undefined
reconnect to server 5 800 undefined
reconnect to server 6 1300 undefined
reconnect to server 7 2100 undefined
reconnect to server 8 3400 undefined
reconnect to server 9 5500 undefined
reconnect to server 10 8900 undefined
reconnect to server 11 10000 undefined
reconnect to server 12 10000 undefined
reconnect to server 13 10000 undefined
reconnect to server 14 10000 undefined
reconnect to server 15 10000 undefined

我在我的 ubuntu 机器上使用 Kurento 媒体服务器版本:6.4.0

配置文件即 kurento.conf.json 如下

{
  "mediaServer" : {
    "resources": {
    //  //Resources usage limit for raising an exception when an object creation is attempted
    //  "exceptionLimit": "0.8",
    //  // Resources usage limit for restarting the server when no objects are alive
    //  "killLimit": "0.7",
        // Garbage collector period in seconds
        "garbageCollectorPeriod": 240
    },
    "net" : {
      "websocket": {
        "port": 8888,
        //"secure": {
        //  "port": 8433,
        //  "certificate": "defaultCertificate.pem",
        //  "password": ""
        //},
        //"registrar": {
        //  "address": "ws://localhost:9090",
        //  "localAddress": "localhost"
        //},
        "path": "kurento",
        "threads": 10
      }
    }
  }
}

这是无尽旋转器的快照

so this is all about my code, machine, version and configuration file.enter image description here

我在所有教程示例中都面临这个问题。

请帮助我摆脱这种情况。 任何帮助,将不胜感激。 谢谢


我在另一台 ubuntu 机器上安装了 kurento,它对我有用,我按照以下步骤操作:-

我通过以下方式升级我的分区

apt-get dist-upgrade

但在升级您的发行版之前要小心,因为它会升级发行版,之后您的某些应用程序可能无法工作 .

然后安装

sudo apt-get install libglib2.0-0

之后我安装了kurento

sudo apt-get install kurento-media-server-6.0

之后我明确安装openJdk7

最后它对我有用。但之后我的一些应用程序无法在我的机器上运行,例如 Skype 等,因此我安装了这些应用程序的依赖项比 kurento 远程侧流问题又来了所以最后我删除了该机器上的所有内容并仅运行 kurento ,毫无疑问,这工作正常!

Thanks

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Node教程一对多无加载远程服务器Stream Spinner动不停 的相关文章

随机推荐

  • 如何使我的图像可滚动? [安卓平台]

    我的图像占用的空间比 Android 屏幕多得多 我希望图像以全尺寸显示 并且用户可以向任何方向移动 就像一张地图 有什么建议么 您可以使用网络视图 它可以免费为您提供此功能 我不知道为什么但是当我尝试时 使用 loadData 方法不起作
  • 无法导入模块“lambda_function”:没有名为“flatten_json”的模块

    运行 lambda 代码时出现以下错误 我正在使用名为的库 from flatten json import flatten 我试图寻找 lambda 层 但在网上没有找到 请告诉我是否有人以前使用过这个或建议任何替代方案 缺少 flatt
  • jQuery:有没有一种方法可以自动向动态生成的 HTML 添加属性,就像 live() 处理事件一样?

    我有一个如下所示的列表 ul li a href example url 1 Link 1 a li li a href example url 2 Link 2 a li li a href example url 3 Link 3 a
  • 项目上线时Manager Bean不返回

    我有一个使用 JPA 的 JSF 项目 我这样做 从 mysql 数据库检索一些数据 然后将数据绘制在图表中 Locally works pretty fine as you can see here So I deploy the pro
  • 解决Tomcat中的Bind异常

    自一年以来 我们一直在 Apache Tomcat 8 0 36 服务器上运行 Java 8 Web 应用程序 从过去的几天来看 有时当我们重新启动 Tomcat 服务器时 应用程序无法运行 日志显示 Https 端口的地址绑定异常 我尝试
  • 有什么可能的方法从沙盒应用程序运行 clang 编译器吗?

    好的 这个问题相当简单 我有一个沙盒 OSX 应用程序 我希望用户能够编译一些 C 代码 无论他输入什么 但每当我尝试拨打电话时 usr bin env clang the path to the source c 我在日志中收到以下错误
  • 插入按钮没有将数据插入数据库,并且根本没有给出错误[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 这是包含插入方法的类 我先填充字段 然后创建属性 然后插入方法 然后转到另一个类并创建插入按钮 请帮忙 根本没有给出错误 usin
  • 如何请求Android用户通过点击启用蓝牙?

    from http developer android com guide topics connectivity bluetooth html http developer android com guide topics connect
  • 仅使用 HTML 和 CSS 创建下拉按钮?

    是否可以仅使用 HTML 和 CSS 创建一个带有下拉菜单的按钮 a Take Action a ul li action 1 li li action 2 li ul 单击链接时 悬停也可以 但首选单击 我希望显示 ul actions
  • 抽象声明中没有参数名称?

    这是 F 中抽象成员的典型声明 abstract member createEmployee string gt string gt Employee 您定义参数类型 但不定义它们的名称 没有名字 在实现接口时如何知道每个参数是什么 换句话
  • 如何使用 Kotlin 就地过滤列表?

    在 Java 中 我可以使用以下代码从列表中删除项目 private void filterList List
  • 消除录音曲目中当前播放曲目的声音

    我希望使用远程 IO 进行音频录制和播放 我对核心音频的理解很差 因为我遵循惊人的音频开源 http theamazingaudioengine com 到目前为止 我可以使用相同的代码进行录制和播放 现在我尝试通过麦克风录制并通过 iPh
  • 特定接口上的 TCP/IP 连接

    我想使用两个网络路由之一连接到服务器 一个人会怎样做呢 我在 Google 上搜索了很多 常见的答案是修改路由表 但这并没有什么帮助 因为目的地只有一个 IP 地址 大多数示例都具有具有单个网卡的客户端和具有多个网卡的服务器 但在本例中情况
  • Shell 正则表达式到行尾

    我有一个像这样的小例子的文件 mode dev 该文件中某处的注释中有一个 变量 我想在 Shell 脚本中使用正则表达式获取值 到目前为止我的代码 bin bash conf lt etc test conf Get the file c
  • 队列上的 IEnumerable 迭代器是否应该使项目出列

    我创建了一个自定义通用队列 它实现了通用 IQueue 接口 该接口使用 System Collections Generic 命名空间中的通用队列作为私有内部队列 示例已清除不相关的代码 public interface IQueue
  • 您应该如何从源代码控制构建数据库?

    SO 社区 wiki 上有一些关于数据库对象是否应该进行版本控制的讨论 然而 我还没有看到太多关于为数据库对象创建构建自动化过程的最佳实践的讨论 对于我的团队来说 这一直是一个有争议的讨论点 特别是因为开发人员和 DBA 在评估数据库部署自
  • 如何在 ElasticSearch 中基于正则表达式过滤令牌

    对于 ElasticSearch 查询 我们希望以不同的方式处理单词 即仅由字母组成的标记 和非单词 为此 我们尝试定义两个分析器 返回单词或非单词 例如 我们有描述五金店产品的文档 name Torx drive T9 category
  • 字符串搜索算法

    对于两种字符串搜索算法 KMP和后缀树 在什么情况下优选哪种 举一些实际的例子 如果您必须回答很多查询 例如 大海捞针是否存在 则后缀树会更好 如果您只需在另一个字符串中搜索一个字符串 而不需要执行很多次 那么 KMP 会更好 后缀树是一种
  • SwiftUI - 将 SceneKit 场景添加到 MacOS 项目

    目标 使用 UIViewRepresentable 将 SceneKit 场景添加到 SwiftUI MacOS 项目 不是 Catalyst 我做了什么 当目标是 SwiftUI iOS 时 以下代码可以正常工作 但是当目标是 MacOS
  • Node教程一对多无加载远程服务器Stream Spinner动不停

    我对在项目中使用所需的 Kurrento 很陌生 但是当我克隆 git hub 上为 Kurento 提供的教程并遵循 one2Many 调用的说明时 首先 adapter js 的软件包损坏了 因为我成功解决了它们 但之后出现了一个问题