S
S
StynuBlizz2017-06-15 10:14:14
Nginx
StynuBlizz, 2017-06-15 10:14:14

Need to understand what is DASH (mpeg-dash) and how to use it?

Help me figure out what DASH (MPEG-DASH) is and how to use it, first I will describe it as I understand it. DASH is a technology with which you can stream video or just broadcast static video (like on YouTube), with dynamic upload. Since in my case it is necessary to broadcast a static (saved on the server) video, I will talk about it. In order to start broadcasting using this technology, you need to connect the nginx-rtmp-module module to nginx ( or is it done using another tool? ) and specify in it:

rtmp {
   server {
      listen 1234;
      application videos/{
           dash on;
           dash_path /path/to/;
}}}

To access the video, you will need to enter rtmp://sitename.ru/videos/videoname into the search, and here the first question is: how to make it possible to enter http and not rtmp into the search (because on YouTube you can access videos via http)? . I read that I need to add more:
http {
     server {
         location videos{ 
            root /path/to/;
}}}

But I can't understand how it will work?
Now about the preparation of the video, I do this:
  • ffmpeg -i video.mp4 -g 24 (set keyframes) -r 24 + other videoout.mp4 settings
  • MP4Box -dash 1000 -frag 1000 -rap videoout.mp4

And I place the processed file + its manifest in a folder along the path /path/to/videos/. Here again the question is: am I processing the video correctly?
Bottom line: Please answer if I understand correctly what DASH is, based on how I described it at the beginning and plus the highlighted questions. Thanks

Answer the question

In order to leave comments, you need to log in

3 answer(s)
C
chupasaurus, 2017-06-15
@StynuBlizz

DASH works over HTTP, not RTMP, rtmpin the nginx config - nginx-rtmp-module settings. For static content, the rtmp module is not needed (DASH itself is built on the fact that all fragments should be available as regular files).
Accordingly, only the second part is needed from your config.

mp4box -dash XXXX -rap -profile "dashavc264:onDemand"
- for static, "dashavc264:live"- for streams.
And you still need to set the player on all this joy.
Since you got to my answer on the previous question about DASH, you could read the spec - there is a brief description of how everything works.

A
Andrey Hammer, 2017-06-16
@AndreyHammer

Why nginx-rtmp-module and not nginx-vod-module? If rtmp is not needed, then it is better to use nginx-vod-module. Here and drm can be screwed.

I
Igor Gorgul, 2017-06-24
@xXxSPYxXx

I agree with Andrey Hammer , it will be clearer this way https://github.com/kaltura/nginx-vod-module
I use it myself to play via HLS

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question