本发明专利技术公开了一种音视频连续播放无缝切换系统和方法。其技术方案是:一种音视频连续播放无缝切换系统,包括多路径管理模块、数据缓冲模块、数据输出模块和至少两个文件存储服务器,所述文件存储服务器、多路径管理模块、数据缓冲模块和数据输出模块依次连接。本发明专利技术的另一技术方案是:一种音视频连续播放无缝切换方法,包括如下步骤:步骤1:系统初始化操作;步骤2:填充操作。本发明专利技术的有益效果是:达到系统连续播出的目的,以此避免了人为操作带来的繁琐性和不确定性,简化了系统结构,降低了实施成本。
【技术实现步骤摘要】
本专利技术属于音视频处理
,尤其涉及一种音视频的安全播放技术。
技术介绍
广播台或电视台的播出系统对音视频稳定播出的要求非常高,在播出系统正常工作的时候不允许出现由于网络中断或者文件错误等情况引发的播出中断的故障,如果没有一定的保障措施来及时处理系统播出时的异常,势必影响广播电视系统的播出质量。因此, 一种有效的播出容错机制对广播台或电视台的播出系统来说显得尤为重要。为了解决这个问题,目前采取的主要措施是严格控制播出节目文件的质量以及加强播出系统的网络管理,尽可能地降低系统播出异常的几率。万一在播出过程中发生网络或文件异常而引起系统中断的情况,则只能通过主持人或者值机人员手动切换进行紧急干预,这给系统的稳定性和可操作性带来了极大的挑战。目前还有一种解决方案是通过主备播出站的思路来完成的,即同时有两套或者多套播出系统在同时同步的工作,一旦一台因为文件导致播出失败,则切换到另一台继续工作,这样确实能在一定程度上解决因文件错误导致的播出事故,但需要建立更为复杂的播出网络,大大增加了网络成本。因而,急切需要一种方法能够有效的自动的完成连续播出的工作。
技术实现思路
本专利技术的目的是为了提高广播电视系统连续播出的安全性和稳定性,提出了。为了实现上述目的,本专利技术提供了一种技术方案一种音视频连续播放无缝切换系统,其特征在于,包括多路径管理模块、数据缓冲模块、数据输出模块和至少两个文件存储服务器,所述文件存储服务器、多路径管理模块、数据缓冲模块和数据输出模块依次连接;所述多路径管理模块的输入端与多个文件存储服务器同时连接,输出端与数据缓冲模块连接,所述多路径管理模块包括一个数据通道和一组存储器,其中数据通道用于将音视频文件中的文件数据流从文件存储服务器传输到数据缓冲模块,其中存储器用于记录同一个音视频文件的文件名,以及该文件在不同服务器上所处的路径、当前被使用的路径L 以及当前音视频文件被读取位置P,所述多路径管理模块用于在数据缓冲模块的请求下,从当前被使用的路径L中的音视频文件中读取文件数据流并通过数据通道传送到数据缓冲模块以填满数据缓冲模块,同时记录当前音视频文件被读取到的位置P ;所述数据缓冲模块的输入端与多路径切换模块连接,输出端和数据输出模块连接,所述数据缓冲模块用于暂时存放文件数据流,并在数据输出模块的请求下将文件数据流通过音频输出模块输出到系统外部进行下一级处理;所述数据输出模块的输入端与数据缓冲模块连接,输出端与系统外部连接,用于请求从数据缓冲模块中获得文件数据流,以输出到系统外部进行下一级处理。所述多个服务器可以分别设置在不同的物理服务器上,也可以通过磁盘阵列的方式设置在同一台物理服务器上。为了实现上述目的,本专利技术提供了另一种技术方案本专利技术的技术方案是一种音视频连续播放无缝切换方法,包括如下步骤步骤1 系统初始化操作对同一个音视频文件在不同服务器上所处的路径、当前被使用的路径L的进行记录和保存,进行缓冲容量R、填充触发点K的设定;步骤2 填充操作当数据缓冲模块中的剩余的文件数据流少于填充触发点K时, 数据缓冲模块将请求多路径管理模块填充文件数据流,此时多路径管理模块将从当前被使用的路径L中对应的音视频文件中读取文件数据流并填充至数据缓冲模块直至将数据缓冲模块填满,并记录当前音视频文件被读取位置P ;步骤3 判断步骤2中的填充过程是否成功,若填充成功则进入步骤4,若填充不成功则进入步骤6 ;步骤4 根据外部系统的请求,通过数据输出模块将文件数据流从数据缓冲模块中输出到外部系统;步骤5 判断数据缓冲模块中剩余的文件数据流的大小是否小于填充触发点K,如果小于,则转到步骤2进行填充操作,如果不小于,则转到步骤4继续从数据缓冲模块中输出文件数据流;步骤6 判断当前被使用的路径L对应的服务器上的音视频文件是否被读到结尾, 若到达结尾,则进入步骤7,若未到达结尾,则进入步骤8 ;步骤7 发出播出成功消息并结束播出;步骤8 判断在所有的文件服务器中对应的同一个音视频文件是否全部出错,若全部出错则进入步骤9,若未全部出错则进入步骤10 ;步骤9 发出播出失败消息并结束播出;步骤10 路径切换进行当前被使用的路径L的切换操作,将备选文件路径中的下一个路径作为新的当前被使用的路径L‘,并从当前音视频文件被读取位置ρ所对应的位置开始读取新的音视频文件的文件数据流,并转到步骤2。本专利技术的有益效果是本专利技术针对音视频文件在播放过程中遇到网络故障或文件读取错误等异常情况时,进行无缝切换操作,达到系统连续播出的目的,以此避免了人为操作带来的繁琐性和不确定性,简化了系统结构,降低了实施成本。附图说明图1是本专利技术的系统结构图。图2是本专利技术的方法流程图。具体实施例方式下面结合附图和具体的实施例对本专利技术做进一步的说明。如图1所示,一种音视频连续播放无缝切换系统,包括多路径管理模块、数据缓冲模块、数据输出模块和至少两个文件存储服务器,所述文件存储服务器、多路径管理模块、 数据缓冲模块和数据输出模块依次连接;所述多路径管理模块的输入端与多个文件存储服务器同时连接,输出端与数据缓冲模块连接,所述多路径管理模块包括一个数据通道和一组存储器,其中数据通道用于将音视频文件中的文件数据流从文件存储服务器传输到数据缓冲模块,其中存储器用于记录同一个音视频文件的文件名,以及该文件在不同服务器上所处的路径、当前被使用的路径 L以及当前音视频文件被读取位置ρ (每一条路径对应一个文件服务器,除当前被使用的路径L之外的路径被称为备选路径),所述多路径管理模块用于在数据缓冲模块的请求下,从当前被使用的路径L中的音视频文件中读取文件数据流并通过数据通道传送到数据缓冲模块以填满数据缓冲模块,同时记录当前音视频文件被读取到的位置P (该位置也被称为断点);上述多路径管理模块作为音视频文件读取的一种即时容错机制,当网络发生故障或文件出错时,能快速准确地从备选文件路径上继续读取音视频文件,从而实现连续播出。所述数据缓冲模块的输入端与多路径切换模块连接,输出端和数据输出模块连接,所述数据缓冲模块用于暂时存放文件数据流,并在数据输出模块的请求下将文件数据流通过音频输出模块输出到系统外部进行下一级处理;上述数据缓冲模块在音视频文件播放进行前与播放过程中,根据既定的缓冲容量调整与填充策略,将从文件服务器中的某个音视频文件中读取的一定长度的文件数据流动态的写入数据缓冲模块;数据缓冲模块采用循环队列的形式组织内存空间,音视频文件播出过程中从循环队列依次读取,完成读取后的内存空间又回至循环队列的末尾等待下次填充数据,如此循环利用内存空间;缓冲容量调整策略对缓冲容量大小进行动态调整在音视频文件没有进行播放之前,将数据缓冲模块的缓冲容量设为R=I. 5M(约48秒s48音频文件数据长度),以使得缓冲容量能够尽快被填满,从而满足数据输出模块的请求,尽快实现播放;在音视频文件开播后,缓冲容量可以被调整得尽可能大,以保证其能够在出现音视频文件错误的情况下依然能够有较长时间的文件数据流储备供数据输出模块输出使用, 此时缓冲容量通常可设为所播音视频文件的大小,但缓冲容量的上限一般最大不超过R = 10M,否则,容易占用过多的机器内存而导致机器效率降低;上述的音视频文件播出开始后,将数据缓冲本文档来自技高网...
【技术保护点】
1.一种音视频连续播放无缝切换系统,其特征在于,包括多路径管理模块、数据缓冲模块、数据输出模块和至少两个文件存储服务器,所述文件存储服务器、多路径管理模块、数据缓冲模块和数据输出模块依次连接;所述多路径管理模块的输入端与多个文件存储服务器同时连接,输出端与数据缓冲模块连接,所述多路径管理模块包括一个数据通道和一组存储器,其中数据通道用于将音视频文件中的文件数据流从文件存储服务器传输到数据缓冲模块,其中存储器用于记录同一个音视频文件的文件名,以及该文件在不同服务器上所处的路径、端与系统外部连接,用于请求从数据缓冲模块中获得文件数据流,以输出到系统外部进行下一级处理。述数据缓冲模块的输入端与多路径切换模块连接,输出端和数据输出模块连接,所述数据缓冲模块用于暂时存放文件数据流,并在数据输出模块的请求下将文件数据流通过音频输出模块输出到系统外部进行下一级处理。所述数据输出模块的输入端与数据缓冲模块连接,输出当前被使用的路径L以及当前音视频文件被读取位置p,所述多路径管理模块用于在数据缓冲模块的请求下,从当前被使用的路径L中的音视频文件中读取文件数据流并通过数据通道传送到数据缓冲模块以填满数据缓冲模块,同时记录当前音视频文件被读取到的位置p;所...
【技术特征摘要】
【专利技术属性】
技术研发人员:郭奕,白新跃,唐继勇,杨峰,何建,李波,
申请(专利权)人:电子科技大学,
类型:发明
国别省市:90
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。