Могу ли я отключить микрофон от медиаустройств?

#javascript #html5-video #record #voice-recording

Вопрос:

я записываю видео и голос пользователей navigator.mediaDevices.getUserMedia без проблем, но во время записи видео я не хочу слышать голос микрофона, могу ли я отключить микрофон?

я попробовал это stream.getAudioTracks()[0].muted

вот мой фрагмент кода

 navigator.mediaDevices.getUserMedia({
            video: true, audio: {
                echoCancellation: true,
                noiseSuppression: true,
                sampleRate: 44100
            }
        })
            .then(stream => {
    video.srcObject = stream;
                stream.getAudioTracks()[0].muted //doesn't work
                var mediaRecorder = new MediaRecorder(stream)

                start.addEventListener('click', _ => {
                    mediaRecorder.start()
                    console.log(mediaRecorder.state);
                })

                stop.addEventListener('click', _ => {
                    mediaRecorder.stop()
                    console.log(mediaRecorder.state);
                    stream.getTracks().forEach(function (track) {
                        track.stop();
                    })
                })

                mediaRecorder.addEventListener('stop', _ => {
                    let blob = new Blob(chunks, { 'type': 'video/x-matroska;codecs=avc1,opus' });
                    let videoUrl = URL.createObjectURL(blob)})
})
 

Ответ №1:

Если я правильно понял — вы хотите записать аудио, но не воспроизводить его в браузере, верно?

Просто добавьте параметр «приглушенный» к тому, который воспроизводит носитель, который вы захватываете.

 <video muted>

</video>
 

Вы можете сделать это программно:

 video.muted=true;
 

Если вы не хотите записывать аудио — измените ограничение звука на аудио: ложь:

 navigator.mediaDevices.getUserMedia({
            video: true, audio: false
        })

 

Комментарии:

1. здравствуйте, большое вам спасибо за вашу помощь. на самом деле я попробовал ваше решение. но во время записи звука я не хочу слышать свой звук, но в то же время я хочу его записать.

2. если вы отключите тег видео — вы все равно запишете звук.. он просто не будет воспроизводиться. (варианты 1 и 2)