VIN*_*VIN 5 safari mediaelement webrtc mediastream rtcmulticonnection
我正在尝试使用此库(RTCMulticonnection)实现WebRTC,并且Type Error在Safari Tech Preview 11中尝试在视频mediaElement上设置“ srcObject” 时遇到了。
相关代码:
if (isSafari) {
//I've tried the 4 ways below to set the srcObject but all cause a Type Error
// mediaElement['srcObject'] = window.URL.createObjectURL(stream); throws type error
// mediaElement['srcObject'] = stream; throws type error
// mediaElement['src'] = window.URL.createObjectURL(stream);
// mediaElement.srcObject = stream; // throws type error
}
Run Code Online (Sandbox Code Playgroud)
当我打印时mediaElement,我得到:<video></video>
当我打印时stream,我得到一个MediaStream对象。
MediaStream {streamid: "722cfcc7-0687-4265-b266-e81b2abf8398", idInstance: "{\"audio\":{\"mandatory\":{},\"optional\":[{\"bandwidth\":…\":[{\"bandwidth\":4194304},{\"facingMode\":\"user\"}]}}", isVideo: 1, isAudio: false, type: "local", …}
Run Code Online (Sandbox Code Playgroud)
错误
TypeError: Type error
[Error] No message (2)
TypeError: Type error — RTCMultiConnection.js:4089
Object audio: {mandatory: {}, optional: [{bandwidth: 1048576}]}
video: {mandatory: {}, optional: [{bandwidth: 4194304}, {facingMode: "user"}]}
Object Prototype
onMediaError (RTCMultiConnection.js:5215)
onLocalMediaError (RTCMultiConnection.js:806)
onLocalMediaError (RTCMultiConnection.js:4995)
(anonymous function) (RTCMultiConnection.js:3365)
promiseReactionJob
Run Code Online (Sandbox Code Playgroud)
该Type Error卡在此then/catch:
navigator.mediaDevices.getUserMedia(options.localMediaConstraints).then(function(stream) {
stream.streamid = stream.streamid || stream.id || getRandomString();
stream.idInstance = idInstance;
streaming(stream);
}).catch(function(error) {
options.onLocalMediaError(error, options.localMediaConstraints });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
639 次 |
| 最近记录: |