More and more open source projects are available today around or supporting MPEG-DASH and as it is always good, and handy, to have some of these tools ready during development, we collected the following list of publicly available and open source MPEG-DASH tools:
- libdash MPEG-DASH Reference Library
libdash is the official reference software of the ISO/IEC MPEG-DASH standard and is an open-source library that provides an object orient (OO) interface to the MPEG-DASH standard. It comes together with a C++/Qt-based sample player as well as comprehensive online documentation.
- VLC Player
The VLC Player was the first media player to implement the MPEG-DASH support (that was in 2011). Since then, it has been updated to today’s version of the standard.
- Online MPD Conformance Validator
The Online MPEG-DASH MPD validator is based on the draft international standard of the conformance and reference software for DASH. It works for links, uploads and copy+paste of DASH MPDs. The latest version of the MPD validator supports the recent additions to the MPEG-DASH standard ISO/IEC 23009-1:2012 (ISO/IEC) and ISO/IEC 23009-1:2012/COR.1 (ISO/IEC).
- ExoPlayer: MPEG-DASH & HLS Player for Android
ExoPlayer is an application level media player for Android which is mainly provided by Google, but also has a big developer community around it. It provides an alternative to Android’s MediaPlayer API for playing audio and video both locally and over the Internet. ExoPlayer supports features currently not supported by Android’s MediaPlayer API (as of KitKat), including DASH and SmoothStreaming adaptive playbacks, persistent caching and custom renderers. Unlike the MediaPlayer API, ExoPlayer is easy to customize and extend and can be updated through Play Store application updates.
- MP4Box & GPAC Tools
This multimedia packager is available as part of GPAC – a much larger suite of multimedia tools. It supports the packaging of MPEG-DASH content as well as the MPD generation (we recently posted a tutorial on the MPEG-DASH content generation with x264 and MP4Box). Further GPAC tools for DASH include MP4Client – a media player, e.g., supporting also HEVC playback – as well as DASHcast for live DASH streaming.
- DASH @ ITEC Tools
- Bento4 MP4 & MPEG-DASH Library
Bento4 is a C++ class library and tools which support MPEG-DASH packaging and MPD generation. In particular, this tool supports the MPEG-CENC compliant packaging/encryption of DRM-protected MPEG-DASH content very well. One can also test this content on our DRM Test Area.
- DASH Live Edge Calculator
This is a very helpful tool to calculate the live edge for MPEG-DASH segment template based streams. This is needed, as live streams often have configuration problems at the beginning, which is sometimes hard to analyze without a tool like the LiveEdgeCalculator. It can be used to analyze segment template based MPEG-DASH MPDs.
We hope that this list provides you with a good overview of the most important available open source tools and libraries around MPEG-DASH and helps you in your development and testing phase of your DASH projects. Please feel free to send us additional MPEG-DASH-related open source tools. We are happy to extend the list and let it grow! Please also let us know if one of the sites is no longer online, so that we can remove it from the list.