recordRTC无法停止音频流

时间:2015-07-02 09:48:05

标签: javascript

如果有人可以提出解决方案,请记录如何在录制后释放音频设备。 我保存视频流,而不是使用localStream.stop()和视频录制停止。 我应该在哪里保存音频流,以及任何关于停止的建议?

var localStream;

record.onclick = function() {
record.disabled = true;
        !window.stream && navigator.getUserMedia({
            audio: true,
            video: true
        }, function(stream) {
            localStream = stream;
            ...
        }
        function onstream() {
            preview.src = window.URL.createObjectURL(stream);
            preview.play();
            preview.muted = true;
            recordAudio = RecordRTC(stream, {                
                // bufferSize: 16384,
                onAudioProcessStarted: function() {
                    if (!isFirefox) {                        
                        recordVideo.startRecording();
                        audioStream = stream;
                    }
                }
            });
            recordVideo = RecordRTC(stream, {
                type: 'video'                
            });
            recordAudio.startRecording();
            stop.disabled = false;
        }
}

我在fileupload之后的回调中停止它:

localStream.stop();

任何帮助都将受到高度赞赏。

更新:我已尝试过:

localStream.getAudioTracks()[0].stop();
localStream.getVideoTracks()[0].stop();

更新2:我会在所有情况下audioTrack.enable == true看到我试图阻止它。

1 个答案:

答案 0 :(得分:0)

一如既往......溶剂在顶部。 我已经在停止点击处理程序中添加了两行。

window.stream = undefined;
preview.muted = false;

希望这会对某人有所帮助。