本发明涉及多媒体播放,尤其涉及一种mp4文件的播放方法及装置。
背景技术:
1、目前智能视频监控系统已经被广泛使用,在维护治安和财产安全等方面作用巨大,其中视频监控数据的录像存储与回放是核心功能和用途,mp4是一种广泛用于视频和音频传输的格式,其具有压缩效率高、传输稳定的优点,所以录像存储通常把从设备侧接收的音视频数据存储为mp4格式。
2、mp4文件使用一种名为“box”的层次结构来组织和存储多媒体数据,mp4中存在各种类型的“box”,不同类型的“box”具有不同的功能和结构,包含不同的数据信息,其中moovbox是mp4文件中顶级的“box”,它提供整个mp4文件的结构、轨道数据和样本信息,因此它的存在和正确解析对于播放和处理mp4文件至关重要,为了提高mp4文件的可拓展性和处理效率,通常将moov box设置在mp4文件的结尾,然而将moov box设置在mp4文件的结尾的方式,使得播放器在读取mp4文件时,需要解析整个mp4文件才能找到moov box,这将导致播放器启动时间过长、响应过慢,影响播放质量如出现播放错误、播放延迟以及播放不流畅等问题,影响用户体验。
技术实现思路
1、本发明所要解决的技术问题是:本发明提供一种mp4文件的播放方法及装置,提高播放器的响应速度和播放质量,优化用户体验。
2、为了解决上述技术问题,本发明采用的技术方案为:
3、第一方面,本发明提供一种mp4文件的播放方法,包括:
4、接收播放器的播放请求,获取所述播放请求的绝对路径;
5、根据所述绝对路径获取对应的mp4文件,基于所述播放请求对所述mp4文件进行流化处理,得到包括ftyp box数据和moov box数据的box数据,将所述ftyp box数据和所述moov box数据返回至播放器,所述ftyp box数据用于获取所述mp4文件的解析器,所述moovbox数据用于获取所述mp4文件的媒体信息;
6、接收播放器根据所述ftyp box数据和moov box数据所返回的字节音视频位置信息,根据所述字节音视频位置信息获取对应字节音视频数据返回至所述播放器,实现mp4文件的播放。
7、本发明的有益效果在于:通过播放器的播放请求的绝对路径获取到对应的mp4文件,从而对mp4文件进行流化处理,能快速得到包括typ box数据和moov box数据的box数据返回到播放器,即不需要播放器自己对mp4文件进行解析寻找moov box数据,避免播放器启动时间过长,从而根据播放器返回的字节音视频位置信息能快速获取对应的字节音视频数据,实现mp4文件的播放,提高播放器的响应速度的同时提高播放质量,优化用户体验。
8、可选地,所述接收播放器的播放请求,获取所述播放请求的绝对路径包括:
9、接收播放器的播放请求,获取所述播放请求的url地址,对所述url地址进行解析,得到实时生成的md5加密串和文件后缀;
10、根据所述md5加密串和所述文件后缀对所述播放请求进行合法校验,当合法校验通过时,获取所述播放请求的绝对路径,否则,发送播放失败至播放器。
11、根据上述描述可知,对播放器的播放请求会进行合法校验,只有合法校验通过的播放请求才能获取到绝对路径进行后续处理,而合法校验不通过的则会发送播放失败到播放器,从而确保mp4文件的合法使用,提供良好的安全性和安全控制,优化用户体验。
12、可选地,所述根据所述md5加密串和文件后缀对所述播放请求进行合法校验包括:
13、判断所述文件后缀是否为mp4格式,若是,则判断所述md5加密串是否存在于加密串缓冲区,若存在,则合法校验通过,否则,合法校验不通过。
14、根据上述描述可知,对播放请求进行了文件后缀和md5加密串的双重校验,提高合法校验的灵活性与可靠性。
15、可选地,所述根据所述绝对路径获取对应的mp4文件包括:
16、根据所述绝对路径判断所述mp4文件是否存在,若存在,则获取对应的mp4文件,否则,发送获取文件失败至播放器。
17、根据上述描述可知,当绝对路径对应的mp4文件不存在时,会发送获取文件失败到播放器,便于用户了解失败的原因,优化用户体验。
18、可选地,所述接收播放器根据所述ftyp box数据和moov box数据所返回的字节音视频位置信息包括:
19、所述播放器根据所述ftyp box数据获取所述mp4文件的类型,根据所述类型获取对应的解析器,基于所述解析器对所述moov box数据进行解析,得到所述mp4文件的媒体信息,其中所述媒体信息包括mp4文件中每一字节音视频位置信息。
20、根据上述描述可知,播放器根据ftyp box数据能知道mp4文件的类型从而获取到与之对应的解析器,通过解析器对moov box数据进行解析,得到包括mp4文件中每一字节音视频位置信息的媒体信息,从而知道播放器发送的播放请求对应的字节音视频位置信息,能快速根据字节音视频位置信息获取对应的字节音视频数据,提高响应速度和播放质量。
21、第二方面,本发明提供一种mp4文件的播放装置,包括:
22、点播回放模块,用于接收播放器的播放请求,获取所述播放请求的绝对路径;接收播放器根据ftyp box数据和moov box数据所返回的字节音视频位置信息,根据所述字节音视频位置信息获取对应字节音视频数据返回至所述播放器,实现mp4文件的播放;
23、mp4文件流化模块,用于根据所述绝对路径获取对应的mp4文件,基于所述播放请求对所述mp4文件进行流化处理,得到包括ftyp box数据和moov box数据的box数据,将所述ftyp box数据和所述moov box数据返回至播放器,所述ftyp box数据用于获取所述mp4文件的类型,所述moov box数据用于获取所述mp4文件的媒体信息。
24、本发明的有益效果在于:通过播放器的播放请求的绝对路径获取到对应的mp4文件,从而对mp4文件进行流化处理,能快速得到包括typ box数据和moov box数据的box数据返回到播放器,即不需要播放器自己对mp4文件进行解析寻找moov box数据,避免播放器启动时间过长,从而根据播放器返回的字节音视频位置信息能快速获取对应的字节音视频数据,实现mp4文件的播放,提高播放器的响应速度的同时提高播放质量,优化用户体验。
25、所述点播回放模块包括:
26、合法校验模块,用于接收播放器的播放请求,获取所述播放请求的url地址,对所述url地址进行解析,得到实时生成的md5加密串和文件后缀;根据所述md5加密串和所述文件后缀对所述播放请求进行合法校验,当合法校验通过时,获取所述播放请求的绝对路径,否则,发送播放失败至播放器。
27、根据上述描述可知,对播放器的播放请求会进行合法校验,只有合法校验通过的播放请求才能获取到绝对路径进行后续处理,而合法校验不通过的则会发送播放失败到播放器,从而确保mp4文件的合法使用,提供良好的安全性和安全控制,优化用户体验。
28、所述合法校验模块具体用于:
29、判断所述文件后缀是否为mp4格式,若是,则判断所述md5加密串是否存在于加密串缓冲区,若存在,则合法校验通过,否则,合法校验不通过。
30、根据上述描述可知,对播放请求进行了文件后缀和md5加密串的双重校验,提高合法校验的灵活性与可靠性。
31、所述mp4文件流化模块包括:
32、文件获取模块,用于根据所述绝对路径判断所述mp4文件是否存在,若存在,则获取对应的mp4文件,否则,发送获取文件失败至播放器。
33、根据上述描述可知,当绝对路径对应的mp4文件不存在时,会发送获取文件失败到播放器,便于用户了解失败的原因,优化用户体验。
34、所述播放器,用于根据所述ftyp box数据获取所述mp4文件的类型,根据所述类型获取对应的解析器,基于所述解析器对所述moov box数据进行解析,得到所述mp4文件的媒体信息,其中所述媒体信息包括mp4文件中每一字节音视频位置信息。
35、根据上述描述可知,播放器根据ftyp box数据能知道mp4文件的类型从而获取到与之对应的解析器,通过解析器对moov box数据进行解析,得到包括mp4文件中每一字节音视频位置信息的媒体信息,从而知道播放器发送的播放请求对应的字节音视频位置信息,能快速根据字节音视频位置信息获取对应的字节音视频数据,提高响应速度和播放质量。