音视频系统技术方案

技术编号:33050988 阅读:10 留言:0更新日期:2022-04-15 09:36
本公开的实施例提供一种音视频系统。该音视频系统用于执行多个音视频处理功能。其中,该多个音视频处理功能中的至少两个音视频处理功能共享一个或多个功能模块。被共享的功能模块中设置有至少一个标志。共享同一个功能模块的音视频处理功能通过该功能模块中的所述至少一个标志来控制该功能模块执行功能特定操作。操作。操作。

【技术实现步骤摘要】
音视频系统


[0001]本公开的实施例涉及计算机
,具体地,涉及音视频系统。

技术介绍

[0002]在音视频系统中,如果需要对视频文件或音频文件进行处理,一般会用现有的音视频处理工具,例如FFmpeg等,进行处理。FFmpeg是一套可以用来记录、转换音频文件和视频文件,并能将其转化为流的开源计算机程序。它提供了录制、转换以及流化音视频文件的完整解决方案。它包含了先进的音频/视频编解码库。FFmpeg工具包括非常多的命令。使用FFmpeg工具的时候往往需要用到大量的参数,因此可能需要消耗大量人力查询FFmpeg的使用手册以进行相关处理。如果同时处理多个音视频任务可能需要付出更多的时间成本。

技术实现思路

[0003]本文中描述的实施例提供了一种音视频系统。该音视频系统用于执行多个音视频处理功能。其中,多个音视频处理功能中的至少两个音视频处理功能共享一个或多个功能模块。被共享的功能模块中设置有至少一个标志。共享同一个功能模块的音视频处理功能通过该功能模块中的至少一个标志来控制该功能模块执行功能特定操作。
[0004]在本公开的一些实施例中,至少两个功能模块中设置有同一个标志,用于同时控制至少两个功能模块执行对应的功能特定操作。
[0005]在本公开的一些实施例中,至少一个功能模块的输入包括多个参数。多个参数被存储成键值对(key

value)的形式。多个参数中的一个参数被设置为键值对中的键,多个参数中的其它参数被设置为键值对中的值。
[0006]在本公开的一些实施例中,当键值对中的一个值为空时,键值对中的该值被设置为默认值。
[0007]在本公开的一些实施例中,至少一个功能模块根据键值对中的键来判断键值对中的值的正确性。
[0008]在本公开的一些实施例中,多个音视频处理功能包括以下中的多个:视频转图片功能、添加视频封面功能、视频缩放功能、音视频转封装功能、音视频转码功能、视频裁剪功能、视频压缩功能、视频取帧功能、音视频混音功能、视频倒放功能、音视频抽流功能、获取音视频详细信息功能、视频添加水印功能、和视频拼接功能。
[0009]在本公开的一些实施例中,音视频系统包括:对外接口层、音频解码模块、视频解码模块、音视频编码模块、和工具处理及转码模块。其中,对外接口层被配置为创建音频解码模块的对象、视频解码模块的对象、音视频编码模块的对象,向音频解码模块、视频解码模块、音视频编码模块、和工具处理及转码模块分配存储空间以及初始化用于音频解码模块、视频解码模块、音视频编码模块、和工具处理及转码模块的参数。音频解码模块被配置为对音频文件执行解封装、转封装、解码、和重采样操作。视频解码模块被配置为对视频文件执行解封装、解码、分流、逆序解码、和封面解码操作。音视频编码模块被配置为执行音频
编码、视频编码、图片编码、封面处理、音频混音、音频转码、和音视频同步操作。工具处理及转码模块被配置为执行视频转码和文件格式处理操作。
[0010]在本公开的一些实施例中,音频解码模块和视频解码模块通过帧缓存队列与音视频编码模块相关联。
[0011]在本公开的一些实施例中,音频解码模块、视频解码模块、音视频编码模块、和工具处理及转码模块均采用多线程来执行相应的操作。
[0012]在本公开的一些实施例中,音频解码模块、视频解码模块和音视频编码模块中设置有回调函数,回调函数用于接收当前任务的处理进度以及成功事件和失败事件。
附图说明
[0013]为了更清楚地说明本公开的实施例的技术方案,下面将对实施例的附图进行简要说明,应当知道,以下描述的附图仅仅涉及本公开的一些实施例,而非对本公开的限制,其中:
[0014]图1是两个音视频处理功能共享一个功能模块的示意图;
[0015]图2是两个音视频处理功能共享两个功能模块的示意图;以及
[0016]图3是根据本公开的实施例的音视频系统的示例性框图。
[0017]附图中的元素是示意性的,没有按比例绘制。
具体实施方式
[0018]为了使本公开的实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本公开的实施例的技术方案进行清楚、完整的描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域技术人员在无需创造性劳动的前提下所获得的所有其它实施例,也都属于本公开保护的范围。
[0019]除非另外定义,否则在此使用的所有术语(包括技术和科学术语)具有与本公开主题所属领域的技术人员所通常理解的相同含义。进一步将理解的是,诸如在通常使用的词典中定义的那些的术语应解释为具有与说明书上下文和相关技术中它们的含义一致的含义,并且将不以理想化或过于正式的形式来解释,除非在此另外明确定义。如在此所使用的,将两个或更多部分“连接”或“耦接”到一起的陈述应指这些部分直接结合到一起或通过一个或多个中间部件结合。另外,诸如“第一”和“第二”的术语仅用于将一个部件(或部件的一部分)与另一个部件(或部件的另一部分)区分开。
[0020]随着多媒体技术的发展,往往期望在一个音视频系统中包括多个音视频处理功能。使用现有的开源工具来搭建音视频系统通常是比较方便的。但是,在开源工具中每个音视频处理功能可能都是一个独立的模块。当多个独立的模块被集成到一个音视频系统中时,可能会占用较大的系统资源。而这些独立的模块中的部分功能可能是重复的,造成了系统资源的浪费。
[0021]因此,本公开的实施例提出一种用于执行多个音视频处理功能的音视频系统,其能够合理地减少系统资源的占用。
[0022]在本公开的一些实施例中,音视频处理功能可包括例如:视频转图片功能、添加视频封面功能、视频缩放功能、音视频转封装功能、音视频转码功能、视频裁剪功能、视频压缩
功能、视频取帧功能、音视频混音功能、视频倒放功能、音视频抽流功能、获取音视频详细信息功能、视频添加水印功能、和视频拼接功能。
[0023]上述音视频处理功能中的一些可能需要执行相同的功能操作。例如,音视频混音功能和音视频转码功能都需要进行音频解码、音频编码、视频解码和视频编码。因此,本公开的实施例提出让需要执行相同的功能操作的音视频处理功能共享一个或多个功能模块。例如,音视频混音功能和音视频转码功能可共享音频解码模块、音频编码模块、视频解码模块和视频编码模块。被共享的功能模块中设置有至少一个标志。该标志例如是参数或者变量。共享同一个功能模块的音视频处理功能通过该功能模块中的该至少一个标志来控制该功能模块执行功能特定操作。例如,音频编码模块中的一个标志可控制音频编码模块执行针对音视频混音功能的特定操作和针对音视频转码功能的特定操作中的一者。
[0024]下面结合附图来描述共享同一个功能模块的音视频处理功能如何通过该功能模块中的该至少一个标志来控制该功能模块执行功能特定操作。图1示出了两个音视频处理功能共享一个功能模块的示意图。第一音视频处理功能110包括功能模块111...

【技术保护点】

【技术特征摘要】
1.一种音视频系统,用于执行多个音视频处理功能,其中,所述多个音视频处理功能中的至少两个音视频处理功能共享一个或多个功能模块,被共享的功能模块中设置有至少一个标志,共享同一个功能模块的音视频处理功能通过该功能模块中的所述至少一个标志来控制该功能模块执行功能特定操作。2.根据权利要求1所述的音视频系统,其中,至少两个功能模块中设置有同一个标志,用于同时控制所述至少两个功能模块执行对应的功能特定操作。3.根据权利要求1所述的音视频系统,其中,至少一个功能模块的输入包括多个参数,所述多个参数被存储成键值对的形式,所述多个参数中的一个参数被设置为所述键值对中的键,所述多个参数中的其它参数被设置为所述键值对中的值。4.根据权利要求3所述的音视频系统,其中,当所述键值对中的一个值为空时,所述键值对中的该值被设置为默认值。5.根据权利要求3所述的音视频系统,其中,所述至少一个功能模块根据所述键值对中的所述键来判断所述键值对中的所述值的正确性。6.根据权利要求1所述的音视频系统,其中,所述多个音视频处理功能包括以下中的多个:视频转图片功能、添加视频封面功能、视频缩放功能、音视频转封装功能、音视频转码功能、视频裁剪功能、视频压缩功能、视频取帧功能、音视频混音功能、视频倒放功能、音视频抽流功能、获取音视频详细信息功能、视频添加水印功能、和视频拼接功能。7.根据权利要求1所述的音视频系统,其中...

【专利技术属性】
技术研发人员:李林超
申请(专利权)人:稿定厦门科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1