CN109151570B - 一种基于html5的流媒体处理方法、系统及相关组件 - Google Patents

一种基于html5的流媒体处理方法、系统及相关组件 Download PDF

Info

Publication number
CN109151570B
CN109151570B CN201811178342.7A CN201811178342A CN109151570B CN 109151570 B CN109151570 B CN 109151570B CN 201811178342 A CN201811178342 A CN 201811178342A CN 109151570 B CN109151570 B CN 109151570B
Authority
CN
China
Prior art keywords
streaming media
media data
mse
fragment
format
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811178342.7A
Other languages
English (en)
Other versions
CN109151570A (zh
Inventor
董晓赟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Onething Technology Co Ltd
Original Assignee
Shenzhen Onething Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Onething Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201811178342.7A priority Critical patent/CN109151570B/zh
Publication of CN109151570A publication Critical patent/CN109151570A/zh
Application granted granted Critical
Publication of CN109151570B publication Critical patent/CN109151570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Abstract

本申请公开了一种基于HTML5的流媒体处理方法、系统及一种电子设备和计算机可读存储介质,该方法包括:多源获取播放请求对应的第一流媒体数据,并判断第一流媒体数据是否为Fragment MP4格式;若否,则将第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;将第二流媒体数据发送至MSE,以便MSE播放第二流媒体数据。本申请提供的流媒体播放方法,通过MSE配合HTML5播放技术,实现了碎片化的流数据播放。虽然MSE仅支持Fragment MP4格式,但本申请可以将其他音视频封装格式的数据流转封装为Fragment MP4格式,实现了多种格式的流媒体数据的点播。

Description

一种基于HTML5的流媒体处理方法、系统及相关组件
技术领域
本申请涉及通信技术领域,更具体地说,涉及一种基于HTML5的流媒体处理方法、系统及一种电子设备和一种计算机可读存储介质。
背景技术
在浏览器端,HTML5播放技术正快速替代以往的Flash播放技术。Flash原生支持碎片化数据传输,且可直接操作原始音视频数据,并通过NetStream的appendBytes()方法将音视频数据传递给底层解码器。而HTML5则缺少像Flash这样封装完善的多源流媒体播放方案。
因此,如何基于HTML5播放技术,实现多源流媒体播放是本领域技术人员需要解决的问题。
发明内容
本申请的目的在于提供一种基于HTML5的流媒体处理方法、系统及一种电子设备和一种计算机可读存储介质,基于HTML5播放技术,实现了多源流媒体播放。
为实现上述目的,本申请提供了一种基于HTML5的流媒体处理方法,包括:
多源获取播放请求对应的第一流媒体数据,并判断所述第一流媒体数据是否为Fragment MP4格式;
若否,则将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;
将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据。
其中,若所述第一流媒体数据为Fragment MP4格式,则还包括:
将所述第一流媒体数据发送至MSE,以便所述MSE播放所述第一流媒体数据。
其中,所述多源获取播放请求对应的第一流媒体数据,包括:
利用CDN服务多源获取所述播放请求对应的第一流媒体数据,并将所述第一流媒体数据存入缓存。
其中,判断所述第一流媒体数据是否为Fragment MP4格式,包括:
每隔预设的时间从所述缓存中取出缓存流媒体数据,并判断所述缓存流媒体是否为Fragment MP4格式;其中,所述缓存流媒体数据包括所述第一流媒体数据。
其中,还包括:
当所述播放请求对应的流媒体数据全部播放完成时,释放所述缓存流媒体数据。
其中,将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据,包括:
利用Demuxer对所述第一流媒体数据进行解封装操作,并利用Remuxer将解封装得到的数据封装为Fragment MP4格式的所述第二流媒体数据。
其中,将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据,包括:
将所述第二流媒体数据加入等待队列中,并将所述等待队列中的待播放流媒体数据顺序发送至所述MSE,以便所述MSE解码并播放所述待播放流媒体数据;其中,所述待播放流媒体数据包括所述第二流媒体数据。
为实现上述目的,本申请提供了一种基于HTML5的流媒体处理系统,包括:
获取模块,用于多源获取播放请求对应的第一流媒体数据,并判断所述第一流媒体数据是否为Fragment MP4格式;
转封装模块,用于当所述第一流媒体数据不为Fragment MP4格式时,将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;
第一发送模块,用于将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据。
为实现上述目的,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述基于HTML5的流媒体处理方法的步骤。
为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述基于HTML5的流媒体处理方法的步骤。
通过以上方案可知,本申请提供的一种基于HTML5的流媒体处理方法,包括:多源获取播放请求对应的第一流媒体数据,并判断所述第一流媒体数据是否为Fragment MP4格式;若否,则将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据。
本申请提供的流媒体播放方法,通过MSE(Media Source Extension)配合HTML5播放技术,实现了碎片化的流数据播放。虽然MSE仅支持Fragment MP4格式,但本申请可以将其他音视频封装格式(FLV、MP4、HLS等)的数据流转封装为Fragment MP4格式,实现了多种格式的流媒体数据的点播。另外,在获取流媒体数据时,本申请不限定具体的传输方式,支持多种传输协议,例如HTTP、WS或其他私有协议等,可扩展性较强。本申请还公开了一种基于HTML5的流媒体处理系统及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种基于HTML5的流媒体处理方法的流程图;
图2为本申请实施例公开的另一种基于HTML5的流媒体处理方法的流程图;
图3为本申请实施例公开的一种基于HTML5的流媒体处理方法的架构图;
图4为本申请实施例公开的一种基于HTML5的流媒体处理系统的结构图;
图5为本申请实施例公开的一种电子设备的结构图;
图6为本申请实施例公开的另一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例公开了一种基于HTML5的流媒体处理方法,基于HTML5播放技术,实现了多源流媒体播放。
参见图1,本申请实施例公开的一种基于HTML5的流媒体处理方法的流程图,如图1所示,包括:
S101:多源获取播放请求对应的第一流媒体数据,并判断所述第一流媒体数据是否为Fragment MP4格式;若是,则进入S102;若否,则进入S103;
此处的播放请求包括待播放的流数据的下载地址,当接收到客户端的播放请求时,按播放顺序依次在下载地址中下载流媒体数据。作为一种优选实施方式,可以利用CDN(中文全称:内容分发网络,英文全称:Content Delivery Network)服务多源下载流媒体数据,并依次将下载完成的流媒体数据存入缓存。当然也可以利用其它方式下载流媒体数据,本实施例不进行具体限定。
可以理解的是,由于MSE仅支持Fragment MP4格式,因此在下载流媒体数据之后,还需判断该流媒体数据是否为Fragment MP4格式,若是,则进入S102;若否,则进入S103。当下载完成的流媒体数据入缓存时,每隔预设的时间从所述缓存中取出缓存流媒体数据,并判断该缓存流媒体是否为Fragment MP4格式。
S102:将所述第一流媒体数据发送至MSE,以便所述MSE播放所述第一流媒体数据;
在具体实施中,当上一步骤中的第一流媒体数据为Fragment MP4格式时,直接将该第一流媒体数据发送至MSE,MSE会按播放顺序播放接收到的流媒体数据。
S103:将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;
在具体实施中,当步骤S101中的第一流媒体数据不为Fragment MP4格式时,转封装为Fragment MP4格式的第二流媒体数据。具体的,可以利用Demuxer对该第一流媒体数据进行解封装操作,并利用Remuxer将解封装得到的数据封装为Fragment MP4格式的第二流媒体数据。
S104:将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据。
在具体实施中,转封装完成后,将Fragment MP4格式的第二流媒体数据发送至MSE,MSE会按播放顺序播放接收到的流媒体数据。作为一种优选实施方式,可以将将该第二流媒体数据加入等待队列中,并将等待队列中的待播放流媒体数据顺序发送至所述MSE,以便所述MSE解码并播放所述待播放流媒体数据。
本申请实施例提供的流媒体播放方法,通过MSE(Media Source Extension)配合HTML5播放技术,实现了碎片化的流数据播放。虽然MSE仅支持Fragment MP4格式,但本申请可以将其他音视频封装格式(FLV、MP4、HLS等)的数据流转封装为Fragment MP4格式,实现了多种格式的流媒体数据的点播。另外,在获取流媒体数据时,本申请不限定具体的传输方式,支持多种传输协议,例如HTTP、WS或其他私有协议等,可扩展性较强。
本申请实施例公开了一种基于HTML5的流媒体处理方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
参见图2,本申请实施例提供的另一种基于HTML5的流媒体处理方法的流程图,如图2所示,包括:
S201:当接收到播放请求时,利用CDN服务多源获取所述播放请求对应的第一流媒体数据,并将所述第一流媒体数据存入缓存;
本实施例提供的流媒体处理方法应用于HTML5播放技术,该方法实现时具体的系统架构如图4所示,利用CDN服务负责获取流媒体数据,CDN支持多种传输协议,如HTTP、WS、其他私有协议等,且支持多种音视频封装格式,如FLV、MP4、HLS等。
MSE是媒体源扩展API,由W3C制定,提供了实现无插件且基于Web的流媒体功能。使用MediaSource对象代替src,由多个SourceBuffer对象表示不同的媒体数据块。通过MSE可以根据需要将来自不同源的媒体数据处理后传递给<video>或<audio>标签,实现媒体数据的精确控制。
MSEController(MSE控制器)用于创建并维护MediaSource对象、SourceBuffer对象,并使用SourceBuffer的appendBuffer()接口,将数据传递给底层解码器。
Loader(下载器)负责支持基于多种协议的请求、接收数据功能。
Cache(高速缓冲存储器)用于缓存从Loader获取的数据。
Demuxer(视音频分离器)用于对不同的格式(如FLV、HLS等)进行解封装。Remuxer(封装格式转换器)用于将解封装后的数据,加封装为Fragment MP4格式,单位为Segment。
Transmuxer为总控制模块,包括下载策略、数据缓存控制、转封装及MSE控制,并提供播放控制接口,包括load()、unload()、seek()等。
在具体实施中,首先调用Transmuxer的load(),控制Loader模块从CDN多源下载数据,Loader接收到的数据由Transmuxer控制写入Cache。
S202:每隔预设的时间从所述缓存中取出缓存流媒体数据,并判断所述缓存流媒体是否为Fragment MP4格式;若是,则进入S203;若否,则进入S204;
由于当前MSE API只支持Fragment MP4格式,因此需要判断下载的流媒体数据是否为Fragment MP4格式,对非Fragment MP4的流媒体数据进行转封装处理。
S203:将所述缓存流媒体数据加入等待队列中;
S204:利用Demuxer对所述缓存流媒体数据进行解封装操作,利用Remuxer将解封装得到的数据封装为Fragment MP4格式的目标流媒体数据,并将所述目标流媒体数据加入所述等待队列中;
在具体实施中,Transmuxer定时从Cache读取数据(即缓存流媒体数据),传给相应格式的Demuxer。Demuxer解封装,并将数据传给Remuxer。Remuxer将数据加封装为FragmentMP4的数据段(Segment)(即目标流媒体数据),并由Transmuxer传递给MSEController,MSEController将Segment加入等待队列。
S205:将所述等待队列中的待播放流媒体数据顺序发送至所述MSE,以便所述MSE解码并播放所述待播放流媒体数据;
在具体实施中,循环调用SourceBuffer的appendBuffer接口将等待队列中的待播放流媒体数据顺序发送至底层解码器,底层解码器解码后MSE播放所述待播放流媒体数据。
S206:当所述播放请求对应的流媒体数据全部播放完成时,释放所述缓存流媒体数据。
在具体实施中,当播放请求对应的流媒体数据全部播放完成时,调用Transmuxer的unload(),停止下载清理并释放缓存中的资源。
下面对本申请实施例提供的一种基于HTML5的流媒体处理系统进行介绍,下文描述的一种基于HTML5的流媒体处理系统与上文描述的一种基于HTML5的流媒体处理方法可以相互参照。
参见图4,本申请实施例提供的一种基于HTML5的流媒体处理系统的结构图,如图4所示,包括:
获取模块401,用于多源获取播放请求对应的第一流媒体数据,并判断所述第一流媒体数据是否为Fragment MP4格式;
转封装模块402,用于当所述第一流媒体数据不为Fragment MP4格式时,将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;
第一发送模块403,用于将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据。
本申请实施例提供的流媒体播放系统,通过MSE(Media Source Extension)配合HTML5播放技术,实现了碎片化的流数据播放。虽然MSE仅支持Fragment MP4格式,但本申请可以将其他音视频封装格式(FLV、MP4、HLS等)的数据流转封装为Fragment MP4格式,实现了多种格式的流媒体数据的播放。另外,在获取流媒体数据时,本申请不限定具体的传输方式,支持多种传输协议,例如HTTP、WS或其他私有协议等,可扩展性较强。
在上述实施例的基础上,作为一种优选实施方式,基于HTML5的流媒体处理系统则还包括:
第二发送模块,若所述第一流媒体数据为Fragment MP4格式,用于将所述第一流媒体数据发送至MSE,以便所述MSE播放所述第一流媒体数据。
在上述实施例的基础上,作为一种优选实施方式,所述获取模块401包括:
获取单元,用于利用CDN服务获取所述播放请求对应的第一流媒体数据,并将所述第一流媒体数据存入缓存;
判断单元,用于判断所述第一流媒体数据是否为Fragment MP4格式。
在上述实施例的基础上,作为一种优选实施方式,所述判断单元具体为每隔预设的时间从所述缓存中取出缓存流媒体数据,并判断所述缓存流媒体是否为Fragment MP4格式;其中,所述缓存流媒体数据包括所述第一流媒体数据的单元。
在上述实施例的基础上,作为一种优选实施方式,还包括:
释放模块,用于当所述播放请求对应的流媒体数据全部播放完成时,释放所述缓存流媒体数据。
在上述实施例的基础上,作为一种优选实施方式,所述转封装模块402具体为利用Demuxer对所述第一流媒体数据进行解封装操作,并利用Remuxer将解封装得到的数据封装为Fragment MP4格式的所述第二流媒体数据的模块。
在上述实施例的基础上,作为一种优选实施方式,所述第一发送模块403具体为将所述第二流媒体数据加入等待队列中,并将所述等待队列中的待播放流媒体数据顺序发送至所述MSE,以便所述MSE解码并播放所述待播放流媒体数据;其中,所述待播放流媒体数据包括所述第二流媒体数据的模块。
本申请还提供了一种电子设备,参见图5,本申请实施例提供的一种电子设备的结构图,如图5所示,包括:
存储器100,用于存储计算机程序;
处理器200,用于执行所述计算机程序时可以实现上述实施例所提供基于HTML5的流媒体处理方法。
具体的,存储器100包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器200为电子设备提供计算和控制能力,执行所述存储器100中保存的计算机程序时,可以实现如上述任一实施例提供的基于HTML5的流媒体处理方法。
本实施例中的电子设备,可以作为内容分发网络的节点设备,也可以作为区块链网络中的节点设备。
在上述实施例的基础上,作为优选实施方式,参见图6,所述电子设备还包括:
输入接口300,与处理器200相连,用于获取外部导入的计算机程序、参数和指令,经处理器200控制保存至存储器100中。该输入接口300可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元400,与处理器200相连,用于显示处理器200发送的数据。该显示单元400可以为PC机上的显示屏、液晶显示屏或者电子墨水显示屏等。具体的,在本实施例中,可以通过显示单元400播放流媒体数据等。
网络端口500,与处理器200相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MHL)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。
本申请实施例提供通过MSE(Media Source Extension)配合HTML5播放技术,实现了碎片化的流数据播放。虽然MSE仅支持Fragment MP4格式,但本申请可以将其他音视频封装格式(FLV、MP4、HLS等)的数据流转封装为Fragment MP4格式,实现了多种格式的流媒体数据的播放。另外,在获取流媒体数据时,本申请不限定具体的传输方式,支持多种传输协议,例如HTTP、WS或其他私有协议等,可扩展性较强。
本申请还提供了一种计算机可读存储介质,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一实施例提供的基于HTML5的流媒体处理方法的步骤。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (9)

1.一种基于HTML5的流媒体处理方法,其特征在于,包括:
多源获取播放请求对应的第一流媒体数据,并判断所述第一流媒体数据是否为MSE支持的Fragment MP4格式;
若否,则将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;
将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据;
其中,将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据,包括:
利用Demuxer对所述第一流媒体数据进行解封装操作,并利用Remuxer将解封装得到的数据封装为Fragment MP4格式的所述第二流媒体数据。
2.根据权利要求1所述基于HTML5的流媒体处理方法,其特征在于,若所述第一流媒体数据为Fragment MP4格式,则还包括:
将所述第一流媒体数据发送至MSE,以便所述MSE播放所述第一流媒体数据。
3.根据权利要求1所述基于HTML5的流媒体处理方法,其特征在于,所述多源获取播放请求对应的第一流媒体数据,包括:
利用CDN服务多源获取所述播放请求对应的第一流媒体数据,并将所述第一流媒体数据存入缓存。
4.根据权利要求3所述基于HTML5的流媒体处理方法,其特征在于,判断所述第一流媒体数据是否为MSE支持的Fragment MP4格式,包括:
每隔预设的时间从所述缓存中取出缓存流媒体数据,并判断所述缓存流媒体是否为MSE支持的Fragment MP4格式;其中,所述缓存流媒体数据包括所述第一流媒体数据。
5.根据权利要求4所述基于HTML5的流媒体处理方法,其特征在于,还包括:
当所述播放请求对应的流媒体数据全部播放完成时,释放所述缓存流媒体数据。
6.根据权利要求1所述基于HTML5的流媒体处理方法,其特征在于,将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据,包括:
将所述第二流媒体数据加入等待队列中,并将所述等待队列中的待播放流媒体数据顺序发送至所述MSE,以便所述MSE解码并播放所述待播放流媒体数据;其中,所述待播放流媒体数据包括所述第二流媒体数据。
7.一种基于HTML5的流媒体处理系统,其特征在于,包括:
获取模块,用于多源获取播放请求对应的第一流媒体数据,并判断所述第一流媒体数据是否为MSE支持的Fragment MP4格式;
转封装模块,用于当所述第一流媒体数据不为Fragment MP4格式时,将所述第一流媒体数据转封装为Fragment MP4格式的第二流媒体数据;
第一发送模块,用于将所述第二流媒体数据发送至MSE,以便所述MSE播放所述第二流媒体数据;
其中,所述转封装模块具体为利用Demuxer对所述第一流媒体数据进行解封装操作,并利用Remuxer将解封装得到的数据封装为Fragment MP4格式的所述第二流媒体数据的模块。
8.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述基于HTML5的流媒体处理方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述基于HTML5的流媒体处理方法的步骤。
CN201811178342.7A 2018-10-10 2018-10-10 一种基于html5的流媒体处理方法、系统及相关组件 Active CN109151570B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811178342.7A CN109151570B (zh) 2018-10-10 2018-10-10 一种基于html5的流媒体处理方法、系统及相关组件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811178342.7A CN109151570B (zh) 2018-10-10 2018-10-10 一种基于html5的流媒体处理方法、系统及相关组件

Publications (2)

Publication Number Publication Date
CN109151570A CN109151570A (zh) 2019-01-04
CN109151570B true CN109151570B (zh) 2022-04-01

Family

ID=64811249

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811178342.7A Active CN109151570B (zh) 2018-10-10 2018-10-10 一种基于html5的流媒体处理方法、系统及相关组件

Country Status (1)

Country Link
CN (1) CN109151570B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112714360B (zh) * 2019-10-25 2023-05-16 上海哔哩哔哩科技有限公司 媒体内容播放方法和系统
CN111356023B (zh) 2019-12-30 2021-12-24 杭州海康威视数字技术股份有限公司 播放方式确定方法及装置
CN115442659B (zh) * 2022-08-31 2024-02-23 四川长虹电器股份有限公司 Mse媒体源的播放方法及系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1953413A (zh) * 2006-09-13 2007-04-25 华中科技大学 一种流媒体直播系统中控制流的树形网络组织方法
CN102572606A (zh) * 2010-12-17 2012-07-11 微软公司 带有灵活的远程回放的流播的数字内容
CN102843614A (zh) * 2012-07-27 2012-12-26 优视科技有限公司 播放流媒体的方法、装置及系统
CN105898608A (zh) * 2015-12-31 2016-08-24 乐视移动智能信息技术(北京)有限公司 视频播放控制方法及浏览器
CN105959821A (zh) * 2016-05-30 2016-09-21 乐视控股(北京)有限公司 一种视频播放方法及设备
CN106993238A (zh) * 2017-04-14 2017-07-28 网宿科技股份有限公司 基于Html5的音视频播放方法及装置、音视频直播方法及系统
CN107592551A (zh) * 2016-07-08 2018-01-16 Sk科技有限公司 用于云流服务的方法和设备
CN107613029A (zh) * 2017-11-05 2018-01-19 深圳市青葡萄科技有限公司 一种适用于移动端或Web端的虚拟桌面远程方法及系统
CN108076364A (zh) * 2016-11-07 2018-05-25 韩华泰科株式会社 自适应媒体流传输设备和媒体服务设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9386341B2 (en) * 2013-05-09 2016-07-05 Espial Group Inc. Optimized HTML5 electronic programming guide application

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1953413A (zh) * 2006-09-13 2007-04-25 华中科技大学 一种流媒体直播系统中控制流的树形网络组织方法
CN102572606A (zh) * 2010-12-17 2012-07-11 微软公司 带有灵活的远程回放的流播的数字内容
CN102843614A (zh) * 2012-07-27 2012-12-26 优视科技有限公司 播放流媒体的方法、装置及系统
CN105898608A (zh) * 2015-12-31 2016-08-24 乐视移动智能信息技术(北京)有限公司 视频播放控制方法及浏览器
CN105959821A (zh) * 2016-05-30 2016-09-21 乐视控股(北京)有限公司 一种视频播放方法及设备
CN107592551A (zh) * 2016-07-08 2018-01-16 Sk科技有限公司 用于云流服务的方法和设备
CN108076364A (zh) * 2016-11-07 2018-05-25 韩华泰科株式会社 自适应媒体流传输设备和媒体服务设备
CN106993238A (zh) * 2017-04-14 2017-07-28 网宿科技股份有限公司 基于Html5的音视频播放方法及装置、音视频直播方法及系统
CN107613029A (zh) * 2017-11-05 2018-01-19 深圳市青葡萄科技有限公司 一种适用于移动端或Web端的虚拟桌面远程方法及系统

Also Published As

Publication number Publication date
CN109151570A (zh) 2019-01-04

Similar Documents

Publication Publication Date Title
CN108337528B (zh) 一种预览视频的方法及设备
US10567809B2 (en) Selective media playing method and apparatus according to live streaming and recorded streaming
CN108076364B (zh) 自适应媒体流传输设备和媒体服务设备
CN110324671B (zh) 网页视频播放方法及装置、电子设备及存储介质
CN109151570B (zh) 一种基于html5的流媒体处理方法、系统及相关组件
JP5919300B2 (ja) インターネットからメディア・レンダリング・デバイス上へのコンテンツ出力
JP5961760B2 (ja) Mpeg−2トランスポートストリームにおけるiso−bmffイベントボックスの搬送
CN111372128A (zh) 视频播放的方法、装置、计算机设备及可读存储介质
US9367125B2 (en) Terminal apparatus for shooting and distributing video data and video-data distribution method
WO2012155477A1 (zh) 数字电视节目共享装置及方法、机顶盒
US20130074131A1 (en) System and method for integrating and controlling web-based html players in a native context
US10791160B2 (en) Method and apparatus for cloud streaming service
CN109729386B (zh) 一种视频文件启播方法、系统及电子设备和存储介质
US20230224545A1 (en) Video playback method and apparatus, storage medium, and electronic device
WO2019128800A1 (zh) 一种内容服务的实现方法、装置及内容分发网络节点
US10419798B2 (en) Method and apparatus for just-in-time transcoding
JP7181308B2 (ja) メディア再生のローディング制御方法、装置及び記憶媒体
WO2015176648A1 (zh) 将智能终端上的数据传输至电视终端的方法、装置
JP5680188B2 (ja) キャッシュメモリ管理を最適化する方法、およびそれに対応する装置
CN114040232A (zh) 投屏系统、方法、电子设备和存储介质
CN112449250B (zh) 一种视频资源的下载方法、装置、设备和介质
CN104471947A (zh) 内容发送装置、内容再现装置、内容发布系统、内容发送装置的控制方法、内容再现装置的控制方法、数据结构、控制程序以及记录介质
CN111327951A (zh) 多媒体数据播放方法、装置、系统及存储介质
US10547878B2 (en) Hybrid transmission protocol
JP5627413B2 (ja) 放送受信装置及び放送受信システム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant