Есть звонилка на webRTC. Требуется записывать разговоры средствами JS. Для записи использую библиотеку recorder.js. Есть два потока:
var input = audio_context.createMediaStreamSource(stream);
var stream2 = audio_context.createMediaStreamSource(document.getElementById('main_audio_remote').captureStream());
input - поток с микрофона, stream2 - звук собеседника. Следующим кодом у меня получается записать либо первый поток, либо второй.
recorder = new Recorder(input);
recorder.record();
Вопрос: как объединить эти два потока?
На всякий случай весь код:
var audio_context;
var recorder;
function startUserMedia(stream) {
/*var input = audio_context.createMediaStreamSource(stream);
var stream2 = audio_context.createMediaStreamSource(document.getElementById('main_audio_remote').captureStream());
stream2.connect(input.destination);*/
/*var options = {
mediaStream : document.getElementById('main_audio_remote').captureStream()
};
var source = new MediaStreamAudioSourceNode(audio_context, options);
source.connect(audio_context.destination);*/
//var merger = audio_context.createChannelMerger(2);
var input = audio_context.createMediaStreamSource(stream);
var stream2 = audio_context.createMediaStreamSource(document.getElementById('main_audio_remote').captureStream());
//merger.connect(input);
// merger.connect(stream2);
recorder = new Recorder(input);
console.log('Recorder initialised.');
}
function startRecording(button) {
recorder && recorder.record();
console.log('Recording...');
}
function stopRecording(button) {
recorder && recorder.stop();
console.log('Stopped recording.');
createDownloadLink();
recorder.clear();
}
function createDownloadLink() {
recorder && recorder.exportWAV(function(blob) {
var url = URL.createObjectURL(blob);
var li = document.createElement('li');
var au = document.createElement('audio');
var hf = document.createElement('a');
au.controls = true;
au.src = url;
hf.href = url;
hf.download = new Date().toISOString() + '.wav';
hf.innerHTML = hf.download;
li.appendChild(au);
li.appendChild(hf);
recordingslist.appendChild(li);
});
}
window.onload = function init() {
try {
// webkit shim
window.AudioContext = window.AudioContext || window.webkitAudioContext;
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia;
window.URL = window.URL || window.webkitURL;
audio_context = new AudioContext;
console.log('Audio context set up.');
console.log('navigator.getUserMedia ' + (navigator.getUserMedia ? 'available.' : 'not present!'));
} catch (e) {
alert('No web audio support in this browser!');
}
//navigator.mediaDevices.getUserMedia({audio: true})
//.then(startUserMedia);
navigator.getUserMedia({audio: true}, startUserMedia, function(e) {
console.log('No live audio input: ' + e);
});
};
Можно ли сделать так, чтобы когда пользователь вводил в prompt цифру 1 то ему показывалась картинка с информациейЕсли бы он вводил цифру 2, то ему...
Нужно собрать данные пользователя в post, как реализовать сбор полей email и phone если они множественные? Как собрать данные с inputов, если есть поля...
Есть рисунок svg -шный , там необходимо чтоб лента (белого цвета) по нажатию мигала зеленым цветом ,а коробок медленно двигался по этой ленте...
есть блок wrap с висотой, а i стрелка