on behalf of my company i am currently evaluating the capabilites of MPEG-DASH live streaming for a video conferencing application.
My testing environment is a LAN in which a ffmpeg-encoded live stream is sent via rtmp to the Wowza Engine.
The engine is configured to transrate the video into different renditions and to provide the MPD. On the client-side the stream is shown either by Shaka Player or Dash.js hosted by a webserver.
After tuning the parameter of the MPEG-DASH Streaming Packetizer property there is still ~ 6 seconds latency between sender and receiver.
The HTTP based streaming protocols like MPEG-DASH and Apple HLS are not suitable for low latency streaming because of the nature of these streaming protocols. These are chunk based protocols, which by definition cannot be low latency. Normally, a player will need to download several http chunks (usually 3) before it can begin to play back a live stream. The latency is greatly influenced on how long each chunk is. By default, Wowza Streaming Engine is creating 10s chunks, which would induce a minimum of 30s live latency. It is possible to control the duration of the chunks created by following the instructions described in these forum articles:
Please note that a very short media chunk (1s) can induce other playback issues. For example, it a player needs more than 1s to download a 1s chunk, it will stop the playback because it needs to wait for the chunk to be downloaded before it can play it back.