logo好方法网

一种音视频基本流同步注入的方法及显示设备


技术摘要:
本申请公开了一种音视频基本流同步注入的方法及显示设备。该方法包括:基本流同步注入模块,用于针对每一帧音视频基本流数据,在确定所述基本流同步注入模块所在播放器管道是第一次播放音视频基本流数据时,获取该播放器管道的管道起始时间,基于所述管道起始时间计算  全部
背景技术:
播放器是目前电视提供的基本功能之一,受CPU效率的限制,通常播放器中的解码 部分由硬件实现,而作为解码器的输入,即音视频的基本流,则通常由软件实现。解码之后 的音视频基本流数据需要同步输出,才能给使播放的音视频能够相互对应。通常输出模块 可以由硬件实现,也可以由软件实现。如果由软件实现,则需要将解码后的数据回传给上层 播放器,这无疑增加了一层内存拷贝,影响播放效率。 随着高帧率、高码率的片源越来越多,播放器更多的选用底层硬件同步方式来实 现解码后的音视频数据同步输出。这就要求上层播放器输入给解码器的音视频基本流也尽 量是同步的。尤其是流媒体中音视频本身不在同一个容器中,基本流很难实现同步,影响播 放效果。
技术实现要素:
有鉴于此,本申请提供一种音视频基本流同步注入的方法及显示设备,用以实现 音视频基本流同步注入到解码器,避免视频卡顿。 具体地,本申请是通过如下技术方案实现的: 第一方面,本申请提供一种显示设备,包括: 显示器; 网络模块,用于从服务器浏览和/或下载服务内容; 解码器,用于解码从服务内容中获取的基本流数据; 基本流同步注入模块,用于针对每一帧音视频基本流数据,在确定所述基本流同 步注入模块所在播放器管道是第一次播放音视频基本流数据时,获取该播放器管道的管道 起始时间,基于所述管道起始时间计算所述播放器管道自第一次播放音视频基本流数据起 的管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器。 第二方面,本申请提供一种显示设备,包括: 显示器; 网络模块,用于从服务器浏览和/或下载服务内容; 解码器,用于解码从服务内容中获取的基本流数据; 基本流同步注入模块,用于针对每一帧音视频基本流数据,在确定所述基本流同 步注入模块所在播放器管道第一次播放音视频基本流数据之后,当音视频基本流数据不满 7 CN 111601135 A 说 明 书 2/18 页 足缓冲条件时,暂停音视频基本流数据注入,暂停播放器管道的管道时钟,记录当前播放器 管道的管道暂停时间; 当音视频基本流数据满足缓冲条件再次起播时,基于所述管道暂停时间计算所述 播放器管道自第一次播放音视频基本流数据起的管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器。 第三方面,本申请提供一种显示设备,包括: 显示器; 网络模块,用于从服务器浏览和/或下载服务内容; 解码器,用于解码从服务内容中获取的基本流数据; 基本流同步注入模块,用于针对每一帧音视频基本流数据,在确定当前帧音视频 基本流数据为收到用户发送的跳转指令后进行跳转起播时,获取播放器管道时钟上当前的 管道跳转起始时间,基于所述管道跳转起始时间计算所述播放器管道自第一次播放音视频 基本流数据起的管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器。 第四方面,本申请提供一种显示设备,包括: 显示器; 网络模块,用于从服务器浏览和/或下载服务内容; 解码器,用于解码从服务内容中获取的基本流数据; 基本流同步注入模块,用于针对每一帧音视频基本流数据,在确定所述基本流同 步注入模块所在播放器管道是第一次播放音视频基本流数据时,计算当前播放器管道的管 道目标时间,所述管道目标时间为预设缓冲时间与播放器管道第一次播放第一帧视频基本 流数据的管道起始时间之和; 基于所述管道目标时间计算管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器;如果所述 解码时间戳小于所述管道运行时间且所述解码时间戳小于所述管道运行时间的时长在预 设阈值内,将所述音视频基本流数据注入解码器,所述预设阈值不小于所述预设缓冲时间。 第五方面,本申请提供一种显示设备,包括: 显示器; 网络模块,用于从服务器浏览和/或下载服务内容; 解码器,用于解码从服务内容中获取的基本流数据; 基本流同步注入模块,用于针对每一帧音视频基本流数据,在确定所述基本流同 步注入模块所在播放器管道第一次播放音视频基本流数据之后,当音视频基本流数据不满 足缓冲条件时,暂停音视频基本流数据注入,暂停播放器管道的管道时钟,记录当前播放器 8 CN 111601135 A 说 明 书 3/18 页 管道的管道暂停时间; 当音视频基本流数据满足缓冲条件再次起播时,计算当前播放器管道的管道目标 时间,所述管道目标时间为预设缓冲时间与管道暂停时间之和; 基于所述管道目标时间计算管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道运行 时间到达所述解码时间戳时,将所述音视频基本流数据注入解码器;如果所述解码时间戳 小于所述管道运行时间且所述解码时间戳小于所述管道运行时间的时长在预设阈值内,将 所述音视频基本流数据注入解码器,所述预设阈值不小于所述预设缓冲时间。 第六方面,本申请提供一种显示设备,包括: 显示器; 网络模块,用于从服务器浏览和/或下载服务内容; 解码器,用于解码从服务内容中获取的基本流数据;基本流同步注入模块,用于针 对每一帧音视频基本流数据,在确定当前帧音视频基本流数据为收到用户发送的跳转指令 后进行跳转起播时,计算当前播放器管道的管道目标时间,所述管道目标时间为预设缓冲 时间与管道跳转起始时间之和; 基于所述管道目标时间计算管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述音视频基本流数据注入解码器;如果所述解码时 间戳小于所述管道运行时间且所述解码时间戳小于所述管道运行时间的时长在预设阈值 内,将所述音视频基本流数据注入解码器,所述预设阈值不小于所述预设缓冲时间。 第七方面,本申请提供一种音视频基本流同步注入的方法,所述方法包括: 针对每一帧音视频基本流数据,在确定所述基本流同步注入模块所在播放器管道 是第一次播放音视频基本流数据时,获取该播放器管道的管道起始时间,基于所述管道起 始时间计算所述播放器管道自第一次播放音视频基本流数据起的管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器。 第八方面,本申请提供一种音视频基本流同步注入的方法,所述方法包括: 针对每一帧音视频基本流数据,在确定所述基本流同步注入模块所在播放器管道 第一次播放音视频基本流数据之后,当音视频基本流数据不满足缓冲条件时,暂停音视频 基本流数据注入,暂停播放器管道的管道时钟,记录当前播放器管道的管道暂停时间; 当音视频基本流数据满足缓冲条件再次起播时,基于所述管道暂停时间计算所述 播放器管道自第一次播放音视频基本流数据起的管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器。 第九方面,本申请提供一种音视频基本流同步注入的方法,所述方法包括: 9 CN 111601135 A 说 明 书 4/18 页 针对每一帧音视频基本流数据,在确定当前帧音视频基本流数据为收到用户发送 的跳转指令后进行跳转起播时,获取播放器管道时钟上当前的管道跳转起始时间,基于所 述管道跳转起始时间计算所述播放器管道自第一次播放音视频基本流数据起的管道运行 时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器。 第十方面,本申请提供一种音视频基本流同步注入的方法,所述方法包括: 针对每一帧音视频基本流数据,在确定所述基本流同步注入模块所在播放器管道 是第一次播放音视频基本流数据时,计算当前播放器管道的管道目标时间,所述管道目标 时间为预设缓冲时间与播放器管道第一次播放第一帧视频基本流数据的管道起始时间之 和; 基于所述管道目标时间计算管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述当前帧音视频基本流数据注入解码器;如果所述 解码时间戳小于所述管道运行时间且所述解码时间戳小于所述管道运行时间的时长在预 设阈值内,将所述音视频基本流数据注入解码器,所述预设阈值不小于所述预设缓冲时间。 第十一方面,本申请提供一种音视频基本流同步注入的方法,所述方法包括: 针对每一帧音视频基本流数据,在确定所述基本流同步注入模块所在播放器管道 第一次播放音视频基本流数据之后,当音视频基本流数据不满足缓冲条件时,暂停音视频 基本流数据注入,暂停播放器管道的管道时钟,记录当前播放器管道的管道暂停时间; 当音视频基本流数据满足缓冲条件再次起播时,计算当前播放器管道的管道目标 时间,所述管道目标时间为预设缓冲时间与管道暂停时间之和; 基于所述管道目标时间计算管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道运行 时间到达所述解码时间戳时,将所述音视频基本流数据注入解码器;如果所述解码时间戳 小于所述管道运行时间且所述解码时间戳小于所述管道运行时间的时长在预设阈值内,将 所述音视频基本流数据注入解码器,所述预设阈值不小于所述预设缓冲时间。 第十二方面,本申请提供一种音视频基本流同步注入的方法,所述方法包括: 针对每一帧音视频基本流数据,在确定当前帧音视频基本流数据为收到用户发送 的跳转指令后进行跳转起播时,计算当前播放器管道的管道目标时间,所述管道目标时间 为预设缓冲时间与管道跳转起始时间之和; 基于所述管道目标时间计算管道运行时间; 获取当前帧音视频基本流数据中的解码时间戳,将音视频基本流数据的解码时间 戳与所述管道运行时间进行比较,如果所述解码时间戳大于所述管道运行时间,等待管道 运行时间到达所述解码时间戳时,将所述音视频基本流数据注入解码器;如果所述解码时 间戳小于所述管道运行时间且所述解码时间戳小于所述管道运行时间的时长在预设阈值 10 CN 111601135 A 说 明 书 5/18 页 内,将所述音视频基本流数据注入解码器,所述预设阈值不小于所述预设缓冲时间。 在上述实施例中,显示设备可以在基于播放器管道时钟进行基本流同步的基础 上,避免一路基本流故障时影响另一路注入。并且本申请可以针对不同的播放情形对管道 运行时间进行动态设置,使播放器在各个场景都可以实现同步注入的目的。此外,本申请通 过设置起播的缓冲时间,使起播时可以快速注入充足的基本流数据,以达到快速起播的目 的,提升用户观看体验。 附图说明 图1A中示例性示出了显示设备200与控制100之间操作场景的示意图; 图1B中示例性示出了图1A中控制装置100的配置框图; 图1C中示例性示出了图1A中显示设备200的配置框图; 图1D中示例性示出了显示设备200存储器中操作系统的架构配置框图。 图2A中示例性示出了第一种音视频基本流同步注入的方法的处理流程图; 图2B中示例性示出了第一种时钟示意图; 图3A中示例性示出了第二种音视频基本流同步注入的方法的处理流程图; 图3B中示例性示出了第二种时钟示意图; 图4A中示例性示出了第三种音视频基本流同步注入的方法的处理流程图; 图4B中示例性示出了第三种时钟示意图; 图5A中示例性示出了第四种音视频基本流同步注入的方法的处理流程图; 图5B中示例性示出了第四种时钟示意图; 图6中示例性示出了第五种音视频基本流同步注入的方法的处理流程图。
分享到:
收藏