DASH(Dynamic Adaptive Streaming over HTTP)即自适应流媒体传输,典型的系统框图如下
简单概括来说,就是在服务器端提前存好同一内容的不同码率、不同分辨率的多个分片以及相应的描述文件MPD,客户端在播放时即可以根据自身性能以及网络环境选择最适宜的版本。更多详细的内容可以参见MPEG组织出台的标准,标准号ISO/IEC 23009-1。
在这篇文章中主要说一下如何生成服务器端的媒体内容和相应的MPD文件。通过上面的框图可以看到,主要的流程即输入-编码-分片-组织MPD。下面将首先介绍一下目前网络上有的一些能在服务器端完成相应全部或部分工作的开源工程,然后介绍一个本人开发的用于完成这一任务的开源项目以及一个整合了此项目的java web示例。
网络上已有的开源项目
1、MPD验证器 MPEG-DASH MPD Validator
这是一个在线的MPD验证器,