[英]Webrtc how to play mp3 to remote peer
本地瀏覽器和遠程瀏覽器之間已經建立了Webrtc。
音頻正在發送和接收
庫正在處理 webrtc 連接,因此在此 scope 中沒有 stream 或 rtcpeerconnection object 訪問權限
我想創建向本地瀏覽器或遠程瀏覽器播放短 mp3 聲音的功能
這可以很好地播放到本地瀏覽器
function playAudioToLocal(mp3url) {
const context = new AudioContext();
const response = await fetch(mp3url);
const arrayBuffer = await response.arrayBuffer();
const audioBuffer = await context.decodeAudioData(arrayBuffer);
const source = context.createBufferSource();
source.buffer = audioBuffer;
source.start(0);
source.connect(context.destination);
}
如何將 mp3 播放到遠程?
function playAudioToRemote(mp3url) {
const context = new AudioContext();
const response = await fetch(mp3url);
const arrayBuffer = await response.arrayBuffer();
const audioBuffer = await context.decodeAudioData(arrayBuffer);
*WANT TO PLAY audioBuffer TO REMOTE*
}
此代碼會將解碼后的音頻轉換為可與 webrtc 一起使用的 MediaStream:
function playAudioToRemote(mp3url) {
const context = new AudioContext();
const response = await fetch(mp3url);
const arrayBuffer = await response.arrayBuffer();
const audioBuffer = await context.decodeAudioData(arrayBuffer);
const destination = context.createMediaStreamDestination();
const bufferSource = context.createBufferSource();
bufferSource.buffer = audioBuffer;
bufferSource.start(0);
bufferSource.connect(destination);
return destination.stream;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.