2015-09-03 1 views
1

Я читал о потоковых технологиях, таких как MPEG-DASH, но на самом деле не понимаю. Насколько я понимаю, такие протоколы делят двоичные данные в медиафайле на куски, обертывают каждый фрагмент в виде метаданных, затем заполняют их в HTTP-сообщениях и отправляют их клиенту.Что такое потоковая передача через HTTP (MPEG-DASH)?

Но какой смысл реализовать это вместо HTTP вместо того, чтобы просто реализовать/создать отдельный протокол уровня приложения? Разве это не приводит к большему количеству накладных расходов и излишне усложняет процесс кодирования/декодирования?

ответ

1

Транспортировка материалов по HTTP не делается ради эффективности, поскольку она явно неэффективна. Сам HTTP (по крайней мере до HTTP 2.0) ужасно неэффективен.

Основные причины использования HTTP - это простота, interoperability и повторное использование. Он прост для понимания и реализации, он уже существует как на серверах, так и на клиентах; плюс он хорошо известен сетям, поэтому он легко проходит через брандмауэры.

+0

Но браузеру по-прежнему необходимо будет поддерживать поддержку таких стандартов, как MPEG-DASH, чтобы иметь возможность анализировать метаданные и воспроизводить медиапоток. Почему им было бы проще реализовать MPEG-DASH, а не для всех других приложений? - Разве это не так? – Adam

+0

DASH - это стандарт ISO, который принимается очень интенсивно. Большинство отраслевых крупных компаний и лиц, принимающих решения (Microsoft, Google и т. Д.) Участвуют в форуме DASH Industry Forum, поэтому они продвигают его как можно больше. Например. Youtube теперь использует DASH и HTML5 по умолчанию для воспроизведения - это огромный знак для отрасли. – Yury

+0

@Adam Да, браузеры и серверы все равно должны будут добавить поддержку, но добавление поддержки как по существующей инфраструктуре проще, чем создание нового протокола с нуля. Так что проще заставить разработчиков разных браузеров и серверов играть, если их легко реализовать. – Malt