Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Kurento WebRTC未录制_Javascript_Node.js_Webrtc_Kurento - Fatal编程技术网

Javascript Kurento WebRTC未录制

Javascript Kurento WebRTC未录制,javascript,node.js,webrtc,kurento,Javascript,Node.js,Webrtc,Kurento,我正在尝试使用Kurento媒体服务器和nodejs录制视频。我一直在运行hello world示例。我将recorderEndpoint连接到webrtcEndpoint,并能够运行整个程序,但在服务器上收到以下错误消息: 0:37:59.122469563 7003 0xaf5500错误KurentoMediaPipelineImpl/build/buildd/kms-core-5.0.3/src/server/implementation/objects/MediaPipelineImpl

我正在尝试使用Kurento媒体服务器和nodejs录制视频。我一直在运行hello world示例。我将recorderEndpoint连接到webrtcEndpoint,并能够运行整个程序,但在服务器上收到以下错误消息:

0:37:59.122469563 7003 0xaf5500错误KurentoMediaPipelineImpl/build/buildd/kms-core-5.0.3/src/server/implementation/objects/MediaPipelineImpl.cpp:32:busMessage:bus总线错误:错误消息:0x7f11c0330ea0,时间99:99.99999999,序号514729,元素“kmsrecorderendpoint10”,GstMessageError,gerror=(gerror)NULL,调试=(字符串)“/build/buildd/kms-elements-5.0.3/src/gst plugins/kmsrecorderendpoint.c(876):\sink\u required\u cb\():\/GstPipeline:pipeline8/kmsrecorderendpoint:kmsrecorderendpoint10”

我不认为它的录制正确,但我不确定是什么问题。我能够运行原始示例,因此服务器很好

代码如下:


在让代码正常运行之前,您需要修复几个问题。我已经创建了一个代码分支,并添加了一些修改,您需要包括这些修改才能记录WebRTC流。分支是。此外,让我为您提供一些注释:

  • 您选择的示例(“Hello World”)无法停止(它在GUI中没有“停止”按钮)。因此,您将无法停止录制。您应该使用更高级的示例,该示例具有“开始”和“停止”“按钮,您可以停止录制以访问存储的媒体并查看它。可能您应该使用更好的作为声明点,因为它使用WebSocket来发送信号,并使您能够停止录制
  • 你应该避免比赛条件。在您的代码中,您使用的是一个“recorderEndpoint”变量,它具有竞争条件,因为它在回调中初始化,并在不同的回调中使用,这两个回调并行执行,并且都受竞争条件的约束

  • 编辑:该示例确实有一个停止按钮,按下该按钮后,将释放管道,并停止录制。因此,评论1并不适用。

    感谢您的精彩评论!试过了,效果很好。hello world示例也有一个“停止”按钮,用于停止环回,它不也停止录制吗?是的,你是对的。我没注意到它有一个停止按钮。它正在释放管道,同时,录音也停止了。因此,您可以安全地使用该示例。