通过 HTTP (MPEG-DASH) 进行流式传输有何意义?

What's the point of streaming over HTTP (MPEG-DASH)?

我正在阅读 MPEG-DASH 等 HTTP 流式传输技术,但并没有真正理解要点。据我了解,此类协议将媒体文件中的二进制数据分成块,将每个块包装在某种元数据中,然后将它们填充到 HTTP 消息中并将它们发送给客户端。

但是在 HTTP 之上实现它而不只是 implementing/creating 一个单独的应用层协议有什么意义呢?这不会引入更多开销并不必要地使 encoding/decoding 过程复杂化吗?

通过 HTTP 传输内容并不是为了提高效率,因为它显然效率低下。 HTTP 本身(至少在 HTTP 2.0 之前)效率低得可怕。

使用 HTTP 的主要原因是简单、interoperability 和可重用性。它易于理解和实现,它已经存在于服务器和客户端中;加上它在网络上广为人知,因此可以轻松通过防火墙。