Wil*_*ill 4 javascript html5-video webrtc recordrtc
我试图让blob成为视频元素的src.我的代码工作正常时:
videoRef.src = URL.createObjectURL(blob)
Run Code Online (Sandbox Code Playgroud)
但不推荐使用'src'和'URL.createObjectURL'来代替使用'srcObject'https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL
和https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia
我的问题是如何简单地将blob文件添加到srcObject中,如下所示:
videoRef.srcObject = blob
Run Code Online (Sandbox Code Playgroud)
当我尝试上面的代码时,我得到错误:"TypeError:无法在'HTMLMediaElement'上设置'srcObject'属性:提供的值不是'MediaStream'类型."
我如何不使用已弃用的videoRef.src并将blob直接应用于videoRef.srcObject?或者blob类型是否可以使用src,只有流不能使用src?
URL.createObjectURL仅针对流而不是blob和mediasources弃用.
您引用的MDN警告位于标题为使用媒体流的对象URL的部分下.警告本身说:
如果仍有依赖createObjectURL()的代码将流附加到媒体元素
有人URL.createObjectURL特意弃用流,因为流本身就是本地对象.
TypeError:无法在'HTMLMediaElement上设置'srcObject'属性
看起来您的浏览器尚未实现srcObjectblob.这是常见的.
例如,Chrome和Firefox都仅部分支持 srcObject for streams,但不支持blob,file或mediasource.
srcObject上的 MDN 回应了这个:
截至2017年11月,浏览器仅支持MediaStream.对于MediaSource,Blob和File,您必须使用URL.createObjectURL()创建一个URL并将其分配给HTMLMediaElement.src.
| 归档时间: |
|
| 查看次数: |
3111 次 |
| 最近记录: |