使用getUserMedia捕獲僅限音頻的流或生成一個新的媒體流對象,您只需添加音頻軌道。
var recorder;
var listOfBlobs = [];
navigator.mediaDevices.getUserMedia({
audio: true,
video: true // video tracks are enabled only for demo purpose
}).then(function(camera) {
hiddenVideo.srcObject = camera; // make sure that camera tracks are not released/stoppped/inactive
var audioOnlyStream = new MediaStream();
camera.getAudioTracks().forEach(function(audioTrack) {
audioOnlyStream.addTrack(audioTrack);
});
recorder = RecordRTC(audioOnlyStream, {
type: 'audio',
mimeType: 'audio/webm',
recorderType: MediaStreamRecorder,
timeSlice: 1000,
ondataavailable: function(blob) {
listOfBlobs.push(blob);
}
});
});
btnStopRecording.onclick = function() {
recorder.stopRecording(function() {
var singleBlob = new Blob(listOfBlobs, {
type: 'audio/webm'
});
var url = URL.createObjectURL(singleBlob);
window.open(url);
});
};
我想捕獲音頻/ wav音頻,因爲這是在服務器端處理所需的。我看到可以使用** StereoAudioRecorder **,但不使用** MediaStreamRecorder **。但是當我使用** StereoAudioRecorder **時,我沒有得到基於時間的斑點。有什麼辦法可以得到嗎?另外我需要16000的desiredSampleRate。 – user3170450