问题描述
我正在与webrtc一起录制音频和视频,但遇到了问题 我开始使用MediaRecorder进行录制,但是它可以正常工作,但是当我更改本地录制流的音频轨道(用于在录制过程中更改音频输入设备以捕获其他麦克风的录制)时,MediaRecorder停止发送Blob数据。
mediaRecorder = new MediaRecorder(window.stream,options);
var audioTrack = window.stream.getAudioTracks()[0];
mediaRecorder.start(1000);
更改设备的功能(在录制过程中切换麦克风)
audioTrack.stop();
const new_stream = await gUM({ audio: constraints });
const new_track = new_stream.getAudioTracks()[0];
audioTrack = new_track;
如果我停止了audioTrack,则MediaRecorder停止发送blob,但是如果我不停止分配新轨道,它就可以正常工作,但设备没有更改,它仍然会捕获以前设备的录音。我也应用了约束,但它也不能反映音频的任何变化
await audioTrack.applyConstraints(Object.assign(audioTrack.getSettings(),constraints));
我的要求只是不要在更换新设备(麦克风/摄像头)后停止记录
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)