关于视频播放的问题。。。。。。。。

我从后台拿到视频的二进制数据传到前台data,
怎样转成mediastream给video标签的src引用啊?
直接用video.src=data或者
video.src=window.URL.createObjectURL(data)
显示:
媒体资源 blob:http://localhost:8080/0b89f0a0-cb9d-4d35-83ab-ff40e8de5190 无法被解码。

求大神解答。

2个回答

直接video.src='后台url地址'就行了吧,设置好content-type和content-length响应头

URL生成blog那种主要是集合客户端file对象的

showbo
支付宝加好友偷能量挖 http://www.w3dev.cn/article/20170815/XMLHttpRequest-load-vido-file-binary-to-play.aspx
接近 3 年之前 回复
showbo
支付宝加好友偷能量挖 回复75闪光雷: video的src设置为这个动态页
接近 3 年之前 回复
showbo
支付宝加好友偷能量挖 回复75闪光雷: 不用加后缀吧。。设置好content-type和content-length就行了。不过如果你的文件没有后缀不好设置这2个参数,你需要动态页读出来,动态页来设置者2个参数,然后再输出文件2进制数据流
接近 3 年之前 回复
qq_34309305
75闪光雷 后台的文件是2.MP4 前台拿到的文件 testvideo 没有后缀
接近 3 年之前 回复
qq_34309305
75闪光雷 是这样的,我现在传到前台的二进制文件没有后缀,我觉得这是浏览器不能解码的原因,你知道怎样能给文件加后缀吗?现在二进制数据存在一个数组里,类型是string
接近 3 年之前 回复
showbo
支付宝加好友偷能量挖 回复75闪光雷: 就是file对象onchange结合URL生成blob地址,复制给video对象就能播放了(浏览器支持这种格式视频)。DEMO:<video id="v"></video><input type="file" onchange="if (/\.mp4$/.test(this.value)) { v.src = window.URL.createObjectURL(this.files[0]); v.play() }" />
接近 3 年之前 回复
qq_34309305
75闪光雷 “集合客户端file对象的”这句话能具体解释一下吗?
接近 3 年之前 回复
qq_34309305
75闪光雷 你说的确实能行,但是领导让研究先拿到二进制数据再给video标签使用的方法
接近 3 年之前 回复

补充一下:直接把本地视频给video的src引用是可以播放的

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐