论文部分内容阅读
随着数字出版行业的飞速发展,音视频出版方向呈现出音视频文件编码标准多样化、数据海量化等显著特点。面对海量多样的数据,如何快速高效地转换成统一的编码格式,成为数字出版机构面临的很大的难题。本文针对这一需求和现状,基于Spring+SpringMVC+MyBatis的架构开发,同时结合开源FFMPEG格式转换工具,提出了一种B/S结构的分布式在线音视频格式转换平台。文中基于Java语言,重点剖析了平台架构设计过程中所设计的关键技术和策略,设计开发了高效的音视频格式转换系统,分别由“核心调度服务器”,“转换服务器”,“数据库”等组成。本论文以服务器集群方式解决大批量音视频格式转换,研究了如何有效地调配集群转换服务器所涉及的若干关键技术;为了保障不同用户的操作权限,研究了平台的权限控制系统;为了提高文件在客户端和服务器之间的传输效率,综合比较和研究了多种文件传输方式的优劣性;为了提高音视频文件格式转换的准确性和高效性,对不同的格式转换工具进行了深入研究。本文研究的主要创新点有:(1)在音视频处理方面,通过对音视频文件的处理,解决了单个文件过大时转换效率低下的问题。首先对音视频文件进行文件类型分类,然后根据取模算法将单个文件过大的音频或视频文件进行分割,分割后的文件经过分别转换后再进行合并,最终成为转换后的音视频文件。(2)在转换服务器调度方面,结合一致性Hash算法,有效解决了转换服务器集群时,转换任务的有效分配问题。在多转换服务器集群时,利用一致性Hash算法,将转换任务平均分配到每个服务器上,使得每个转换服务器都能够得到有效利用。同时,服务器数量发生变化时,不需要重新进行Hash计算,有效提高了系统的稳定性和可拓展性。为了验证本文提出的批量音视频格式转换平台是高效可用的,本文设计了测试方案与传统的转换方式进行了比较,测试结果表明,与普通的音视频转换方案相比,采用批量音视频格式转换平台有效提高了音视频文件的转换效率、降低了工作复杂度。实践证明,本文所讨论的关键技术,可应用于批量大文件处理领域,具有一定的实际应用价值。