2017-02-26 27 views
0

我想弄明白为什么HTMLAudioElement网络API允许使用new AudioHTMLVideoElement没有new Video为什么HTMLVideoElement与HTMLAudioElement没有相同的构造函数语法?

对于上下文,我正在使用PeerJS库开发WebRTC项目,下面代码块的第二行示例了一个“新音频”对象,我们用它来在对等设备之间流式传输音频。通过扩展,我认为要流式处理和播放视频,可以使用new Video,但它看起来并不是什么东西(如控制台错误和HTMLVideoElement文档中缺少它所验证的那样)。这是为什么?

this.peer.on('call', (call)=>{ 
    console.log('recieving call'); 
    call.answer(); 
    call.on('stream', (mediaStream)=>{ 
    let clientAudio = new Audio(window.URL.createObjectURL(mediaStream)); 
    clientAudio.play(); 

回答

0

尝试创建一个音频元素是这样的: call.on('stream', (mediaStream)=>{ let clientAudio = document.createElement('audio'); clientAudio.autoplay = true; clientAudio.srcObject = mediaStream; // legacy way, dont use anymore // clientAudio.src = window.URL.createObjectURL(mediaStream); }

要回答你原来的问题,尝试HTMLAudioElement和HTMLVideoElement。不知道为什么“音频”是前者的别名。

相关问题