WebRTC:Chrome无法录制视频/音频

维斯瓦·库玛(VishwaKumar)

我正在尝试从网络摄像头录制音频和视频。我偶然发现了HTML5 getUserMedia,进一步的搜索使我转向了WebRTC [哦!顺便说一句,这真的很酷。

我在firefox上实现了它,并且可以正常工作,可以完美地录制音频和视频,但是在chrome上,音频或视频的录制取决于所传递的配置。进一步的谷歌搜索使我进入了这篇文章,它清楚地表明一个线程阻塞了另一个线程。现在,我已经看到了chrome演示,它们同时演示了两个音频视频捕获。

这是我的代码如下所示:

// Start recording
captureUserMedia(function(stream) {
                    localStream = stream;
                    window.audioVideoRecorder = window.RecordRTC(stream, {
                        type : 'video/webm'
                    });
                    window.audioVideoRecorder.startRecording();
                });

// Stop recording
window.audioVideoRecorder.stopRecording(function(url) {
                    videoElement.src = url;

                    videoElement.onended = function() {
                        videoElement.pause();
                        videoElement.src = URL.createObjectURL(audioVideoRecorder.getBlob());
                    };
                });

上面的代码用于在单击按钮时启动和记录媒体。控制台登录后,录制后我返回的Blob显示video/webm为Firefox和audio/wavChrome。

这清楚地表明一个正在阻止另一个。是否有任何用于记录这两个或任何其他我所缺少的javascript的解决方案,应该添加它才能使其正常工作。

更新:正如下面@ mido22所建议的那样,这是解决方法。链接可以在这里找到

美度

我已经对该主题进行了一些研究,目前还无法获得包含音频和视频的单个录制文件。原因是可以在firefox中完成的是MediaRecorder API

我没有使用RecordRTC,但是怀疑在内部,他们使用whammy.js进行webm记录,并使用recorderjs进行wav记录。

因此,最简单的铬解决方案是:

  1. webm使用的第一个实例录制视频RecordRTC
  2. 将audip记录为wav使用的第二个实例RecordRTC
  3. 将两者都上传到服务器,并使用ffmpeg合并它们。
  4. 提供一个链接,使用户可以访问合并的文件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章