Sign inSign up

reverbrain/nulla

By reverbrain

•Updated about 10 years ago

Elliptics DASH/HLS streaming service

Artifact
Image
0

2.8K

reverbrain/nulla repository overview

For more details visit http://video.reverbrain.com/index.html⁠

Safari browser will use HLS streaming, Chrome/Firefox/others will use MPEG-DASH streaming.

Nulla streaming service supports adaptive MPEG-DASH and HLS streaming as well as stream muxing. You upload video/audio files into Elliptics distributed storage and Nulla service will automatically repack (without transcoding) them into mp4/mpeg2ts formats suitable for either DASH or HLS streaming. No need to upload multiple files or create multiple file edits to implement muxing.

We create the whole mpeg container (either mp4 or mpeg2ts) in runtime and only read samples data from audio/video files stored in Elliptics. To allow muxing all files in the stream must be encoded the same way (to mux multiple streams codecs must be the same, level/profile info can change).

Using our technology one can implement 5-seconds muxing (5 seconds of the first video, then 5 second of the second, then next 5 seconds from the first and so on) in example below using following control json:

"tracks": [ { "bucket": "b1", "key": "video_1.mp4", "duration": 5000 }, { "bucket": "b1", "key": "video_2.mp4", "duration": 5000 }, { "bucket": "b1", "key": "video_1.mp4", "start": 5000, "duration": 5000 }, { "bucket": "b1", "key": "video_2.mp4", "start": 5000, "duration": 5000 } ]

Here it is, muxing 2 video and 2 sound channels in the way described above without interruption and gaps. All 4 files are stored in Elliptics storage as usual objects.

http://video.reverbrain.com/index.html⁠

You can check the source of the html page above to see how muxing is being set up, you can play with different settings and watch the whole files or mix them in other ways around.

Tag summary

Content type

Unrecognized

Digest

Size

554.7 MB

Last updated

about 10 years ago

docker pull reverbrain/nulla