1.一种用于在浏览器上播放视频流的方法,其特征在于,包括:
获取视频流;
将所述视频流进行解码,得到帧数据;
将所述帧数据进行封装,得到封装后的帧数据;
将所述封装后的帧数据发送至所述浏览器,以便于所述浏览器根据所述封装后的帧数据播放所述视频流而无需借助插件。
2.如权利要求1所述的方法,其特征在于,所述帧数据为二进制的帧数据,所述封装后的帧数据为websocket格式的数据帧。
3.如权利要求1或2所述的方法,其特征在于,所述将所述帧数据进行封装,得到封装后的帧数据,包括:
将所述帧数据进行封装并进行压缩,得到所述封装后的帧数据。
4.如权利要求3所述的方法,其特征在于,所述压缩的比例基于显示的分辨率和/或网络状况确定。
5.一种用于在浏览器上播放视频流的方法,其特征在于,包括:
接收封装后的帧数据;
利用javascript语言对所述封装后的帧数据进行编码,得到帧数据;
将所述帧数据利用网页图形库WebGL进行渲染以播放对应的视频。
6.如权利要求5所述的方法,其特征在于,所述将所述帧数据利用WebGL进行渲染,包括:
以固定频率利用所述WebGL渲染所述帧数据中的每一帧图像。
7.如权利要求6所述的方法,其特征在于,所述将所述帧数据利用WebGL进行渲染,还包括:
将所述帧数据中的每一帧图像渲染在canvas内。
8.如权利要求5至7任一项所述的方法,其特征在于,在所述接收封装后的帧数据的步骤中,所接收的封装后的帧数据为权利要求1至5任一项所述的方法中发送至浏览器的封装后的帧数据。
9.一种用于在浏览器上播放视频流的装置,其特征在于,包括:
获取模块,用于获取视频流;
解码模块,用于将所述获取模块获取的所述视频流进行解码,得到帧数据;
封装模块,用于将所述解码模块得到的所述帧数据进行封装,得到封装后的帧数据;
发送模块,用于将所述封装模块得到的所述封装后的帧数据发送至所述浏览器,以便于所述浏览器根据所述封装后的帧数据播放所述视频流而无需借助插件。
10.如权利要求9所述的装置,其特征在于,所述帧数据为二进制的帧数据,所述封装后的帧数据为websocket格式的数据帧。
11.如权利要求9或10所述的装置,其特征在于,所述封装模块,具体用于:
将所述帧数据进行封装并进行压缩,得到所述封装后的帧数据。
12.如权利要求11述的装置,其特征在于,所述压缩的比例基于显示的分辨率和/或网络状况确定。
13.一种用于在浏览器上播放视频流的装置,其特征在于,包括:
接收模块,用于接收封装后的帧数据;
解码模块,用于利用javascript语言对所述接收模块接收的所述封装后的帧数据进行编码,得到帧数据;
显示模块,用于将所述解码模块得到的所述帧数据利用网页图形库WebGL进行渲染以播放对应的视频。
14.如权利要求13所述的装置,其特征在于,所述显示模块,具体用于:
以固定频率利用所述WebGL渲染所述帧数据中的每一帧图像。
15.如权利要求14所述的装置,其特征在于,所述显示模块,还用于:
将所述帧数据中的每一帧图像渲染在canvas内。
16.如权利要求13至15任一项所述的装置,其特征在于,所述接收模块所接收的封装后的帧数据为权利要求9至12任一项所述的装置中的发送模块所发送的封装后的帧数据。