System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及音视频,并且更具体地,涉及一种音视频处理方法、音视频处理装置、服务器和浏览器。
技术介绍
1、直播技术越来越成熟,直播场景中音视频数据的传输需要经过获取原始流、服务器对音视频数据的编码和封装、以及浏览器对音视频数据的解码和播放等过程,数据传输性能直接影响用户体验。为此,如何提高直播场景中音视频数据的传输性能,成为需要解决的问题。
技术实现思路
1、本申请提供一种音视频处理方法、音视频处理装置、服务器和浏览器,能够提高直播场景中音视频数据的传输性能。
2、第一方面,提供一种音视频处理方法,应用于面向浏览器的直播场景,所述方法由服务器执行,所述方法包括:获取音视频数据的原始流;对所述原始流的头部信息进行嗅探,以获取所述原始流对应的rfc 6381标准中的字符编码串,所述字符编码串用于标识所述音视频数据的编码格式;基于所述字符编码串,对封装为特定的流媒体格式的所述音视频数据进行二次封装,得到具有二次封装结构的所述音视频数据;向所述浏览器发送具有所述二次封装结构的所述音视频数据,所述浏览器用于采用webcodec编解码标准对接收到的所述音视频数据进行解码,并基于解码数据播放所述音视频。
3、本申请的音视频处理方法应用于面向浏览器的直播场景,且该浏览器被配置为采用webcodec编解码标准对音视频数据进行解码,其中,webcodec是在web浏览器中实现视频编解码,其允许发开人员直接对视频进行编码和解码,而无需使用插件或其他额外的软件,webcodec具有对
4、在一种可能的实现方式中,所述二次封装结构包括头部信息和载荷信息,所述头部信息包括分别用于表示音频、视频和配置信息的字符,所述载荷信息包括所述流媒体格式的音频数据、所述流媒体格式的视频数据、以及所述流媒体格式的音视频数据的配置信息。
5、在该实现方式中,二次封装结构包括头部信息和载荷信息,其中,头部信息包括分别用于表示音频、视频和配置信息的字符,载荷信息包括具有一次封装后的流媒体格式的音频数据、该流媒体格式的视频数据、以及该流媒体格式的音视频数据的配置信息,这样,便能够将具有该流媒体格式的音视频数据及其相关联的配置信息进行二次封装并发送给浏览器,以供浏览器的webcodec解码器识别和解码。
6、例如,所述流媒体格式的音视频数据的配置信息可以包括以下信息:视频编码的长度、视频字符编码串、视频宽度、视频高度、音频编码的长度、音频字符编码串、音频采样率、以及音频通道数。
7、在一种可能的实现方式中,所述流媒体格式的音频数据和视频数据的头部为无符号8位字符型,所述流媒体格式的视频数据中包括布尔型数据,所述布尔型数据用于区分所述视频数据的关键帧。
8、在该实现方式中,为了进行区分,可以在音频数据和视频数据的头部设置无符号8位字符型,并且视频数据多出一个布尔型数据以区分视频数据的关键帧。
9、在一种可能的实现方式中,所述流媒体格式被自定义为支持所述音视频数据的编码格式。
10、在该实现方式中,对于不同编码格式,可能存在对该流媒体格式支持不好的问题,为此,可以允许自定义该流媒体格式,以更好地适应音视频数据的该编码格式。
11、第二方面,提供一种音视频处理方法,应用于面向浏览器的直播场景,所述方法由浏览器执行,所述方法包括:接收音视频数据,其中,所述音视频数据是对封装为特定的流媒体格式的音视频数据进行二次封装后得到的具有二次封装结构的音视频数据,且包括其原始流对应的rfc 6381标准中的字符编码串;基于webcodec编解码标准,对所述音视频数据进行解码,得到解码数据;基于所述解码数据,播放所述音视频。
12、本申请的音视频处理方法应用于面向浏览器的直播场景,且该浏览器被配置为采用webcodec编解码标准对音视频数据进行解码,其中,webcodec是在web浏览器中实现视频编解码,其允许发开人员直接对视频进行编码和解码,而无需使用插件或其他额外的软件,webcodec具有对多种流媒体格式的音视频数据进行处理的能力,因此能够兼容不同流媒体格式的优势,例如时延短、部署简单等,从而提升了兼容性和用户体验。为了适应webcodec的能力,本申请通过对封装为特定流媒体格式的音视频数据进行二次封装,使得具有该流媒体格式的音视频数据能够更好地被webcodec识别和处理。
13、在一种可能的实现方式中,所述二次封装结构包括头部信息和载荷信息,所述头部信息包括分别用于表示音频、视频和配置信息的字符,所述载荷信息包括所述流媒体格式的音频数据、所述流媒体格式的视频数据、以及所述流媒体格式的音视频数据的配置信息。
14、在该实现方式中,二次封装结构包括头部信息和载荷信息,其中,头部信息包括分别用于表示音频、视频和配置信息的字符,载荷信息包括具有一次封装后的流媒体格式的音频数据、该流媒体格式的视频数据、以及该流媒体格式的音视频数据的配置信息,这样,便能够将具有该流媒体格式的音视频数据及其相关联的配置信息进行二次封装并发送给浏览器,以供浏览器的webcodec解码器识别和解码。
15、例如,所述流媒体格式的音视频数据的配置信息包括以下信息:视频编码的长度、视频字符编码串、视频宽度、视频高度、音频编码的长度、音频字符编码串、音频采样率、以及音频通道数。
16、在一种可能的实现方式中,所述基于所述解码数据,播放所述音视频,包括:基于audioworklet获取所述音视频数据中音频数据的解码数据,并基于所述音频数据的解码数据播放音频。
17、在该实现方式中,浏览器可以采用audioworklet获取音频数据的解码数据,由于audioworklet能够提供自定义音频处理脚本,这些脚本在单独的线程中执行,因此能够提供非常低延迟的音频处理,减少了断音、音频播放延迟、以及音视频不同步等问题,提升了用户体验。
18、第三方面,提供一种音视频处理装置,应用于面向浏览器的直播场景,所述装置包括获取模块和处理模块,所述获取模块用于获取音视频数据的原始流,所述处理模块用于:对所述获取模块获取的所述原始流的头部信息进行嗅探,以获取所述原始流对应的rfc6381标准中的字符编码串,所述字符编码串用于标识所述音视频数据的编码格式;基于所述字符编码串,对封装为特定的流媒体格式的所述音视频数据进行二次封装,得到具有二次封装结构的所述音视频数据;以及,向所述浏览器发送具有所述二次封装结构的所述音视频数据,所述浏览器用于采用webcodec编解码标准对接收到的所述音视频数据进行解码,并基于解码数据播放所述音视频。
19、在一种可本文档来自技高网...
【技术保护点】
1.一种音视频处理方法,其特征在于,应用于面向浏览器的直播场景,所述方法由服务器执行,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述二次封装结构包括头部信息和载荷信息,所述头部信息包括分别用于表示音频、视频和配置信息的字符,所述载荷信息包括所述流媒体格式的音频数据、所述流媒体格式的视频数据、以及所述流媒体格式的音视频数据的配置信息。
3.根据权利要求2所述的方法,其特征在于,所述流媒体格式的音视频数据的配置信息包括以下信息:
4.根据权利要求2或3所述的方法,其特征在于,所述流媒体格式的音频数据和视频数据的头部为无符号8位字符型,所述流媒体格式的视频数据中包括布尔型数据,所述布尔型数据用于区分所述视频数据的关键帧。
5.根据权利要求2或3所述的方法,其特征在于,所述流媒体格式被自定义为支持所述音视频数据的编码格式。
6.一种音视频处理方法,其特征在于,应用于面向浏览器的直播场景,所述方法由浏览器执行,所述方法包括:
7.根据权利要求6所述的方法,其特征在于,所述二次封装结构包括头部信息和载荷信
8.根据权利要求7所述的方法,其特征在于,所述流媒体格式的音视频数据的配置信息包括以下信息:
9.根据权利要求6至8中任一项所述的方法,其特征在于,所述基于所述解码数据,播放所述音视频,包括:
10.一种音视频处理装置,其特征在于,应用于面向浏览器的直播场景,所述装置包括:
11.一种音视频处理装置,其特征在于,应用于面向浏览器的直播场景,所述装置包括:
12.一种服务器,其特征在于,包括处理器和存储器,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现根据权利要求1至5中任一项所述的音视频处理方法。
13.一种浏览器,其特征在于,包括处理器和存储器,所述存储器用于存储指令,所述处理器用于执行所述指令,以实现根据权利要求6至9中任一项所述的音视频处理方法。
...【技术特征摘要】
1.一种音视频处理方法,其特征在于,应用于面向浏览器的直播场景,所述方法由服务器执行,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述二次封装结构包括头部信息和载荷信息,所述头部信息包括分别用于表示音频、视频和配置信息的字符,所述载荷信息包括所述流媒体格式的音频数据、所述流媒体格式的视频数据、以及所述流媒体格式的音视频数据的配置信息。
3.根据权利要求2所述的方法,其特征在于,所述流媒体格式的音视频数据的配置信息包括以下信息:
4.根据权利要求2或3所述的方法,其特征在于,所述流媒体格式的音频数据和视频数据的头部为无符号8位字符型,所述流媒体格式的视频数据中包括布尔型数据,所述布尔型数据用于区分所述视频数据的关键帧。
5.根据权利要求2或3所述的方法,其特征在于,所述流媒体格式被自定义为支持所述音视频数据的编码格式。
6.一种音视频处理方法,其特征在于,应用于面向浏览器的直播场景,所述方法由浏览器执行,所述方法包括:
7.根据权利要求6所述的方法,其特征在于...
【专利技术属性】
技术研发人员:石奇峰,褚虓,
申请(专利权)人:京东方科技集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。