我知道普通视频直接在video的src里写上视频地址就可以了,直播视频我没做过,可是我想在浏览器或手机上播放直播时video是不是应该接受从后端传过来的数据流?可是要怎么做呢,src该怎么写,后端传过来的直播数据一般是怎么样的?
我知道普通视频直接在video的src里写上视频地址就可以了,直播视频我没做过,可是我想在浏览器或手机上播放直播时video是不是应该接受从后端传过来的数据流?可是要怎么做呢,src该怎么写,后端传过来的直播数据一般是怎么样的?
一般就是 hls,这个你网上查一下很多的。库的话,我司视频会议系统用的是 video.js。
大体的流程其实就是设备采集视频源数据,存到服务器中,然后切片,播放端加载相应的 .m3u8 索引文件。
5 回答1.4k 阅读
9 回答1.6k 阅读✓ 已解决
6 回答908 阅读
3 回答1.3k 阅读✓ 已解决
5 回答1.1k 阅读✓ 已解决
4 回答919 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
我猜测你的普通视频是指直接播放视频源文件,例如:
MP4、FLV、AVI
等。非HTML5的时代:
1、使用使用
<embed>
标签,需要支持Flash
。 例如TX视频
的 PC端的。2、使用 <object> 标签。
以上2个都绕不过
Flash
,都需要Flash
解码器,但是现在手机端已经淘汰 Flash 播放器
。HTML5的时代:
3、使用
<video>
标签,<video>
是 HTML 5 中的新标签。为了解决浏览器的兼容性,有了 video.js, flv.js, Chimee
这几个都可以直接播放
MP4、FLV、SWF
编码的视频。推流
以上都是可以直接播放相应的视频文件,但是都需要把视频文件下载下来才能播放,做不到
实时、快速
。于是在这基础上有了HLS和RTMP
协议,这是目前主流的推流解决方案。大概的过程如下:
把视频源,例如:
MP4、FLV、AVI
,等切片,切片的索引放到m3u8
文件中,当用户播放或者快进的时候,计算位置,告诉服务器开始切片推流,这样就保证了以最小的带宽和更短的传输时间
满足用户更多个性化的播放需求。推流方案的重点是推流服务器,自己没有能力的可以使用云厂商提供的视频推流服务,例如:七牛,腾讯视频等。
浏览器端只需要做好解码播放的功能就行了。