一种自适应缓存方法及支持该方法的移动设备 【技术领域】
本发明涉及移动设备系统领域, 特别涉及一种自适应缓存方法及支持该方法的移动设备。 背景技术 随着无线通信技术的发展, 以及 2.5G 通信技术的全面商业化, 3G 通信技术开始逐 渐步入人们的生活, 移动设备的功能也随之越来越丰富。 移动设备如手机, 从最开始单一的 语音通话和短信功能已发展成为一个连接互联网的具有多媒体功能的终端移动设备。目 前, 随着多媒体移动通信业务的不断增多, 在线音乐、 在线视频、 视频聊天等传统互联网上 的功能也开始逐步向基于移动互联网的移动设备发展。此外, 目前许多手机具备 Wi-Fi 功 能, 因此通过连接传统互联网的无线路由器, 手机同样可以像 PC 一样登陆互联网。
在线音乐、 在线视频等功能一般是通过流媒体技术在网络中传输, 可以达到边下 载边使用的目的, 流媒体技术在移动互联网中的广泛应用实现了媒体数据的在线使用, 例
如, 人们可以通过手机上网在线收听音乐。
在流媒体技术中, 移动设备需要对服务器提供的多媒体数据进行缓存才能正常播 放数据。 对于移动设备如手机而言, 由于网络覆盖面的不同和信号强弱的变化, 且移动计算 环境具有移动性、 频繁断接性、 带宽多样性等特点, 因此移动设备可以随时在不同的无线网 络 ( 如 2.5G、 2.75G、 3G、 和 Wi-Fi 等 ) 之间进行切换, 这也使得移动设备需要利用缓存技术 来管理和访问移动计算环境下的数据。
2.5G、 3G 网络等蜂窝技术有速度、 流量和价格等方面的限制 ; Wi-Fi 网络虽然对速 度、 流量和价格等方面限制相对较小, 但是 Wi-Fi 网络存在传输距离短, 以及安全性低等缺 陷。目前用户利用移动设备使用在线服务时对速度、 流量和价格等方面的满意度较低。 发明内容 针对上述问题, 本发明的目的是提供一种根据不同网络连接类型采用不同缓存方 式, 从而可以提高用户利用移动设备使用在线服务时对速度、 流量和价格等方面满意度的 自适应缓存方法及支持该方法的移动设备。
为达到上述目的, 本发明采用如下技术方案 :
一种自适应缓存方法, 包括以下步骤 :
步骤 1 : 流媒体服务器通过蜂窝网络或者通过 Wi-Fi 网络向流媒体数据接收解析 模块发送流媒体数据 ;
步骤 2 : 所述流媒体数据接收解析模块接收流媒体服务器发送的流媒体数据, 并 且检测网络连接类型是蜂窝网络连接还是 Wi-Fi 网络连接 ;
步骤 3 : 所述流媒体数据接收解析模块将接收的流媒体数据发送至缓存管理模 块, 并且向有效期管理模块发送网络连接类型检测结果 ;
步骤 4 : 所述有效期管理模块根据网络连接类型检测结果通知缓存管理模块执行
相应的缓存操作 : 如果网络连接类型为蜂窝网络连接, 所述缓存管理模块对流媒体数据采 用无限时缓存, 然后转入步骤 6 ;
步骤 5 : 在步骤 4 中, 如果网络连接类型为 Wi-Fi 网络连接, 所述缓存管理模块对 流媒体数据采用动态缓存, 然后转入步骤 6 ;
步骤 6 : 所述缓存管理模块将步骤 4 或者步骤 5 中执行相应缓存操作后的流媒体 数据发送至流媒体处理模块 ;
步骤 7 : 所述流媒体处理模块接收所述缓存管理模块发送的流媒体数据并进行解 码和播放 ;
步骤 8 : GUI 模块对所述流媒体处理模块播放的流媒体数据进行界面显示。
进一步地, 在步骤 2 中, 所述流媒体数据接收解析模块首先判断是否接收到流媒 体数据 : 如果接收到流媒体数据, 则转至步骤 3 ; 如果没有接收到流媒体数据, 则所述流媒 体数据接收解析模块继续监听。
进一步地, 所述步骤 4 具体为 : 所述有效期管理模块在在线列表中加入有效期标 志位, 并通知所述缓存管理模块网络连接类型 : 如果网络连接类型为蜂窝网络连接时, 所述 缓存管理模块判断缓存容量是否超限, 超限则清理超限流媒体数据 ; 未超限则转入步骤 6。
进一步地, 所述步骤 5 具体为 : 如果网络连接类型为 Wi-Fi 网络连接时, 所述缓存 管理模块递归预加载流媒体数据, 根据有效期标志位判断流媒体数据是否过期, 过期则清 理过期流媒体数据 ; 未过期则判断流媒体数据是否导致缓存容量超限, 超限则清理超限流 媒体数据, 未超限则转入步骤 6。
进一步地, 如果网络连接类型为蜂窝网络连接时, 则将未超限流媒体数据发送至 所述流媒体处理模块 ; 如果网络连接类型为 Wi-Fi 网络连接时, 则将未过期且未超限的流 媒体数据发送至所述流媒体处理模块。
进一步地, 所述步骤 7 还包括 : 所述流媒体处理模块调用所述缓存管理模块判断 流媒体数据是否过期, 过期则清理过期流媒体数据 ; 未过期则所述流媒体处理模块解码和 播放未过期流媒体数据。
进一步地, 所述步骤 8 具体为 :
步骤 8a : 如果播放的流媒体数据没有接受完成, 则继续进行播放 ; 如果播放的流 媒体数据接受完成, 则关闭播放窗口, 转至步骤 1 ;
步骤 8b : 重复步骤 1 ~步骤 8, 持续在客户端和流媒体服务器之间传输流媒体数 据。
一种支持自适应缓存方法的移动设备, 包括流媒体数据接收解析模块、 有效期管 理模块、 缓存管理模块、 流媒体处理模块和 GUI 模块 ; 所述流媒体数据接收解析模块分别通 过有效期管理模块连接和直接连接所述缓存管理模块的输入端, 所述缓存管理模块的输出 端通过所述流媒体处理模块连接所述 GUI 模块 ; 其中 :
所述流媒体数据接收解析模块用于接收流媒体服务器通过蜂窝网络或者通过 Wi-Fi 网络发送的流媒体数据, 并检测网络连接类型是蜂窝网络连接还是 Wi-Fi 网络连接 ;
所述流媒体数据接收解析模块用于将接收的流媒体数据发送至所述缓存管理模 块, 并且向有效期管理模块发送网络连接类型检测结果 ;
所述有效期管理模块用于接收所述流媒体数据接收解析模块发送的网络连接类型检测结果, 并根据网络连接类型检测结果通知缓存管理模块执行相应的缓存操作 ;
所述缓存管理模块用于接收所述流媒体数据接收解析模块发送的流媒体数据和 用于根据有效期管理模块的通知执行相应的缓存操作, 并将执行缓存操作后的流媒体数据 发送至所述流媒体处理模块 ;
所述流媒体处理模块用于将接收到的流媒体数据进行解码和播放 ;
所述 GUI 模块用于将播放的流媒体数据进行界面显示。
进一步地, 所述有效期管理模块在在线列表中加入有效期标志位。
进一步地, 所述缓存管理模块具体用于 :
如果网络连接类型为蜂窝网络连接时, 所述缓存管理模块判断缓存容量是否超 限, 超限则清理超限流媒体数据 ; 未超限则将未超限流媒体数据发送至所述流媒体处理模 块;
如果网络连接类型为 Wi-Fi 网络连接时, 所述缓存管理模块递归预加载流媒体数 据, 根据有效期标志位判断流媒体数据是否过期, 过期则清理过期流媒体数据 ; 未过期则判 断流媒体数据是否导致缓存容量超限, 超限则清理超限流媒体数据, 未超限则将未超限的 流媒体数据发送至所述流媒体处理模块。 本发明由于采用以上技术方案, 其具有以下优点 : 本发明的流媒体服务器通过蜂 窝网络或者通过 Wi-Fi 网络连接流媒体数据接收解析模块, 可以达到移动设备在和不同无 线网络连接时可以采用不同的适应缓存方法的目的, 满足了客户端在不同位置时对移动设 备的使用要求, 因此本发明提高了用户利用移动设备使用在线服务时对速度、 流量和价格 等方面的满意度, 本发明可以广泛应用于移动设备中。
附图说明
图 1 是本发明的自适应缓存方法的一个实施例的流程图 ; 图 2 是本发明的自适应缓存方法的另一个实施例的流程图 ; 图 3 是本发明的支持自适应缓存方法的移动设备的结构示意图。具体实施方式
为了使本发明的目的、 技术方案及优点更加清楚明白, 下面结合附图及实施例, 对 本发明进行进一步详细说明。 应当理解, 此处所描述的具体实施例仅用以解释本发明, 并不 用于限定本发明。
如图 1 所示, 本发明一实施例提供的一种自适应缓存方法, 包括以下步骤 :
步骤 1 : 流媒体服务器通过蜂窝网络或者通过 Wi-Fi 网络向流媒体数据接收解析 模块发送流媒体数据 ;
步骤 2 : 流媒体数据接收解析模块接收流媒体服务器通发送的流媒体数据, 并且 检测网络连接类型是蜂窝网络连接还是 Wi-Fi 网络连接 ;
步骤 3 : 流媒体数据接收解析模块将接收的流媒体数据发送至缓存管理模块, 并 且向有效期管理模块发送网络连接类型检测结果 ;
步骤 4 : 有效期管理模块根据网络连接类型检测结果通知缓存管理模块执行相应 的缓存操作 : 如果网络连接类型为蜂窝网络连接, 缓存管理模块对流媒体数据采用无限时缓存, 然后转入步骤 6 ;
步骤 5 : 在步骤 4 中, 如果网络连接类型为 Wi-Fi 网络连接, 缓存管理模块对流媒 体数据采用动态缓存, 然后转入步骤 6 ;
步骤 6 : 缓存管理模块将步骤 4 或者步骤 5 中执行相应缓存操作后的流媒体数据 发送至流媒体处理模块 ;
步骤 7 : 流媒体处理模块接收缓存管理模块发送的流媒体数据并进行解码和播 放;
步骤 8 : GUI 模块对流媒体处理模块播放的流媒体数据进行界面显示。
GUI(Graphical User Interface, 称为是图形用户界面, 又称图形用户接口 ) 是指 采用图形方式显示的计算机操作用户界面, 与早期计算机使用的命令行界面相比, 图形界 面对于用户来说在视觉上更易于接受。
本发明的自适应缓存方法采用流媒体数据接收解析模块通过蜂窝网络或者通过 Wi-Fi 网络传输的流媒体数据, 且检测网络连接类型 ; 流媒体数据接收解析模块又将流媒 体数据发送至缓存管理模块, 并且向有效期管理模块发送网络连接类型检测结果 ; 有效期 管理模块根据网络连接类型检测结果通知缓存管理模块执行相应的缓存操作 ; 缓存管理模 块将执行相应缓存操作后的流媒体数据发送至流媒体处理模块, 由流媒体处理模块和 GUI 模块进行解码播放和界面显示。所以本发明可以根据不同网络连接类型选择不同缓存方 法, 从而提高了用户利用移动设备使用在线服务时对速度、 流量和价格等方面的满意度。 如图 2 所示, 作为一种优选方案, 在步骤 2 中, 流媒体数据接收解析模块首先判断 是否接收到流媒体数据 : 如果接收到流媒体数据, 则转至步骤 3 ; 如果没有接收到流媒体数 据, 则流媒体数据接收解析模块继续监听。
作为一种优选方案, 步骤 4 具体为 : 有效期管理模块在在线列表中加入有效期标 志位, 并通知缓存管理模块网络连接类型 : 如果网络连接类型为蜂窝网络连接时, 缓存管理 模块判断缓存容量是否超限, 超限则清理超限流媒体数据 ; 未超限则将未超限流媒体数据 发送至流媒体处理模块。
步骤 5 具体为 : 如果网络连接类型为 Wi-Fi 网络连接时, 缓存管理模块递归预加载 流媒体数据, 根据有效期标志位判断流媒体数据是否过期, 过期则清理过期流媒体数据 ; 未 过期则判断流媒体数据是否导致缓存容量超限, 超限则清理超限流媒体数据, 未超限则将 未过期且未超限的流媒体数据发送至流媒体处理模块。
缓存清理条件 : 根据有效期标志位判断流媒体数据是否过期, 过期则清理过期流 媒体数据 ; 如果缓存容量超限, 则清理超限流媒体数据。缓存清理从高到低的优先级是 : 过 期流媒体数据 ; 即将到期流媒体数据 ; 访问频率。
本发明的自适应缓存方法针对不同网络采用不同缓存方法 : 如果网络连接类型为 蜂窝网络连接时, 清理超限流媒体数据 ; 如果网络连接类型为 Wi-Fi 网络连接时, 清理过期 流媒体数据和超限流媒体数据。 并将执行相应缓存操作后的流媒体数据发送至流媒体处理 模块进行解码播放。因此本发明可以满足用户在使用不同网络连接的使用需求。
作为一种优选方案, 步骤 7 还包括 : 流媒体处理模块调用缓存管理模块判断流媒 体数据是否过期, 过期则清理过期流媒体数据 ; 未过期则流媒体处理模块解码和播放未过 期流媒体数据。 本发明对经过缓存管理模块执行相应缓存操作后的流媒体数据再次进行是
否过期的判定, 提高了流媒体处理模块解码播放流媒体数据的准确性和快速性。
作为一种优选方案, 所述步骤 8 具体为 :
步骤 8a : 如果播放的流媒体数据没有接受完成, 则继续进行播放 ; 如果播放的流 媒体数据接受完成, 则关闭播放窗口, 转至步骤 1 ;
步骤 8b : 重复步骤 1 ~步骤 8, 持续在客户端和流媒体服务器之间传输流媒体数 据。
图 3 为本发明一实施例的一种支持自适应缓存方法的移动设备的结构示意图, 包 括流媒体数据接收解析模块、 有效期管理模块、 缓存管理模块、 流媒体处理模块和 GUI 模 块; 流媒体数据接收解析模块分别通过有效期管理模块连接和直接连接缓存管理模块的输 入端, 缓存管理模块的输出端通过流媒体处理模块连接 GUI 模块 ; 其中 :
流媒体数据接收解析模块用于接收流媒体服务器通过蜂窝网络或者通过 Wi-Fi 网络发送的流媒体数据, 并检测网络连接类型是蜂窝网络连接还是 Wi-Fi 网络连接 ; 蜂窝 网络包含有诸如 2G 网络, 2.5G 网络, 以及 3G 网络等等。
流媒体数据接收解析模块用于将接收的流媒体数据发送至缓存管理模块, 并且向 有效期管理模块发送网络连接类型检测结果 ; 有效期管理模块用于接收流媒体数据接收解析模块发送的网络连接类型检测结 果, 并根据网络连接类型检测结果通知缓存管理模块执行相应的缓存操作 ;
缓存管理模块用于接收流媒体数据接收解析模块发送的流媒体数据和用于根据 有效期管理模块的通知执行相应的缓存操作, 并将执行缓存操作后的流媒体数据发送至流 媒体处理模块 ;
流媒体处理模块用于将接收到的流媒体数据进行解码和播放 ;
GUI 模块用于将播放的流媒体数据进行界面显示。
作为一种优选方案, 缓存管理模块具体用于 :
如果网络连接类型为蜂窝网络连接时, 缓存管理模块判断缓存容量是否超限, 超 限则清理超限流媒体数据 ; 未超限则将未超限流媒体数据发送至流媒体处理模块 ;
如果网络连接类型为 Wi-Fi 网络连接时, 缓存管理模块递归预加载流媒体数据, 根据有效期标志位判断流媒体数据是否过期, 过期则清理过期流媒体数据 ; 未过期则判断 流媒体数据是否导致缓存容量超限, 超限则清理超限流媒体数据, 未超限则将未超限的流 媒体数据发送至流媒体处理模块。
以上所述仅为本发明的较佳实施例, 并非用来限定本发明的实施范围 ; 如果不脱 离本发明的精神和范围, 对本发明进行修改或者等同替换, 均应涵盖在本发明权利要求的 保护范围当中。