调整多媒体解码信息缓冲区的方法和装置制造方法及图纸

技术编号:15899437 阅读:57 留言:0更新日期:2017-07-28 21:53
本发明专利技术提供了一种调整多媒体解码信息缓冲区的方法和装置,该方法包括当监测到多媒体信息解码完成时,基于根据解码数据获取到的多媒体参数,判断是否需要重新分配缓冲区,以缓存所述解码数据;当判断需要重新分配缓冲区,基于所述多媒体参数确定重新分配的缓冲区;将所述解码数据缓存到重新分配的缓冲区中。应用本发明专利技术的技术方案,可以实现基于待播放多媒体信息的多媒体参数对预置的缓冲区域进行动态调整的目的,在满足顺利播放待播放多媒体信息,避免出现播放待播放多媒体信息时发生卡顿或错误的情况的同时,还能减少对多余系统内存的占用,从而避免影响播放设备的系统运行性能和其他应用的运行,提高用户的使用体验。

【技术实现步骤摘要】
调整多媒体解码信息缓冲区的方法和装置
本专利技术涉及信息
,具体而言,本专利技术涉及一种调整多媒体解码信息缓冲区的方法和一种调整多媒体解码信息缓冲区的装置。
技术介绍
随着信息技术的发展,多媒体技术也得到越来越多人的关注,由于多媒体技术是通过终端对音频和视频的信号进行采集、编码、解码和输出,从而向用户播放音频和视频的技术;故将多媒体技术应用到了可视电话、多媒体监控、视频会议、多媒体教学等领域,为人们的生活带来了许多便利。通常对于具有播放多媒体信息功能的嵌入式设备而言,多媒体信息的解码过程是需要解码设备预先对多媒体信息进行解码,并将解码后的多媒体信息存储到预置的输出缓存区域,再通过该嵌入式设备将解码后的多媒体信息进行播放,来完成多媒体信息的传输,如,传输音频和视频。在多媒体信息进行传输时,如果多媒体信息解码后的数据较大,例如,分辨率为1280×720的解码视频数据,则需要较大容量的输出缓冲区域来存储解码后的数据,如果多媒体信息解码后的数据较小,例如,分辨率为640×480的解码视频数据,则需要较小容量的输出缓冲区域来存储解码后的数据。但是在现有技术中,用于存储多媒体信息解码后数据的缓冲区域已经预置完成,并且为了保证嵌入式设备能够流畅播放各种大小的多媒体信息,以避免播放多媒体信息时发生卡顿、甚至是错误的情况发生,一般会将缓冲区域预置到很大容量,这样虽然可以尽可能地避免播放多媒体信息时错误的发生,但是当多媒体信息解码后的数据很小时,就会无谓占用大量的系统内存空间,影响了嵌入式设备的系统运行性能。
技术实现思路
为克服上述技术问题或者至少部分地解决上述技术问题,特提出以下技术方案:本专利技术的一个实施例提出了一种调整多媒体解码信息缓冲区的方法,包括:当监测到多媒体信息解码完成时,基于根据解码数据获取到的多媒体参数,判断是否需要重新分配缓冲区,以缓存解码数据;当判断需要重新分配缓冲区,基于多媒体参数确定重新分配的缓冲区;将解码数据缓存到重新分配的缓冲区中。优选地,多媒体信息解码的步骤之前,还包括:基于缓冲区分配参数,初始化分配缓冲区的初始容量;其中,基于多媒体参数,判断是否需要重新分配缓冲区的步骤,包括:基于多媒体参数与初始化分配缓冲区的初始容量的比较结果,判断是否需要重新分配缓冲区。优选地,当比较结果满足以下任一项时,判断需要重新分配缓冲区:比较结果为初始化分配的缓冲区的初始容量对应的缓冲区个数小于多媒体参数基于预定运算方式通过计算得到的计算结果;或比较结果为初始化分配的缓冲区的初始容量对应的缓冲区个数大于多媒体参数基于预定运算方式通过计算得到的计算结果,且两者的差值大于第一阈值。其中,多媒体参数包括多媒体信息的参考帧个数、多媒体信息是否存在B帧的指示参数值、预置相关参数。优选地,当基于多媒体参数确定重新分配的缓冲区的步骤,包括:基于多媒体信息的参考帧个数、多媒体信息是否存在B帧的指示参数值和预置相关参数,确定重新分配缓冲区的个数;基于重新分配缓冲区的个数,通知并调用开放多媒体加速层OpenMax的释放内存函数,释放初始化分配的缓冲区,并调用开放多媒体加速层OpenMax的分配内存函数,重新分配缓冲区。优选地,该方法还包括:基于重新分配缓冲区的数量,更新缓冲区分配参数。本专利技术的另一个实施例提出了一种调整多媒体解码信息缓冲区的装置,包括:监测模块,用于当监测到多媒体信息解码完成时,基于根据解码数据获取到的多媒体参数,判断是否需要重新分配缓冲区,以缓存解码数据;分配模块,用于当判断需要重新分配缓冲区,基于多媒体参数确定重新分配的缓冲区;缓存模块,用于将解码数据缓存到重新分配的缓冲区中。优选地,该装置还包括:初始化模块,用于基于缓冲区分配参数,初始化分配缓冲区的初始容量;其中,监测模块,用于基于多媒体参数与初始化分配缓冲区的初始容量的比较结果,判断是否需要重新分配缓冲区。优选地,当比较结果满足以下任一项时,判断需要重新分配缓冲区:比较结果为初始化分配的缓冲区的初始容量对应的缓冲区个数小于多媒体参数基于预定运算方式通过计算得到的计算结果;或比较结果为初始化分配的缓冲区的初始容量对应的缓冲区个数大于多媒体参数基于预定运算方式通过计算得到的计算结果,且两者的差值大于第一阈值。其中,多媒体参数包括多媒体信息的参考帧个数、多媒体信息是否存在B帧的指示参数值、预置相关参数。优选地,缓冲模块包括:确定单元,用于基于多媒体信息的参考帧个数、多媒体信息是否存在B帧的指示参数值和预置相关参数,确定重新分配缓冲区的个数;重新分配单元,用于基于重新分配缓冲区的个数,通知并调用开放多媒体加速层OpenMax的释放内存函数,释放初始化分配的缓冲区,并调用开放多媒体加速层OpenMax的分配内存函数,重新分配缓冲区。优选地,该装置还包括:更新模块,用于基于重新分配缓冲区的数量,更新缓冲区分配参数。本专利技术的技术方案中,当监测到多媒体信息解码完成时,基于根据解码数据获取到的多媒体参数,判断是否需要重新分配缓冲区,以缓存解码数据;当判断需要重新分配缓冲区,基于多媒体参数确定重新分配的缓冲区;将解码数据缓存到重新分配的缓冲区中;从而实现了基于待播放多媒体信息的多媒体参数对预置的缓冲区域进行动态调整的目的,在满足顺利播放待播放多媒体信息,避免出现播放待播放多媒体信息时发生卡顿或错误的情况的同时,还能减少对多余系统内存的占用,从而避免影响播放设备的系统运行性能和其他应用的运行,提高用户的使用体验。本专利技术附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为本专利技术中的一个实施例的调整多媒体解码信息缓冲区的方法的流程示意图;图2为本专利技术中的一个优选实施例的硬件厂商解码库与开放多媒体加速层的交互信息示意图;图3为本专利技术中的另一个实施例的调整多媒体解码信息缓冲区的装置的结构框架示意图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本专利技术,而不能解释为对本专利技术的限制。本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本专利技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。本
技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本专利技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像本文档来自技高网
...
调整多媒体解码信息缓冲区的方法和装置

【技术保护点】
一种调整多媒体解码信息缓冲区的方法,其特征在于,包括:当监测到多媒体信息解码完成时,基于根据解码数据获取到的多媒体参数,判断是否需要重新分配缓冲区,以缓存所述解码数据;当判断需要重新分配缓冲区,基于所述多媒体参数确定重新分配的缓冲区;将所述解码数据缓存到重新分配的缓冲区中。

【技术特征摘要】
1.一种调整多媒体解码信息缓冲区的方法,其特征在于,包括:当监测到多媒体信息解码完成时,基于根据解码数据获取到的多媒体参数,判断是否需要重新分配缓冲区,以缓存所述解码数据;当判断需要重新分配缓冲区,基于所述多媒体参数确定重新分配的缓冲区;将所述解码数据缓存到重新分配的缓冲区中。2.根据权利要求1所述的方法,其中,所述多媒体信息解码的步骤之前,还包括:基于缓冲区分配参数,初始化分配缓冲区的初始容量;其中,基于所述多媒体参数,判断是否需要重新分配缓冲区的步骤,包括:基于所述多媒体参数与所述初始化分配缓冲区的初始容量的比较结果,判断是否需要重新分配缓冲区。3.根据权利要求2所述的方法,其中,当所述比较结果满足以下任一项时,判断需要重新分配缓冲区:所述比较结果为所述初始化分配的缓冲区的初始容量对应的缓冲区个数小于所述多媒体参数基于预定运算方式通过计算得到的计算结果;或者,所述比较结果为所述初始化分配的缓冲区的初始容量对应的缓冲区个数大于所述多媒体参数基于预定运算方式通过计算得到的计算结果,且两者的差值大于第一阈值。4.根据权利要求1-3任一项所述的方法,其中,所述多媒体参数包括多媒体信息的参考帧个数、多媒体信息是否存在B帧的指示参数值、预置相关参数。5.根据权利要求4所述的方法,其中,当基于所述多媒体参数确定重新分配的缓冲区的步骤,包括:基于所述多媒体信息的参考帧个数、所述多媒体信息是否存在B帧的指示参数值和预置相关参数,确定重新分配缓冲区的个数;基于所述重新分配缓冲区的个数,...

【专利技术属性】
技术研发人员:杨光
申请(专利权)人:北京元心科技有限公司
类型:发明
国别省市:北京,11

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

1