Search code examples
video-streamingvideo-encodinghttp-live-streamingmpeg-dash

How to pack in HLS and MPEG-DASH on the fly?


I want to create vod streaming. I want to stream video through hls and mpeg-dash.
I am using H.264 / AAC. But I don't want to store video twice in both hls and mpeg-dash containers. Is it possible to store video in temporary containers (like mpeg-ts or mp4) and then use hls and mpeg-dash for streaming vod? Or is it possible to store video h.264 and audio aac separately and then pack video on the fly in hls or mpeg-dash?
I won't use live streaming.


Solution

  • The process you refer to is called "transmuxing", it means re-packaging between containers on-the-fly. Modern media servers allow doing that so all you need is to put MP4 file on disk and set up media server for processing, that's it. Most media servers have abilities to create ABR from multiple key-frame aligned MP4s as well as transmux multiple video and audio tracks from single file.